openstack部署

openstack部署教程

openstack目前通用的IaaS平台的服务框架

准备工作

开始部署DevStack

第一步 安装并配置置虚拟机

1.安装虚拟机,采用ubuntu-server-16.04镜像,控制节点安装三块网卡,分别为桥接、内部网络和Host Only网络,安装时 \
除了基础包还要选中Virtual Machine Host和SSH
设置root密码
sudo su -
root@devstact-controller#:passwd
输入root密码即可
开启ssh root登录
vim /etc/ssh/sshd_config
PermitRootLogin yes

3.安装lrzsz,以便利用xshell传文件

1
sudo apt-get lrzsz

4.配置网卡,可以按照如下配置

1
iface enp0s3 auto

5.重启,获取到ip地址后使用xshell登录

6.换国内的仓库源和python源
仓库源推荐中科大的源,python源推荐豆瓣源
可以直接cd到 /etc/apt目录,cp sources.list sources.list.bak 然后把解压得到的sources.list拖到xshell里面
然后 sudo apt-get update
sources.list 参考

1
deb https://

换python包源

1
2
root@devstack-controller# mkdir .pip
root@devstack-controller# cd .pip

把pip.conf拖进xshell,就传输到了这个目录

7.安装一些依赖
sudo apt-get install -y python python3 python-pip python3-pip

第二步 部署devstack

1.添加stack用户,DevStack使用非root用户工作

1
sudo useradd -s /bin/bash -d /opt/stack -m stack

2.给与sudo权限

1
2
3
echo "stack ALL=(ALL) NOPASSWD: ALL" | sudo tee /etc/sudoers.d/stack
sudo su - stack
pwd

就进入了stack用户目录 /opt/stack

3.配置Python源
这一步同root的python源

4.克隆仓库,切换到稳定版分支

1
2
git clone https://git.openstack.org/openstack-dev/devstack -b stable/newton
cd devstack

4.创建并配置local.conf文件

1
2
3
4
5
[[local|localrc]]
ADMIN_PASSWORD=secret
DATABASE_PASSWORD=$ADMIN_PASSWORD
RABBIT_PASSWORD=$ADMIN_PASSWORD
SERVICE_PASSWORD=$ADMIN_PASSWORD

5.执行安装
这里有个坑,openstack N版要求pip版本不低于6,不高于10,貌似也不能是8
安装前先确保pip版本
pip install pip==9.0.3
然后执行
./stack.sh

顺利的话一个半小时到两个小时就安装好了,大部分失败的原因是某个仓库克隆的时候超时,或者文件下载,安装就会退出,
这个时候就需要重新跑安装脚本,如果还是失败,可以看报错信息,手动克隆仓库或者下载文件,这个可以在windows下挂代理进行,
然后把相应的文件拷贝到相应的位置,重新执行安装脚本。

遇到问题可以参考
在Ubuntu16.04中安装DevStack过程中出现的若干问题
OpenStack安装部署管理中常见问题解决方法

同时,也要学会使用google和Stack Overflow搜索,锻炼解决问题的能力