图文讲解OpenStack手动分布式部署环境准备(Queens版)
本攻略将详细介绍如何手动分布式部署OpenStack环境(Queens版)前的环境准备过程。
环境要求
- 3台物理机或虚拟机,每台机器至少2个网卡;
- 操作系统为Ubuntu 16.04 LTS Server;
- 确认三台机器之间网络可达;
配置网络
在三台机器上各配置一个管理网口和一个数据网口,以下命令以第一台机器为例:
配置管理网口
编辑 /etc/network/interfaces 文件,添加以下内容:
auto enp0s8
iface enp0s8 inet static
address 10.0.0.11
netmask 255.255.255.0
其中enp0s8为网卡名,address为主机IP。
配置数据网口
编辑 /etc/network/interfaces 文件,添加以下内容:
auto enp0s9
iface enp0s9 inet static
address 192.168.50.11
netmask 255.255.255.0
配置主机名
编辑 /etc/hostname 文件,设置主机名为controller、compute1、compute2。
controller
编辑 /etc/hosts 文件,添加以下内容:
10.0.0.11 controller
10.0.0.12 compute1
10.0.0.13 compute2
192.168.50.11 controller
192.168.50.12 compute1
192.168.50.13 compute2
最后重启网络
$ sudo service networking restart
配置时间同步
由于OpenStack环境对时间同步比较敏感,为了保证各节点时间同步,需要安装ntp服务。
$ sudo apt-get install ntp -y
安装完成后在controller节点执行以下命令:
$ sudo vim /etc/ntp.conf
server ntp.ubuntu.com
重启ntp服务
$ sudo service ntp restart
由于三台机器时钟不同步,可以在每台节点执行ntpdate命令同步时间:
$ sudo ntpdate -u controller
配置SSH免密登录
在controller节点上执行以下命令:
$ ssh-keygen -t rsa
$ ssh-copy-id root@compute1
$ ssh-copy-id root@compute2
然后输入密码完成免密登录配置。
配置NTP、LVM和NFS存储
在controller节点上执行以下命令:
$ sudo apt-get install ntp lvm2 nfs-common -y
安装完毕后启动NFS服务并设置开机启动:
$ sudo service nfs-kernel-server start
$ sudo systemctl enable nfs-kernel-server
然后在controller节点上创建共享目录和配置NFS共享。以/data作为NFS共享目录:
$ sudo mkdir /data
$ sudo chmod 755 /data
$ sudo vim /etc/exports
#/etc/exports文件内容
/data compute1(rw,sync,no_root_squash,no_subtree_check) compute2(rw,sync,no_root_squash,no_subtree_check)
完成后启动NFS服务
$ sudo service nfs-kernel-server restart
配置操作系统参数
在controller节点上执行以下命令:
$ sudo vim /etc/sysctl.conf
在文件尾部添加以下内容,并保存退出。
net.ipv4.ip_forward=1
net.ipv4.conf.all.rp_filter=0
net.ipv4.conf.default.rp_filter=0
net.bridge.bridge-nf-call-iptables=1
net.bridge.bridge-nf-call-ip6tables=1
加载新的sysctl参数表
$ sudo sysctl -p
安装OpenStack包
在controller节点上执行以下命令:
$ sudo apt-get install software-properties-common -y
$ sudo add-apt-repository cloud-archive:queens
$ sudo apt-get update && sudo apt-get dist-upgrade -y
$ sudo apt-get install python-openstackclient -y
安装过程中会要求输入MySQL密码,请输入MySQL root密码。
以上就是手动分布式部署OpenStack环境(Queens版)前的环境准备过程。
示例
以配置网络为例,假设需要配置的主机名为compute1,对应的IP地址为10.0.0.12和192.168.50.12,那么可以按照以下步骤操作:
- 编辑 /etc/network/interfaces 文件,在文件尾部添加以下内容:
auto enp0s8
iface enp0s8 inet static
address 10.0.0.12
netmask 255.255.255.0
auto enp0s9
iface enp0s9 inet static
address 192.168.50.12
netmask 255.255.255.0
- 编辑 /etc/hostname 文件,添加以下内容:
compute1
- 编辑 /etc/hosts 文件,添加以下内容:
10.0.0.11 controller
10.0.0.12 compute1
10.0.0.13 compute2
192.168.50.11 controller
192.168.50.12 compute1
192.168.50.13 compute2
- 重启网络
$ sudo service networking restart
- 验证配置是否生效
$ ip addr
查看结果,包含enp0s8和enp0s9两个网卡的IP地址均为10.0.0.12和192.168.50.12,则配置成功。
结论
以上就是OpenStack手动分布式部署环境准备(Queens版)攻略的详细讲解。在配置过程中,需要按照本攻略中的步骤进行配置,以确保能够成功地部署OpenStack环境。