【OpenStack】使用Kolla部署Rocky版本OpenStack

1. 准备工作
1.1 安装Centos7.9系統,过程略。新建一个磁盘
[root@zl-os-sm-kollatest ~]# cat /etc/centos-release
CentOS Linux release 7.9.2009 (Core)

对接lvm后端存储
1、创建vg
(a)创建LVM 物理卷 /dev/sdb
pvcreate /dev/sdb
(b)创建 LVM 卷组 cinder-volumes
vgcreate cinder-volumes /dev/sdb

1.2 添加阿里yum源
[root@zl-os-sm-kollatest ~]# curl -o /etc/yum.repos.d/CentOS-aliyun.repo http://mirrors.aliyun.com/repo/Centos-7.repo
1.3 安裝一些基礎的包和epel
[root@zl-os-sm-kollatest ~]# yum install -y python-devel libffi-devel gcc openssl-devel libselinux-python git wget vim epel-release
[root@zl-os-sm-kollatest ~]# yum clean all
[root@zl-os-sm-kollatest ~]# yum makecache
1.4 关闭防火牆、NetworkManager、设置selinux
[root@zl-os-sm-kollatest ~]# systemctl disable firewalld && systemctl stop firewalld
[root@zl-os-sm-kollatest ~]# systemctl stop NetworkManager && systemctl disable NetworkManager
[root@zl-os-sm-kollatest ~]# sed -i ‘7s/enforcing/disabled/g’ /etc/selinux/config
[root@zl-os-sm-kollatest ~]# setenforce 0
[root@zl-os-sm-kollatest ~]# getenforce
Permissive
1.5 重启机器
[root@zl-os-sm-kollatest ~]# reboot
[root@zl-os-sm-kollatest ~]# getenforce
Disabled
1.6 設置host
[root@zl-os-sm-kollatest ~]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.130.100 zl-os-kollatest
2. 系統基本配置
2.1 安裝Python2-pip-20.3.4(Python2最高版本)
2.1.1 配置pip源
[root@zl-os-sm-kollatest ~]# mkdir .pip
[root@zl-os-sm-kollatest ~]# vi .pip/pip.conf
[global]
index-url = http://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host=mirrors.aliyun.com
2.1.2 安装Python2-pip
[root@zl-os-sm-kollatest ~]# yum install -y python-pip
2.1.3 升级pip-20.3.4
[root@zl-os-sm-kollatest ~]# pip install -U pip
2.1.4 安裝/升級setuptools
[root@zl-os-sm-kollatest ~]# pip install -U setuptools
2.2 安裝docke-ce
[root@zl-os-sm-kollatest ~]# yum -y install yum-utils
[root@zl-os-sm-kollatest ~]# yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
[root@zl-os-sm-kollatest ~]# yum makecache
#安装docker-ce,不是docker
[root@zl-os-sm-kollatest ~]# yum -y install docker-ce-17.06.2.ce
2.3 配置docker镜像的源
[root@zl-os-sm-kollatest ~]# mkdir -p /etc/docker/
[root@zl-os-sm-kollatest ~]# cat > /etc/docker/daemon.json <<EOF
{
“registry-mirrors”: [“https://***********.mirror.aliyuncs.com”]
}
EOF
2.4 配置docker網絡代理
[root@zl-os-sm-kollatest ~]# mkdir -p /etc/systemd/system/docker.service.d
[root@zl-os-sm-kollatest ~]# cat >/etc/systemd/system/docker.service.d/kolla.conf <<EOF
[Service]
MountFlags=shared
EOF
2.5 啟動docker服務
[root@zl-os-sm-kollatest ~]# systemctl daemon-reload && systemctl restart docker && systemctl enable docker

3. 安裝kolla、ansible
3.1 安裝ansible
[root@zl-os-sm-kollatest ~]# pip install ansible2.7.5
3.2 安装kolla-ansible
3.2.1 先安裝pbr
[root@zl-os-sm-kollatest ~]# pip install pbr
3.2.2 开始安装kolla-ansible,要带上–ignore-installed PyYAML,否则可能会报错
[root@zl-os-sm-kollatest ~]# pip install kolla-ansible
7.2.1 --ignore-installed PyYAML
3.2.3 创建kolla的文件夹,后续部署的时候很多openstack的配置文件都会在这
[root@zl-os-sm-kollatest ~]# mkdir -p /etc/kolla
[root@zl-os-sm-kollatest ~]# chown U S E R : USER: USER:USER /etc/kolla
3.2.4 复制ansible的部署配置文件all-in-one和multinode到當前目錄
[root@zl-os-sm-kollatest ~]# cp /usr/share/kolla-ansible/ansible/inventory/* .
3.2.5 负责gloable.yml和password.yml到目录/etc/kolla
[root@zl-os-sm-kollatest ~]# cp -r /usr/share/kolla-ansible/etc_examples/kolla/* /etc/kolla
3.3 配置文件修改
3.3.1 生成password.yml的密码,所有openstack组件的密码自动创建,后续组件都会使用此密码文件
[root@zl-os-sm-kollatest ~]# kolla-genpwd
3.3.2 網卡設置
[root@zl-os-sm-kollatest ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
TYPE=Ethernet
BOOTPROTO=static
NAME=eth0
UUID=01626427-270b-449e-9bb1-ca17d5eab3b6
DEVICE=eth0
ONBOOT=yes
IPADDR=10...100
NETMASK=255.255.254.0
GATEWAY=10...1
[root@zl-os-openstack01 ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth1
TYPE=Ethernet
BOOTPROTO=static
NAME=eth1
UUID=9c92fad9-6ecb-3e6c-eb4d-8a47c6f50c04
DEVICE=eth1
ONBOOT=yes
IPADDR=192...100
NETMASK=255.255.255.0
GATEWAY=192...1
3.3.3 globals.yml设置
[root@zl-os-sm-kollatest ~]# cat /etc/kolla/globals.yml |grep -v ^$ |grep -v ^#

kolla_base_distro: “centos”
kolla_install_type: “source”
openstack_release: “rocky”
node_custom_config: “/etc/kolla/config”
kolla_internal_vip_address: “192...254” #使用無法ping通的非本機IP
docker_namespace: “kolla”
network_interface: “eth1”
neutron_external_interface: “eth0”
docker_namespace: “kolla”
enable_cinder: “yes”
enable_collectd: “yes”
enable_haproxy: “yes”
enable_influxdb: “yes”
enable_cinder_backup: “yes”
enable_cinder_backend_iscsi: “yes”
enable_cinder_backend_lvm: “yes”
cinder_volume_group: “cinder-volumes”
neutron_plugin_agent: “openvswitch”
enable_neutron_provider_networks: “yes”
nova_compute_virt_type: “qemu”
3.3.4 修改passwords.yml
[root@zl-os-sm-kollatest ~]# vim /etc/kolla/passwords.yml
keystone_admin_password: admin

4 部署OpenStack
开始进行部署,执行命令需要在ansible的all-in-one和multinode的文件所在目录执行,否则命令要修改下路径
4.1 检查依赖关系
[root@zl-os-sm-kollatest ~]# kolla-ansible -i all-in-one bootstrap-servers
4.2 检查环境配置
[root@zl-os-sm-kollatest ~]# kolla-ansible -i all-in-one prechecks
4.3 拉取openstack镜像
[root@zl-os-sm-kollatest ~]# kolla-ansible -i all-in-one pull
4.4 部署(第一次部署)(網絡會斷,建議在本機執行,方便查看進程)
[root@zl-os-sm-kollatest ~]# kolla-ansible -i all-in-one deploy
4.5 修改橋接網卡
部署後,系統自動生成br-ex網卡,配置網卡信息
[root@zl-os-sm-kollatest ~]# cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-br-ex
[root@zl-os-sm-kollatest ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
TYPE=Ethernet
BOOTPROTO=none
NAME=eth0
UUID=01626427-270b-449e-9bb1-ca17d5eab3b6
DEVICE=eth0
ONBOOT=yes
#IPADDR=10...100
#NETMASK=255.255.254.0
#GATEWAY=10...1
[root@zl-os-sm-kollatest ~]# cat /etc/sysconfig/network-scripts/ifcfg-br-ex
TYPE=OVSBridge
BOOTPROTO=none
DEVICE=br-ex
DEVICETYPE=OVS
ONBOOT=yes
IPADDR=10...100
NETMASK=255.255.254.0
GATEWAY=10...1
[root@zl-os-sm-kollatest ~]# service network restart
4.6 修改globals.yml(第二次部署)
[root@zl-os-sm-kollatest ~]# cat /etc/kolla/globals.yml |grep -v ^$ |grep -v ^#

kolla_base_distro: “centos”
kolla_install_type: “source”
openstack_release: “rocky”
node_custom_config: “/etc/kolla/config”
kolla_internal_vip_address: “192...254”
kolla_external_vip_address: “10...100” #(注:部署分兩次第一次注釋掉此項)
docker_namespace: “kolla”
network_interface: “eth1”
kolla_external_vip_interface: “br-ex” #(注:部署分兩次第一次注釋掉此項)
neutron_external_interface: “br-ex” (注:部署分兩次,第一次這裡為實體網卡名稱如eno1,第二次部署時修改為br-ex)
enable_cinder: “yes”
enable_collectd: “yes”
enable_haproxy: “yes”
enable_influxdb: “yes”
enable_cinder_backup: “yes”
enable_cinder_backend_iscsi: “yes”
enable_cinder_backend_lvm: “yes”
cinder_volume_group: “cinder-volumes”
neutron_plugin_agent: “openvswitch”
enable_neutron_provider_networks: “yes”
nova_compute_virt_type: “qemu”

4.7 部署(第二次部署,執行 ② 即可)
① [root@zl-os-sm-kollatest ~]# kolla-ansible -i all-in-one deploy(重新部署)
② [root@zl-os-sm-kollatest ~]# kolla-ansible -i all-in-one reconfigure(修改生效)

4.8 生成环境变量文件,openstack命令行客户端使用,post-deploy會在 /etc/kolla/目錄下生成文件admin-openrc.sh
[root@zl-os-sm-kollatest ~]# kolla-ansible post-deploy
每次使用openstack命令時執行source /etc/kolla/admin-openrc.sh(manager節點執行)
source /etc/kolla/admin-openrc.sh

4.9 安装openstack客户端
[root@zl-os-sm-kollatest ~]# pip install python-openstackclient
[root@zl-os-sm-kollatest ~]# pip install openstackdocstheme

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

灰羽翎

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值