kolla安装openstack 多节点

本文详细介绍了使用Kolla在多节点环境下部署OpenStack的过程,包括硬件要求、网络配置、添加hosts信息、分发密钥、配置Ceph卷参数、多节点文件设置等关键步骤,以及初始化OpenStack和创建实例的流程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


在这里插入图片描述

重要提示:如果是用ESXI虚拟机安装环境。虚拟交换机的 混杂模式 一定要开启。不然出不了外网。原因可通过学习 linux bridge获取。

硬件要求

8G以上内存。200G的硬盘空间

5.232:添加一张网卡
5.234:添加一块100G硬盘

[root@control233 ~]# egrep -c '(vmx|svm)' /proc/cpuinfo
12
#查看是否支持虚拟化
 须按顺序操作 5.234--->5.233--->5.232--->5.231

系统安装

使用陈沙克封装好的ISO镜像安装系统
ISO 地址: http://www.chenshake.com/kolla-ocata-iso-release-notes/
第一台主机用iso安装。安装完成后就可以用 cobbler 安装。
默认是关闭状态。须要开启

docker restart cobbler

然后就可以打开 http://IP:81/cobbler_web/
用户名 cobbler 密码 99cloud
别的电脑开机 用PXE网卡模式启动。

5.234操作

[root@control234 ~]# vim /etc/hosts
#添加下面内容
192.168.5.231 control231
192.168.5.232 control232
192.168.5.233 control233
192.168.5.234 control234    
         
#这条命令,就是对磁盘进行打标签。表示是用来做kolla的ceph。
[root@control234 ~]# parted /dev/sdb -s -- mklabel gpt mkpart KOLLA_CEPH_OSD_BOOTSTRAP 1 -1
#查看
[root@control234 ~]# parted /dev/sdb print
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdb: 107GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 
Number  Start   End    Size   File system  Name                      Flags
 1      1049kB  107GB  107GB               KOLLA_CEPH_OSD_BOOTSTRAP

5.233操作

[root@control233 ~]# vim /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.5.231 control231
192.168.5.232 control232
192.168.5.233 control233
192.168.5.234 control234
#添加hosts信息   

5.232操作

[root@control232 ~]# vim /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.5.231 control231
192.168.5.232 control232
192.168.5.233 control233
192.168.5.234 control234
#添加hosts信息                                                        

