opesntack tranning labs提供了一种在桌面环境中部署虚拟化OpenStack的简便方法。Training Labs支持全部现代Linux,Windows和macOS平台。在运行Training Labs以前,您须要安装VirtualBox或KVM / libvirt。将压缩文件解压缩到一个文件夹,并准备一键部署您本身的OpenStack Training Labs群集。python
下载地址:https://docs.openstack.org/training_labs/shell
说明文档:https://wiki.openstack.org/wiki/Documentation/training-labs#Building_the_clusterubuntu
安装准备vim
安装和测试方法,参考华为《HCIP-Cloud_Computing-OpenStack_V1.0_实验手册》windows
测试方法,使用x86服务器,服务器品牌为二手HP,硬盘500G,4路CPU,40G内存,单千兆网卡,地址为172.31.208.31/24。安装unbuntu18.04LTS,使用virtualbox5.2,openstack-labs版本为Stein,如下为推荐的实验环境浏览器
组网说明bash
实验环境在服务器上安装 ubuntu操做系统,并在ubuntu上安装virtualBox软件,经过openstack自动化安装脚本在 virtualbox中部署openstack实验环境,包括一个controller节点和一个compute节点服务器
ubuntu配置网络
在完成ubuntu18操做使用图形化界面的(gnome)系统安装后,咱们须要进更新软件源和开启远程桌面登录的配置session
默认ubuntu没有root密码,同时没有SSH服务等,默认是不容许root用户进行ssh登录。都须要自行配置
sudo passwd #建立root密码 sudo apt-get install openssh-server # 安装ssh服务 sudo systemctl start ssh #开启SSH sudo systemctl enble ssh sudo systemctl stop ufw #关闭防火墙 sudo systemcll disable ufw
为了加快软件下载,须要配置国内软件源
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak #备份软件源 sudo gedit /etc/sources.list #编辑
在文件最前面添加
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
保存后,更新系统
sudo apt-get update sudo apt-get upgrade
耐心等待更新完毕
接下来,使用xrdp开启远程登录。
sudo apt install xrdp
编辑配置文件
sudo vim /etc/xrdp/startwm.sh
把最下面的test和exec两行注释掉,添加一行
gnome-session
而后再ubuntu设置开启共享
配置屏幕共享
配置完成后,重启ubuntu。而后就可使用windows 远程桌面登录
以下所示:
而后配置virtualbox
推荐直接使用unbuntu的gnome软件商店搜索下载
下载完毕后确认是否安装
sudo dpkg-query -l virtualbox
安装opesntack-labs
经过运行openstack自动化安装脚本,在virtualbox中完成openstack安装。
openstack的controller节点和compute节点均为ubuntu操做系统(脚本安装过程当中,会自动下拉Ubuntu操做系统镜像文件,并为ubuntu自动建立两个虚拟机网卡
vboxnet0:10.0.0.1/24
vboxnet1:203.0.113.1/24
流程以下:
首先,下载openstack,访问https://docs.openstack.org/training_labs/
下载完毕后,保存到桌面
而后解压
sudo tar -xvf labs-master.tgz
解压后,目录结构以下所示:
为了不openstack环境资不足,打开配置文件config.compute1,按照以下修改
sudo cd labs sudo vim labs/config/config.compute1
而后安装python
sudo apt install python
完成后,进入/labs目录,运行st.py脚本
cd labs ./st.py -b cluster
若是安装过程当中出现报错,先尝试再运行一次脚本,若仍是出现问题,能够在/labs/log下查看相应的日志文件,排除问题后,再一次运行脚本
等待系统自动在virtualbox中安装openstack,此过程大概须要3个小时左右。直到出现以下信息,表明安装成功
出现的结果表明了实验环境的默认登录信息。
碰到的问题
在安装的过程当中,会卡“ERROR vm_ssh:Aborting",以下所示:
查询了下官网文档,https://wiki.openstack.org/wiki/Documentation/training-labs#Building_the_cluster,下面有相关使用virtualbox构建集群的说明
大意是控制节点和计算节点在virtualbox使用ssh协议的tcp2230和2232进行通信,我怀疑是ssh协议登录没有获取到对方的密钥所致。
因此我尝试了如下
ssh -p 2230 osbash@localhost #密码osbash
而后再次运行openstack安装脚本,竟然就没有卡在这里。问题解决了
真神奇
更新:
后来在部署的时候反复出现计算节点compute1没法安装成功后来查询到,这是一个bug,具体缘由未知。后来在国外论坛上查到相关的bug描述,帖子地址以下:
https://bugs.launchpad.net/labs/+bug/1803819
我总结了如下,和查询了一些 stackoverflow文档,这个大概是python2的subproccess模块在调用shell命令出现的bug,现象就是使用ssh命令后会抛出异常,有必定的出现概率
我采用用下面的方法
即手动上传SSH密钥和相关配置文件到controller和compute节点
作法是:
在第一次部署失败后,在从新运行安装脚本的时候手动从宿主机使用ssh分别上传到controller和compute节点
ssh -q -i /home/yangchao/labs/lib/osbash-ssh-keys/osbash_key -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o ConnectTimeout=10 -o ControlPath=none -p 2230 osbash@127.0.0.1 mkdir -p autostart && ssh -q -i /home/yangchao/labs/lib/osbash-ssh-keys/osbash_key -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o ConnectTimeout=10 -o ControlPath=none -p 2232 osbash@127.0.0.1 mkdir -p autostart
注意,必定是安装脚本运行期间,屡次运行以上命令,由于controller和compute节点会在从新运行部署脚本的时候重启而且配置虚拟网络
完成后以下:
此时在宿主机上浏览器输入http://127.0.0.1:8888/horizon进入openstack的dashboard,同时能够正常建立实例
登录controller节点,能够检查nova服务运行正常,compute节点已经添加
ssh osbash@127.0.0.1 -p 2230 #登录controller节点,密码osbash . admin-openrc.sh #导入openstack环境变量以使用opnstack命令 nova service-list #检查controller节点和compute节点nova服务状态
记住,只有宿主机本机才能登录openstack