视频加载失败

AnolisOS 8.2使用Packstack工具部署OpenStack-T

938 字
5 分钟
AnolisOS 8.2使用Packstack工具部署OpenStack-T

本文撰写于 2024 年 9 月 5 日,最后修改于 2024 年 12 月 9 日。

  • 注意:OpenStack 涉及到对虚拟机的管理,如果在本地虚拟机环境安装测试OpenStack,需要开启嵌套虚拟化,否则只能在物理机上面进行相关验证。

  • 版本信息#

    • anolis 8.2 ANCK 64位
    • Openstack-Train(简称 Openstack-T)

    支持的架构#

    • x86_64

安装#

1. 配置openstack train, rabbitmq 仓库, 开启Plus仓库, 使用 anolis 8.4 仓库等#

sed -i "s/^enabled=0/enabled=1/" /etc/yum.repos.d/AnolisOS-Plus.repo
sed -i "s/\$releasever/8.4/" /etc/yum.repos.d/AnolisOS*
sed -i "s/8.2/8.4/" /etc/yum.repos.d/AnolisOS*
yum install -y wget network-scripts vim net-tools nfs-utils python3-urllib3 lvm2 lvm2-libs
yum remove -y buildah podman
cat <<- EOF > /etc/yum.repos.d/openstack.repo
[openstack-train]
name=openstack train
baseurl=http://mirrors.aliyun.com/centos-vault/8.2.2004/cloud/\$basearch/openstack-train/
gpgcheck=0
enabled=1
EOF
cat <<- EOF > /etc/yum.repos.d/rabbitmq.repo
[rabbitmq]
name=rabbitmq server
baseurl=https://mirrors.aliyun.com/centos-vault/8.2.2004/messaging/\$basearch/rabbitmq-38/
gpgcheck=0
enabled=1
EOF

2. 关闭防火墙,selinux, 设置ulimit#

注意:packstack 会自动抽取网卡配置的 IP,作为安装,组件部署,组件通信的IP地址,如果机器有多个网卡,需要留意packstack 具体配置了哪个网卡的 IP。

# 关闭防火墙等
systemctl stop firewalld
systemctl disable firewalld
systemctl stop NetworkManager
systemctl disable NetworkManager
systemctl stop iptables
systemctl disable iptables
# 关闭selinux, 编辑 /etc/sysconfig/selinux 配置文件设置 SELINUX=disabled
setenforce 0
sed -i "s#SELINUX=enforcing#SELINUX=disabled#" /etc/sysconfig/selinux
sed -i "s#SELINUX=permissive#SELINUX=disabled#" /etc/sysconfig/selinux
# 开启 auditd
sudo mkdir /var/log/audit
service auditd start
# 设置ulimit
echo "ulimit -n 655350" >> /etc/profile
# 数据段长度:
echo "ulimit -d unlimited" >> /etc/profile
# 最大内存大小:
echo "ulimit -m unlimited" >> /etc/profile
#堆栈大小:
echo "ulimit -s unlimited" >> /etc/profile
# CPU 时间
echo "ulimit -t unlimited" >> /etc/profile
# 虚拟内存
echo "ulimit -v unlimited" >> /etc/profile
source /etc/profile
# 解除 Linux 系统的最大进程数和最大文件打开数限制:
echo "* soft noproc 110000" >> /etc/security/limits.conf
echo "* hard noproc 110000" >> /etc/security/limits.conf
echo "DefaultLimitNOFILE=infinity" >> /etc/systemd/system.conf
echo "DefaultLimitMEMLOCK=infinity" >> /etc/systemd/system.conf
systemctl daemon-reload

3. 设置主机名,配置hosts文件#

# 设置主机名
hostnamectl set-hostname "openstack.example.com"
bash
# 将主机名与 IP 的映射echo到hosts 文件中。
IP=X.X.X.X #(本机IP)
echo -e "$IP\topenstack.example.com" >> /etc/hosts
# 注意hosts 文件里面对于 $IP 这个,只保留 openstack.example.com 映射。格式如下
# $IP openstack.example.com

4. 确保有 default 路由#

ip r s | grep default || echo "please set default route"

如果上述命令显示 please set default route ,需要设置default 路由。参考路由添加的命令如下:(注意:这个只是格式参考,每个机器gateway是不一样的)

ip route add default via 11.158.244.247 dev bond0 proto static metric 300

5. 设置时间服务#

echo "pool ntp.aliyun.com iburst" >> /etc/chrony.conf
service chronyd restart
chronyc sources

6. 安装 openstack-packstack#

# qemu-kvm-4.2.0 需要高版本的libgcrypt
yum install -y openstack-packstack libgcrypt-1.8.5

7. 安装OpenStack allinone#

packstack --allinone

!!注意:packstack 整个安装过程持续10-20分钟左右, 如果带宽有限,可能需要更多的时间。

看到如下说明安装成功

**** Installation completed successfully ******

OpenStack 安装成功界面
OpenStack 安装成功界面

测试#

1. 客户端方式上传新的 images#

这种方式你需要先通过命令 source /root/keystonerc_admin 加载配置,然后访问相关的接口获取信息,或者触发操作。

下载并导入镜像 cirros-0.5.2-x86_64-disk.img 或者 cirros-0.5.2-aarch64-disk.img

wget http://download.cirros-cloud.net/0.5.2/cirros-0.5.2-`arch`-disk.img
source keystonerc_admin
openstack image create --disk-format qcow2 --container-format bare --public --file cirros-0.5.2-`arch`-disk.img cirros_regular

切换到 demo 用户,后续用demo用户演示, 务必切换到demo用户来执行后续操作, 因为demo用户预制了一些配置,譬如网络配置,便于我们演示。测试创建一个volumn

source /root/keystonerc_demo
cinder create 1 --image cirros --display-name volAFromCirrosTest

2. ssh 登录 VM 验证#

我们可以从终端登录 VM,如上面截图所示,我们 VM 的浮动IP 是 172.24.4.29,执行如下命令 ssh 登陆 VM , 用户:cirros , 默认密码:gocubsgo

ssh cirros@172.24.4.29

SSH 登录虚拟机验证
SSH 登录虚拟机验证

首先,如果部署的机器不是刚刚重装过aonlis8.2的,碰到安装/演示问题时,建议重装,特别是机器可能安装过mysql,httpd 等软件的话,最好重装或者彻底清理干净环境。

其次,可以查看几个服务的状态

cinder service-list
nova service-list

重启某个服务

systemctl restart openstack-nova*
systemctl restart openstack-cinder*

文章分享

如果这篇文章对你有帮助,欢迎分享给更多人!

AnolisOS 8.2使用Packstack工具部署OpenStack-T
https://blog.azxle.cn/posts/anolisos-packstack-openstack-train/
作者
azxle
发布于
2026-07-21
许可协议
CC BY-NC-SA 4.0
Profile Image of the Author
azxle
持续折腾,持续记录。
公告
博客已上线,目前处于初期阶段,内容持续补充中。如有问题或建议,欢迎留言。
分类
标签
最新动态
站点统计
文章
12
分类
2
标签
27
总字数
4,914
运行时长
0 天
最后活动
0 天前
站点信息
构建平台
EdgeOne Pages
博客版本
Firefly v6.16.8
文章许可
CC BY-NC-SA 4.0
文章目录