OpenStack有多种安装方式,但是对于初学者来说,我们只是想快速体验OPenStack的功能,并不想花太多时间在安装上面,所以本文介绍一种利用devstack的脚本安装方式。
一、环境
系统版本Ubuntu14.04/16.04,建议准备一个干净的系统进行OpenStack尝试。
官方的解释是:
DevStack will make substantial changes to your system during installation. Only run DevStack on servers or virtual machines that are dedicated to this purpose.
二、安装
1、下载DevStack
$ git clone https://git.openstack.org/openstack-dev/devstack
进入目录
$ cd devstack
2、创建stack用户
我们需要创建一个stack用户来运行Devstack,因为该脚本已经不支持直接使用root身份运行;并且由于此用户将对系统进行许多更改,因此要具有sudo权限。
1)创建
$ cd /devstack/tools/
$ ./create-stack-user.sh
2)修改devstack目录权限,让我们创建的stack用户可以运行
$ chown -R stack:stack /home/devstack
3)切换到stack用户下
$ su stack
$ cd /home/devstack
3、创建local.conf文件
vim local.conf
打开文件输入以下内容并设置密码
[[local|localrc]]
ADMIN_PASSWORD=secret
DATABASE_PASSWORD= $ADMIN_PASSWORD
RABBIT_PASSWORD= $ADMIN_PASSWORD
SERVICE_PASSWORD=$ADMIN_PASSWORD
这是启动DevStack的最低配置要求。
三、启动
$ cd /devstack
$ ./stack.sh
根据个人网速不同,预估时间为1-7个小时,在这个过程中,会安装很多git trees and packages,耐心等待就好。
四、登陆
根据启动成功的提示信息,在浏览器中输入相应地址,进行登陆。
五、重启devstack
Devstack没有自带的重启脚本,若是机器重启,openstack的各项服务没办法自动启动。
比较麻烦的方法是重新运行一次devstack的stack.sh,但是耗时耗力;但如果大家是在虚拟机中进行安装,可以在初次安装成功后,使用虚拟机的快照功能进行备份,下次想使用Openstack,直接使用快照进行还原。
六、一些错误处理
1、./stac.sh:191 if you wish to run this script anyway run with FORCE=yes /home/dexstack/functions-commom:232: /opt/stack/logs/error.log:No such file or directory
如遇此错误,用如下方式启动脚本:
FORCE=yes ./stack.sh
2、ImportError: No module named ‘xxx’
例如:
ImportError: No module named extras
ImportError: No module named testtools
如遇到此问题,不要试图去文件中添加相应Python模块,因为最后你会发现有循环import问题(别问我怎么知道的)。
devstack里面是不会缺少相应模块的,所以最好的解决办法就是重新安装。
七、后记
作为新手,我们只是想尽快学习Openstack,而并非要在安装上花费太多时间,因而我们才选择了最为简单的脚本安装方式。
但简单都是相对的,做OpenStack开发的,没有谁不经受过Devstack的折磨,能不能安装成功,很大程度也取决于你的运气。
所以出现不可解决问题时,请重新安装Devstack,多次不成功,那么请重新安装操作系统,并确保操作系统是干净的。
最后,祝大家在安装OpenStack的道路上顺风顺水!