一文通关物理机Ubuntu22.04融合部署OpenStack

前言

因为博主笔记本是amd的,就最近搞了个小主机,就想装个云平台玩玩,搞了三四天才正儿八经弄完,摸了一大堆错误出来,在文章前面我会将这些需要注意的点列举出来。

环境

物理环境:

i5 12450H

32G内存

无线网卡、以太网口各一个

2T SSD、500G HHD

软件环境:

OpenStack-Yoga-allinone部署

Ubuntu22.04.3

安装前注意点

1、需要有一个网卡需要是空闲并且没有ip的状态,否则会出现错误

在博主环境中,主机用无线网卡联网,用贝锐的向日葵做了大二层隧道进行远程,使用以太网卡作为"外部接口"

你要是网口多那当我没说

2、需要有空闲物理卷能够创建卷组,或者能修改卷组名亦可

3、千万不要自己装ovs等软件,会报错,因为ovs服务直接跑在docker里了

4、全局文件/etc/kolla/globals.yml,需要根据你的信息进行调整网卡、ip等

5、docker镜像一定要按照步骤换源,不然会非常非常慢

安装部署的时间比较久,大部分时间都在下载docker镜像与重启container

6、不要全部大块复制粘贴,有些是需要自定义的

7、要是想安装另外版本的OpenStack,只要重新对OpenStack源和docker镜像源进行配置,再下载即可

8、有报错记得留言

Yoga版本

复制代码
#安装软件
apt update
apt install git python3-dev libffi-dev gcc libssl-dev
#使用venv作为虚拟环境工具
apt install python3-venv 
#创建虚拟环境路径,也可以自定路径
mkdir /path && mkdir /path/to 
python3 -m venv /path/to/venv
#切换到虚拟环境
source /path/to/venv/bin/activate
#换源与安装OpenStack
python -m pip install -i https://pypi.tuna.tsinghua.edu.cn/simple --upgrade pip
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
pip install 'ansible>=4,<6'
pip install git+https://opendev.org/openstack/kolla-ansible@stable/yoga
pip install git+https://jihulab.com/james-curtis/kolla-ansible@stable/yoga
mkdir -p /etc/kolla
chown $USER:$USER /etc/kolla
#注意自定路径
cp -r /path/to/venv/share/kolla-ansible/etc_examples/kolla/* /etc/kolla
cp /path/to/venv/share/kolla-ansible/ansible/inventory/* .

#playbook的缩进比较难搞,所以直接vim手动换吧
vim /path/to/venv/share/kolla-ansible/requirements.yml
换成https://jihulab.com/james-curtis/ansible-collection-kolla

#安装kolla-ansible依赖
kolla-ansible install-deps

#配置ansible默认文件
mkdir /etc/ansible 
echo "[defaults]
host_key_checking=False
pipelining=True
forks=100" > /etc/ansible/ansible.cfg

#因为采用了allinone安装
#添加localhost ansible_python_interpreter=python到all-in-one的开头
sed '1i localhost ansible_python_interpreter=python' /path/to/venv/share/kolla-ansible/ansible/inventory/all-in-one

#配置全局文件,需要根据你的信息进行调整
echo '
#基础配置:
kolla_base_distro: ubuntu   #系统配置,修改为ubuntu即可
openstack_release: yoga     #openstack版本
kolla_internal_vip_address: "172.16.2.153" #使用内部网卡的ip,如果HA选项选择yes,则可以采用单独ip
network_interface: oray_vnc         #内部网卡名称
neutron_external_interface: enp3s0  #外部网卡名称,此网卡需要up并且没有ip
#服务组件配置:
enable_haproxy: "no" #高可用,如果为yes则kolla_internal_vip_address可以使用独立IP
enable_cinder: "yes" #块存储
enable_cinder_backup: "no"       #是否备份
enable_cinder_backend_lvm: "yes" #使用逻辑存储
enable_neutron_provider_networks: "yes" # 启用外部网络
nova_compute_virt_type: "kvm"    #虚拟化类型(物理机用kvm,VMWare使用qemu)
nova_console: "spice"
' > /etc/kolla/globals.yml

#配置密码,并录入密码文件
kolla-genpwd
sed -i 's/^keystone_admin_password.*/keystone_admin_password: 自定义密码/' /etc/kolla/passwords.yml
#给docker换源,不然下载会很慢
sed -i.bak 's/#docker_registry:/docker_registry: quay.nju.edu.cn/g' /etc/kolla/globals.yml

#配置存储,需要一个名字叫做cinder-volumes的卷组
#具体分区可以自由fdisk,我是将整块sda都分出去了
mkfs.ext4   /dev/sda
pvcreate    /dev/sda
vgcreate  cinder-volumes  /dev/sda

cd /path/to/venv/share/kolla-ansible/ansible/inventory/
#基础环境安装
kolla-ansible -i ./all-in-one bootstrap-servers
#检查
kolla-ansible -i ./all-in-one prechecks
#开始部署,会花费很久,特别是如果你的网络很差还没有换源
kolla-ansible -i ./all-in-one deploy
#安装完成

验证

网页登录network_interface的ip------我前面global文件中写的是172.16.2.153,这里网址就是172.16.2.153

账户admin

密码前面自定义的密码

相关推荐
ajassi20002 小时前
开源 C++ QT Widget 开发(十五)多媒体--音频播放
linux·c++·qt·开源
JosieBook3 小时前
【远程运维】Linux 远程连接 Windows 好用的软件:MobaXterm 实战指南
linux·运维·windows
文档搬运工3 小时前
Linux MInt启动速度的优化
linux
Broken Arrows3 小时前
Linux学习——管理网络安全(二十一)
linux·学习·web安全
AKAMAI4 小时前
Queue-it 为数十亿用户增强在线体验
人工智能·云原生·云计算
Light604 小时前
领码方案|Linux 下 PLT → PDF 转换服务超级完整版:异步、权限、进度
linux·pdf·可观测性·异步队列·plt转pdf·权限治理·进度查询
羚羊角uou4 小时前
【Linux】命名管道
linux·运维·服务器
IT 小阿姨(数据库)5 小时前
PgSQL监控死元组和自动清理状态的SQL语句执行报错ERROR: division by zero原因分析和解决方法
linux·运维·数据库·sql·postgresql·centos
THMAIL5 小时前
量化股票从贫穷到财务自由之路 - 零基础搭建Python量化环境:Anaconda、Jupyter实战指南
linux·人工智能·python·深度学习·机器学习·金融
让子弹飞025 小时前
36.2Linux单总线驱动DS18B20实验(详细讲解代码)_csdn
linux·ubuntu·驱动的分离和分层