系统及版本
- Ubuntu16.0 LTS
- OpenStack版本Rocky
Ubuntu配置
- 4G RAM
- 4核处理器(开启处理器虚拟化)
- 40G可用空间
- 网络设置(NAT模式与宿主机连接)IP配置xxx:xxx:xxx:xxx
apt配置
在DevStack安装过程中要使用apt安装依赖软件,Ubuntu默认使用美国源,在国内使用下载速度会非常慢,甚至导致安装失败,所以要更换国内源。这里使用中科大的镜像源.。
# 首先备份原/etc/apt/sources.list文件$ sudo mv /etc/apt/sources.list /etc/apt/sources.list.bak# 编辑新的sources.list$ sudo vim /etc/apt/sources.list
sources.list
内容如下
deb http://mirrors.ustc.edu.cn/ubuntu/ xenial main restricted universe multiverse deb-src http://mirrors.ustc.edu.cn/ubuntu/ xenial main restricted universe multiverse deb http://mirrors.ustc.edu.cn/ubuntu/ xenial-security main restricted universe multiversedeb-src http://mirrors.ustc.edu.cn/ubuntu/ xenial-security main restricted universe multiversedeb http://mirrors.ustc.edu.cn/ubuntu/ xenial-updates main restricted universe multiversedeb-src http://mirrors.ustc.edu.cn/ubuntu/ xenial-updates main restricted universe multiversedeb http://mirrors.ustc.edu.cn/ubuntu/ xenial-backports main restricted universe multiversedeb-src http://mirrors.ustc.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse## Not recommended# deb http://mirrors.ustc.edu.cn/ubuntu/ xenial-proposed main restricted universe multiverse# deb-src http://mirrors.ustc.edu.cn/ubuntu/ xenial-proposed main restricted universe multiverse
这里选用的是http传输+xenial版本,更多发行版可以自行在自行配置
# 更新软件$ sudo apt-get update$ sudo apt-get upgrade# 安装gitsudo apt-get install git
创建stack用户
$ sudo useradd -s /bin/bash -d /opt/stack -m stack# 因为stack用户在安装过程中要使用sudo命令且安装过程中不会询问密码,所以要给stack用户无明码的sudo权力$ echo "stack ALL=(ALL) NOPASSWD: ALL" | sudo tee /etc/sudoers.d/stack# 切换用户$ sudo su - stack
更换pip源
openstack基于Python语言,在安装过程中要使用pip相应的包,更换为国内源会加快安装速度。
编辑~/.pip/pip.conf(没有就创建)[global]index-url = https://pypi.tuna.tsinghua.edu.cn/simple
设置git代理
devstack安装过程中要从GitHub下载openstack代码,所以最好为git设置代理,否则容易因为下载超时而中断安装.这里使用shadowsocks来作为代理.
安装并设置shadowsocks客户端
# 安装shadowsocks客户端$ sudo apt install shadowsocks# 配置shadowsocks$ sudo vim /etc/shadowsocks.json
# shadowsocks.json{"server":"server-ip","server_port":8000,"local_address": "127.0.0.1","local_port":1080,"password":"your-password","timeout":600,"method":"aes-256-cfb"}
# 启动shadowsocks客户端$ sudo sslocal -c /etc/shadowsocks.json -d start
更多关于shadowsocks命令行的使用可以参考
为git http/https协议设置代理
在配置shadowsocks时我们设置了shadowsocks客户端监听本地1080端口,发送到这个端口的请求可以通过shadowsocks转发至代理服务器
$ git config --global http.proxy 'sock5://127.0.0.1:1080'$ git config --global https.porxy 'sock5://127.0.0.1:1080'
下载devstack
$ git clone https://git.openstack.org/openstack-dev/devstackcd devstack
创建local.conf文件
localconf
用于控制安装的一些配置,如各服务的密码和服务端口等,更多配置可以参考
[[local|localrc]]ADMIN_PASSWORD=secretDATABASE_PASSWORD=$ADMIN_PASSWORDRABBIT_PASSWORD=$ADMIN_PASSWORDSERVICE_PASSWORD=$ADMIN_PASSWORD
开始安装
$ ./stack.sh
安装失败的补救措施
如果安装失败,一般出错信息会显示在最近的log信息里,按log修复即可.如果不能修复,可以执行下面的命令重新开始安装
$ ./unstack.sh$ ./clean.shsudo rm -rf /opt/stacksudo reboot