1.配置

控制节点 1 6G 100G 10.0.0.10
计算节点 1 4G 100G 10.0.0.20
创建完虚拟机后需要开启虚拟化

官方警告
从 Ussuri 版本开始,您将需要使用 CentOS8 或 RHEL 8。以前的 OpenStack 版本需要使用 CentOS7 或 RHEL 7。不同的发行版和版本都包含说明。(本文使用的是T版)
00.png

安装 Train 版本时,运行:
yum install centos-release-openstack-train

安装 Rocky 版本时,运行:
yum install centos-release-openstack-rocky

2.修改主机名

所有节点都要配置
控制节点:controller
计算节点:compute
hostnamectl set-hostname controller
hostnamectl set-hostname compute

3.添加主机名映射

所有节点都要配置
vi /etc/hosts
10.0.0.10 controller
10.0.0.20 compute

改完重启服务器

4.关闭防火墙

所有节点都要配置
systemctl stop firewalld
systemctl disable firewalld

setenforce 0
vi /etc/sysconfig/selinux
SELINUX=disabled

5.关闭网络管理

所有节点都要配置
systemctl stop NetworkManager
systemctl disable NetworkManager

6.配置yum源(能访问外网就不配)

所有节点都要配置
上传openstack_rocky到/opt目录并解压
tar -zxvf openstack_rocky.tar.gz

cd /etc/yum.repos.d/

mkdir backup (建议备份)
cp C* backup/

vi local.repo (填入以下内容)
[openstack]
name=openstack
baseurl=file:///opt/openstack_rocky
enabled=0
gpgcheck=1

清除缓存
yum clean all
更新缓存
yum makecache

7.配置NTP服务

控制节点:
yum -y install chrony
vi /etc/chrony.conf
server time1.aliyun.com iburst //修改第一行为阿里云时间同步
allow 10.0.0.0/24 //修改allow行

启动chronyd并加入开机自启
systemctl enable chronyd.service
systemctl start chronyd.service

计算节点:
yum -y install chrony
vi /etc/chrony.conf
server controller iburst //删除所有server键,修改第一行为控制节点主机名

启动chronyd并加入开机自启
systemctl enable chronyd.service
systemctl start chronyd.service

验证ntp同步情况
chronyc sources

控制节点:

MS Name/IP address Stratum Poll Reach LastRx Last sample

^* 203.107.6.88 2 6 37 1 -98us[-2688us] +/- 37ms
^- time.cloudflare.com 3 6 37 1 +8973us[+6383us] +/- 114ms
^? time.cloudflare.com 0 6 0 - +0ns[ +0ns] +/- 0ns
^- ntp1.flashdance.cx 2 6 17 65 +3578us[ +989us] +/- 171ms

计算节点:

MS Name/IP address Stratum Poll Reach LastRx Last sample

^* controller 3 6 177 14 -1085us[-2244us] +/- 40ms

MS行带有^*代表成功

引用控制器节点的节点,可能需要几分钟才能同步

8.配置免密交互

所有节点都要配置
ssh-keygen -t rsa //一路回车即可

ssh-copy-id -i controller /yes完后输入密码
ssh-copy-id -i compute

9.使用openstack工具部署openstack

控制节点
yum install centos-release-openstack-train //安装T版openstack
yum -y install openstack-packstack //安装packstack工具
packstack --gen-answer-file=openstack.txt //生成应答文件
vi openstack.txt //配置应答文件

19 CONFIG_MARIADB_INSTALL=y    //第19行 MARIADB数据库默认要安装 ,默认是Y,不需要更改
22 CONFIG_GLANCE_INSTALL=y      //第22行 GLANCE镜像组将必须要装,默认是Y,不需要更改
25 CONFIG_CINDER_INSTALL=y      //第25行 CINDER组件块存储的,必须要装,默认是Y,不需要更改
29 CONFIG_MANILA_INSTALL=n      //第29行MANILA组件是openstack的扩展系统 ,默认N,不需要更改
32 CONFIG_NOVA_INSTALL=y        //第32行NOVA组件是openstack计算组件,默认Y,不需要更改
35 CONFIG_NEUTRON_INSTALL=y     //第35行NEUTRON是openstack的网络组件,默认Y,不需要更改
38 CONFIG_HORIZON_INSTALL=y     //第38行HORIZON是OpenStack的Dashboard组件,默认Y,不需要更改
41 CONFIG_SWIFT_INSTALL=n       //●第41行SWIFT是OpenStack的对象存储组件,默认是Y,在生产环境中一般是不装,所以该n
46 CONFIG_CEILOMETER_INSTALL=y  //第46行CEILOMETER是OpenStack的计量组件 默认是Y,不需要更改
50 CONFIG_AODH_INSTALL=n        //●第50行,默认是Y 需要改n
53 CONFIG_PANKO_INSTALL=n       //第53行, 默认是n  不需要更改
60 CONFIG_HEAT_INSTALL=n        //第60行,HEAT是OpenStack是编排组件 ,默认是n ,不需要更改
94 CONFIG_CONTROLLER_HOST=10.0.0.10           //第94行CONTROLLER是OpenStack的控制节点,在控制节点上配置的,不需要更改IP地址。
97 CONFIG_COMPUTE_HOSTS=10.0.0.20  //●第97行需要更改计算节点的IP地址
101 CONFIG_NETWORK_HOSTS=10.0.0.10            //●第101行 需要更改网络节点的IP地址
557 CONFIG_CINDER_VOLUMES_SIZE=1G                //●第557行 系统在创建CINDER组件的的时候回创建一个20G卷,因为我们虚拟机空间有限所以把空间改下点1G
778 CONFIG_NEUTRON_METADATA_PW=29948657b3aa409c        //●第778行 ,像这样的29948657b3aa409c是密码,有后面有专门的脚本改。
782 CONFIG_LBAAS_INSTALL=y      //●第782行  LBAAS负载均衡组件。必选要装 选y(实验环境不需要安装)
790 CONFIG_NEUTRON_FWAAS=y      //●第790行 FWAAS是防火墙组件。必选要装 选y(实验环境不需要安装)
794 CONFIG_NEUTRON_VPNAAS=y     //●第794行 VPNAAS是VPN组件。必选要装 选y(实验环境不需要安装)
817 CONFIG_NEUTRON_ML2_FLAT_NETWORKS=physnet1       //●第817行,FLAT网络这边要设置物理网卡名字
862 CONFIG_NEUTRON_OVS_BRIDGE_MAPPINGS=physnet1:br-ex   //●第862行,这边要设置物理网卡的名字
873 CONFIG_NEUTRON_OVS_BRIDGE_IFACES=br-ex:eth1       //●第873行,这边br-ex:eth1是网络节点的nat网卡
1185 CONFIG_PROVISION_DEMO=n    //●第1185行 是OpenStack联网下载一个测试镜像,这边没联网。可以改成n

packstack --answer-file=openstack.txt //安装
cat keystonerc_admin //查看登录密码

10.执行source /root/keystonerc_admin导入环境变量(openstack server list 命令出现Missing value auth-url required for auth plugin password错误排查)
11.png

11.外部主机访问测试
http://192.168.10.10/dashboard