devstack安装openstack newton版本
准备使用devstack安装openstack N版,搞一套开发环境出来。一连整了4天,遇到各种问题,各种错误,一直到第4天下午4点多才算完成。
在这个过程中感觉到使用devstack搭建openstack环境还是有难度的,不光对新手来说,对于我手动源码装过很多次的人来说也蛮有难度。或者说是我自己学习能力不够。
个人感觉使用devstack,要想成功率高的话一定要选对linux版本。前三天使用ubuntu1604-desktop各种失败和报错,最后参考一篇博文才成功。
准备:
- VMware
- ubuntu-1404-server(64位)

网卡配置:
auto eth0 iface eth0 inet dhcp auto eth1 iface eth1 inet manual
虚拟机规格: 4G内存 + 40G磁盘(20G不够)
安装过程:
一、更换镜像源。
这里使用阿里镜像源,匹配1404的源。编辑/etc/apt/source.list文件,替换内容为如下,然后更新。apt-get update
deb http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ trusty-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multive
二、安装必要工具。
使用devstack需要两个工具软件:git 和 pip。准备安装之前下载这两个软件。
apt-get install git
apt-get install python-pip
三、配置pip源。
推荐使用的pip源是豆瓣的源。
在/root下创建.pip文件夹,然后创建pip.conf文件,填入豆瓣源。
cd /root
mkdir .pip
vim pip.conf [global]
timeout =
index-url = http://pypi.douban.com/simple/
[install]
trusted-host = pypi.douban.com
四、从github上拉取openstack newton版本。首先进入到/home目录下,然后执行git clone命令。
cd /home
git clone http://git.trystack.cn/openstack-dev/devstack.git -b stable/newton
五、创建stack用户。
执行上一条命令之后,在/home文件夹下会产生一个devstack的文件夹。以root身份进入/home/devstack/tools/,执行create-stack-user.sh脚本。
执行脚本之后会创建一个叫stack的用户,并赋予了root权限。
六、创建配置文件local.conf。
在/devstack路径下创建一个local.conf的配置文件,该文件包括了要安装的openstack的版本,服务,源码位置,日志位置等信息。
由于安装过程中要从github上下文件网速不好会下载超时,然后报错,这里使用了九州云的git源。貌似九州云的镜像服务器最近不对,镜像的URL使用了官网的路径。
[[local|localrc]] # use TryStack git mirror
GIT_BASE=http://git.trystack.cn
NOVNC_REPO=http://git.trystack.cn/kanaka/noVNC.git
SPICE_REPO=http://git.trystack.cn/git/spice/spice-html5.git #OFFLINE=True
RECLONE=True # Define images to be automatically downloaded during the DevStack built process.
DOWNLOAD_DEFAULT_IMAGES=False
IMAGE_URLS="http://download.cirros-cloud.net/0.3.5/cirros-0.3.5-x86_64-disk.img" HOST_IP=201.0.0.12(你的虚拟机eth0网卡IP地址) # Credentials
DATABASE_PASSWORD=stack2015
ADMIN_PASSWORD=stack2015
SERVICE_PASSWORD=stack2015
SERVICE_TOKEN=stack2015
RABBIT_PASSWORD=stack2015 HORIZON_BRANCH=stable/newton
KEYSTONE_BRANCH=stable/newton
NOVA_BRANCH=stable/newton
NEUTRON_BRANCH=stable/newton
GLANCE_BRANCH=stable/newton
CINDER_BRANCH=stable/newton #keystone
KEYSTONE_TOKEN_FORMAT=UUID
#安装时依赖报错所以不启动这个服务
disable_service tempest ## Swift
SWIFT_BRANCH=stable/newton
ENABLED_SERVICES+=,s-proxy,s-object,s-container,s-account
SWIFT_REPLICAS=
SWIFT_HASH=011688b44136573e209e # Enabling Neutron (network) Service
disable_service n-net
enable_service q-svc
enable_service q-agt
enable_service q-dhcp
enable_service q-l3
enable_service q-meta
enable_service q-metering
enable_service neutron ## Neutron options
#注掉网络创建命令,成功率会增高。
Q_USE_SECGROUP=True
#FLOATING_RANGE="201.0.0.0/24"
#FIXED_RANGE="12.0.0.0/24"
#Q_FLOATING_ALLOCATION_POOL=start=201.0.0.30,end=201.0.0.39
#PUBLIC_NETWORK_GATEWAY="201.0.0.1"
Q_L3_ENABLED=True
PUBLIC_INTERFACE=eth1
Q_USE_PROVIDERNET_FOR_PUBLIC=True
OVS_PHYSICAL_BRIDGE=br-ex
PUBLIC_BRIDGE=br-ex
OVS_BRIDGE_MAPPINGS=public:br-ex # #VLAN configuration.
Q_PLUGIN=ml2
ENABLE_TENANT_VLANS=True # Logging
LOGFILE=/opt/stack/logs/stack.sh.log
VERBOSE=True
LOG_COLOR=True
SCREEN_LOGDIR=/opt/stack/logs
七、修改目录权限
chown -R stack:stack /home/devstack
chmod -R stack:stack /opt/stack
八 、执行stack.sh脚本。
首先切换到stack用户,然后进入/home/devstack ,运行./stack.sh。
我在家里是移动50M带宽的wifi,第一次成功是60分钟左右,第二次是45分钟左右。安装过程中顺利的话不会报错,如果报错超过两个以上基本上就很难完成。
安装是一个折磨人的过程,一旦报错就会错误不断,深有体会。所以如果有童鞋按照我的教程配置运行出错请随时留言,避免走弯路。
devstack安装openstack newton版本的更多相关文章
- Devstack 安装OpenStack Pike版本(单机环境)
问题背景 最近在研究OpenStack的时候,需要对其源代码进行调试,公司服务器上部署的OpenStack环境又不能随意的进行折腾,为了研究的持续性和方便性,就决定再自己的虚拟机上面使用Devstac ...
- 使用devstack搭建openstack Newton 版本的坑
国外源访问速度慢怎么办? 使用国外源,加之带宽紧张,搭建过程是很累的,这里推荐大家使用一下源: devstack包源.:http://git.trystack.cn pip源: [global] in ...
- ubuntu18.04系统下用devstack安装openstack(最新版)
ubuntu18.04系统下用devstack安装openstack(最新版) 2018年12月14日 16:34:14 Cherls 阅读数:427 前期准备: 安装git,升级pip,其他 s ...
- Vmware虚拟机Devstack安装openstack(All in one)
Vmware虚拟机Devstack安装openstack(All in one) 博客园第一篇博客,先练习一下. 官方文档 环境 Vmware虚拟机 OS : Ubuntu 14.04 Nat网络,D ...
- 使用devstack安装openstack
使用devstack安装openstack 环境介绍,宿主机器 Fedora release 29 (Twenty Nine) 40核心cpu,32g内存 设想, 在fedora中安装kvm,虚拟出U ...
- 体验devstack安装openstack
由于公司制度,工作环境是不能直接上网的,所以在工作时间从没有体验过devstack或者其他联网方式安装openstack. 因自己购置了一台不错的主机,因而决定尝试安装一番,经过一段为期不短的内心极度 ...
- 使用DevStack安装openstack(单机环境)
DevStack是一系列可扩展的脚本,用于根据git master的最新版本快速启动完整的OpenStack环境.它以交互方式用作开发环境,并作为OpenStack项目功能测试的基础. 参考源码. 警 ...
- 安装OpenStack Queens版本的教程推荐
为了加深对OpenStack的理解,需要自己分模块安装一次,之前都是用devstack安装,傻瓜式安装虽然方便,但是也减少了我对OpenStack理解的深度. 本人参考如下文档安装成功过 http:/ ...
- devstack安装openstack
devstack是目前安装OpenStack最为方便的工具,一般用于开发和测试OpenStack.如果想在生产环境安装的话,需要对 devstack做很多定制,或者使用puppet/chef等更成熟的 ...
随机推荐
- 装饰模式(decorator)
意图: 动态地给一个对象添加一些额外的职责,就增加功能而言,Decorator模式相比生成子类模式更为灵活 动机: 有时我们希望给某个对象而不是整个类添加一些功能.例如,一个图形用户界面工具箱允许你对 ...
- weblogic 启动问题
通过startWebLogic.cmd 手动启动weblogic可以成功启动 myeclipse配置后,runserver 就会报 Error occurred during initializati ...
- Web学习-jsp实现servlet过程赏析
Jsp在某种程度上就是一种servelt. 来看看tomcat容器如何将jsp页面翻译成一个"servlet". 一. F:\apache-tomcat-6.0.51\work\C ...
- Servlet工作原理分析
最近在看<Java Web技术内幕>的Servlet工作原理,有点深奥和难以理解,于是乎,想通过一个简单的Demo将书上的思路理一遍,对Servlet有个更透彻更深的了解. Servlet ...
- 基于linux vim环境python代码自动补全
(一)简述 在使用vim编写python文件的过程中,默认的vim不会实现代码补全功能,在写程序或者是改程序的时候不是很方面,很容易出错,但是vim提供了各种插件,其中包括这个python文件的自动补 ...
- Grails笔记四:Groovy特性小结
在学习Grails的时候与Groovy打交道不可避免,虽然不必太深刻,但多知道一些特性也是很有帮助的~ 1.相除后获取整数 使用intdiv()方法可以获得整数,注意点是这个方法只适用两个整数相除,浮 ...
- Grails笔记二:grails 2.4.3版本下generate-*失效问题解析
最近在学grails框架,因为其敏捷性让我非常喜欢,不过有点让人恼怒的是也许因为grails框架太新了,所以关于grails的书籍很少,而且市面上的书籍大部分都是2007或者2009年的,官方文档又都 ...
- 学习js函数--函数定义
函数的定义方法有三种 1.函数表达式 2.函数声明 3,new function构造函数 这边主要看下函数表达式和函数声明 函数表达式(未省略标志的) var alertName = function ...
- YYHS-NOIP2017SummerTraining0914-问题 A: 组合数问题
题目描述 组合数C(n,m)表示的是从n个物品中选出m个物品的方案数.举个例子,从(1, 2, 3)三个物品中选择两个物品可以有(1, 2),(1, 3),(2, 3)这三种选择方法.根据组合数的定义 ...
- nodejs本地服务器自动重启
在我们开发node 应用的时候,一但你的应用已经启动了,这个时候如果你修改了服务端的文件,那么要是这个修改起作用,你必须手动停止服务然后再重新启动,这在开发过程中无疑是很烦人的一件事,最好是有一个能够 ...