[root@control232 ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens224 
TYPE=Ethernet
BOOTPROTO=none
NAME=ens224
DEVICE=ens224
ONBOOT=yes
#修改网卡2为桥接                                                                                 

[root@control232 ~]# ifup ens224
#启用网卡

5.231操作

添加hosts信息

[root@control231 ~]# vim /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.5.231 control231
192.168.5.232 control232
192.168.5.233 control233
192.168.5.234 control234

添加分发密钥

[root@control231 ~]# ssh-keygen
[root@control231 ~]# ssh-copy-id control231  
[root@control231 ~]# ssh-copy-id control232
[root@control231 ~]# ssh-copy-id control233
[root@control231 ~]# ssh-copy-id control234

添加卷参数(Ceph)

[root@control231 /]# mkdir /etc/kolla/config
[root@control231 /]# vim /etc/kolla/config/ceph.conf
[global]
osd pool default size = 1
osd pool default min size = 1
[root@control231 /]# cd /etc/kolla/
[root@control231 kolla]# vi globals.yml 
#添加下面内容
enable_cinder: "yes"
enable_ceph: "yes"
enable_ceph_rgw: "yes"
enable_ceph_rgw_keystone: "yes"
glance_backend_ceph: "yes"

配置多节点文件

[root@control231 inventory]# cp /root/kolla-ansible-4.0.3.dev36/ansible/inventory/multinode /etc/kolla/3node
[root@control231 inventory]# cd /etc/kolla/
[root@control231 kolla]# vim 3node 
#修改下面参数

#管理节点
[control]
control232

#网络节点
[network]
control232

#计算节点
[compute]
control232
control233
control234

#监控节点
[monitoring]
control232

#存储节点
[storage]
control234

检查并安装

[root@control231 kolla]# cd /root/kolla-ansible-4.0.3.dev36/tools/
[root@control231 tools]# ./kolla-ansible -i /etc/kolla/3node prechecks
[root@control231 tools]# ./kolla-ansible -i /etc/kolla/3node deploy

初始化OpenStack

#连接到control232管理机器上
[root@control231 kolla]#ssh control232

#需要修改的地方
[root@control232 ~]# vim /root/kolla-ansible-4.0.3.dev36/tools/init-runonce
IMAGE_URL=http://download.cirros-cloud.net/0.3.4/ 
#如没外网。须要搭建http服务并放下载好的文件
IMAGE=cirros-0.3.4-x86_64-disk.img
IMAGE_NAME=cirros
#下面是浮动IP。须要根据实际情况调整
EXT_NET_CIDR='10.0.2.0/24'
EXT_NET_RANGE='start=10.0.2.150,end=10.0.2.199'
EXT_NET_GATEWAY='10.0.2.1'

#初始化配置
[root@control01 tools]# ./kolla-ansible post-deploy
PLAY RECAP *********************************************************************
localhost                  : ok=2    changed=1    unreachable=0    failed=0   
[root@control01 tools]# source /etc/kolla/admin-openrc.sh 
[root@control01 tools]# ./init-runonce 

#创建实例
#openstack server create \
    --image cirros \
    --flavor m1.tiny \
    --key-name mykey \
    --nic net-id=426c443d-baa6-4fee-a13b-6e523101bc83 \
    #net-id 每个人都不一样
    demo1

打开浏览器 输入:http://192.168.5.132 就可以登录horizon
user:admin
pass:99cloud

参考文档:

http://www.chenshake.com/kolla-installation/

### 使用 Kolla-Ansible 在单节点上部署 OpenStack 的详细步骤 #### 准备工作 为了确保顺利部署,需准备一台满足最低硬件需求的服务器或虚拟机。建议操作系统选用 Ubuntu 或 CentOS。 #### 配置网络接口 安装好操作系统后,需要配置两个独立的网络接口来区分管理网络和数据网络: ```bash rm -r /etc/netplan/* vi /etc/netplan/controller.yaml ``` 编辑后的 `controller.yaml` 文件应如下所示[^3]: ```yaml network: version: 2 renderer: networkd ethernets: ens33: # 替换成实际网卡名称,可通过ip a查看 addresses: - $LOCAL_ADDRESS/24 # 管理网络IP地址 gateway4: $LOCAL_GATEWAY # 默认网关 nameservers: addresses: [114.114.114.114, 8.8.8.8] ens38: # 数据网络网卡 dhcp4: false ``` 应用新的网络设置: ```bash netplan apply ``` #### 安装依赖包并克隆 Kolla-Ansible 源码库 更新系统软件源列表,并安装必要的开发工具和其他依赖项。接着通过 Git 获取最新版的 KollaKolla-Ansible 项目代码仓库。 对于基于 Debian 的发行版(如 Ubuntu),可以运行以下命令: ```bash apt update && apt install git python3-pip libffi-dev gcc make jq -y pip3 install --upgrade pip setuptools wheel git clone https://opendev.org/openstack/kolla-ansible.git ~/kolla-ansible cd ~/kolla-ansible pip3 install . ``` #### 初始化全局配置文件 创建用于定义整个集群行为模式以及组件间交互方式的基础参数集合——即 global configuration file (`globals.yml`) 。此操作可以通过执行脚本来完成。 ```bash cp -r ./contrib single-node all-in-one ./tools/init-config.py ``` #### 修改 inventory 文件 根据实际情况调整主机清单(`inventory`)中的 IP 地址及其他相关信息,以便让 Ansible 正确识别目标机器。这里假设采用的是全合一(all-in-one)拓扑结构,则只需指定本机回环地址即可。 ```ini [control] localhost ansible_connection=local [network:children] all [compute:children] all [mariadb] localhost ansible_connection=local [rabbitmq] localhost ansible_connection=local [keystone] localhost ansible_connection=local [glance] localhost ansible_connection=local [cinder] localhost ansible_connection=local [neutron_controller] localhost ansible_connection=local [neutron_compute] localhost ansible_connection=local [placement] localhost ansible_connection=local [horizon] localhost ansible_connection=local ``` #### 执行预检与部署流程 利用 prechecks playbook 对环境进行初步验证;随后正式发起 openstack services deployment 请求。 ```bash kolla-ansible -i all-in-one prechecks kolla-ansible -i all-in-one deploy ``` 上述指令会依次读取 `/usr/local/share/kolla-ansible/ansible/site.yml` 中的任务描述,并依照其指示顺序加载相应的 role 进行处理[^1]。 #### 后续测试 待服务完全启动完毕后,可尝试新建虚机实例以检验整体功能是否正常运作。此时应该能够成功 ping 通外部互联网资源及内部私有子网内的其他设备[^2]。 #### 清除现有环境 (如有必要) 如果想要重置当前实验平台回到初始状态,那么可以借助 destroy 命令移除所有已创建的服务容器及其关联镜像。 ```bash kolla-ansible destroy -i /root/all-in-one --include-images --yes-i-really-really-mean-it reboot ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值