OpenStack-Ansible 部署完全攻略

自上次尝试部署 OSA 已经过去大半年了,之前成功过几次但是最后在生产环境中因为对这个技术栈不够自信最后还是在服务器上用 Proxmox 代替了 Openstack。随着服务器上服务变多,五花八门的需求涌现出来 PVE 的短板开始出现

省略……

准备虚拟机

  • deploy (Rocky 10.1)20GiB(系统盘)
  • alpha-01 (Rocky 10.1) 120GiB(系统盘) + 100GiB (Cinder-Volume)
我安装的时候选择了 server,有一些软件包并不自带,记得后续手动安装

准备网络环境

确保 deploy 和 alpha-01 在同一个 2 层网络结构,我们这里按照部署教程设置

br-mgmt: 172.29.236.0/22

设置完,我们得到

  • deploy: 172.29.236.50/22
  • alpha-01: 172.29.236.51/22
💡
这里真的很容易错

I. 初始化部署服务器 (Deployment Host)

💡
我非常建议在部署时 deploy 节点直接使用 root 账户,文档内所有的操作都基于 root 账户。
dnf upgrade

升级服务器

# 记得重启
grubby --update-kernel ALL --args selinux=0

(推荐)关闭 SELinux

dnf install git chrony openssh-server python3-devel sudo
dnf group install "Development Tools"

安装软件依赖(如果电脑没有)

systemctl enable chronyd
systemctl start chronyd

同步系统时钟

systemctl stop firewalld
systemctl mask firewalld

关闭防火墙

接下来我们要把部署服务器的 ssh 公钥放到被部署的服务器(也就是 alpha-01) 上去。我在这里直接把公钥放到 alpha-01 的 root 下面,这样部署可以简单很多。

成功

安装部署脚本

git clone -b master https://opendev.org/openstack/openstack-ansible /opt/openstack-ansible

这个脚本会把 osa 的仓库克隆到 /opt/openstack-ansible

切换到 /opt/openstack-ansible,开始 bootstrap 环境

scripts/bootstrap-ansible.sh

II. 初始化 Target 节点

略,记得关闭 SELinux

III (Optional). 对于存储节点,配置后端

参考文档:

OpenStack-Ansible Deployment Guide — openstack-ansible 32.1.0.dev42 documentation

Subscribe to Emma & Quin

Don’t miss out on the latest issues. Sign up now to get access to the library of members-only issues.
jamie@example.com
Subscribe