ansible与kolla

您所在的位置:网站首页 多节点网络取得 ansible与kolla

ansible与kolla

2023-09-16 07:25| 来源: 网络整理| 查看: 265

ansible  https://zerosun.top/2019/08/12/openstack-deploying-by-OSA/

https://www.bookstack.cn/read/deployopenstackwithpuppet/deployment_tool-fuel.md

https://www.bookstack.cn/read/deployopenstackwithpuppet/deployment_tool-osa.md

 

推荐 https://www.bookstack.cn/read/deployopenstackwithpuppet/deployment_tool-packstack.md

 

三个OpenStack自动化部署工具:Devstack,OSA,Kolla对比_筋斗云计算-程序员宝宝_openstack自动化部署工具

 

   

特色

劣势

Devstack

安装简单

不支持添加和减少单个组件。只能将整个环境卸载再重新安装

OSA (OpenStack-Ansible)

   

 

基于ansible和LXC容器部署OpenStack

 

Kolla

基于ansible和Docker容器部署OpenStack所需软件包被封装到专门的Docker镜像中,安装速度很快,半个钟头左右就能安装完成。最新的Ocata 版本的OpenStack使用Kubernetes 平台来管理容器  

 

后2个部署工具都支持容器,容器的好处就是方便升级,方便运维等。

Docker容器和LXC容器的最大区别是Docker容器迁移更容易。

kolla-ansible如下

1、准备环境:

物理机或者虚拟机三台(本文使用CentOS7系统,虚拟机环境) 一台deploy,两块网卡(ens192、ens224) 一台control+network,两块网卡(ens192、ens224) 一台compute+storage,三块网卡(ens192、ens224、ens256) compute计算节点加一块硬盘

1.1 网络配置 deploy: vim /etc/sysconfig/network-scripts/ifcfg-ens192 BOOTPROTO=static DEVICE=ens192 ONBOOT=yes IPADDR=10.24.3.10 NETMASK=255.255.255.0 GATEWAY=10.24.3.254 control: ens-192配置ip: vim /etc/sysconfig/network-scripts/ifcfg-ens192 TYPE=Ethernet BOOTPROTO=static DEVICE=ens192 ONBOOT=yes IPADDR=10.24.3.12 NETMASK=255.255.255.0 GATEWAY=10.24.3.254

ens-224网卡配置三个子接口(xvlan),分别为:

ens-224.10 vim /etc/sysconfig/network-scripts/ifcfg-ens224.10 VLAN=yes DEVICE=ens224.10 BOOTPROTO=static ONBOOT=yes TYPE=Ethernet IPADDR=192.168.10.20 NETMASK=255.255.255.0 vim /etc/sysconfig/network-scripts/ifcfg-vlan10 VLAN=yes VLAN_NAME_TYPE=VLAN_PLUS_VID_NO_PAD DEVICE=vlan10 PHYSDEV=ens224 BOOTPROTO=static ONBOOT=yes TYPE=Ethernet IPADDR=192.168.10.20 NETMASK=255.255.255.0 ens-224.20 vim /etc/sysconfig/network-scripts/ifcfg-ens224.20 VLAN=yes DEVICE=ens224.20 BOOTPROTO=static ONBOOT=yes TYPE=Ethernet IPADDR=192.168.20.20 NETMASK=255.255.255.0 vim /etc/sysconfig/network-scripts/ifcfg-vlan20 VLAN=yes VLAN_NAME_TYPE=VLAN_PLUS_VID_NO_PAD DEVICE=vlan20 PHYSDEV=ens224 BOOTPROTO=static ONBOOT=yes TYPE=Ethernet IPADDR=192.168.20.20 NETMASK=255.255.255.0 3ns-224.30 vim /etc/sysconfig/network-scripts/ifcfg-ens224.30 VLAN=yes DEVICE=ens224.30 BOOTPROTO=static ONBOOT=yes TYPE=Ethernet IPADDR=192.168.30.20 NETMASK=255.255.255.0 vim /etc/sysconfig/network-scripts/ifcfg-vlan30 VLAN=yes VLAN_NAME_TYPE=VLAN_PLUS_VID_NO_PAD DEVICE=vlan30 PHYSDEV=ens224 BOOTPROTO=static ONBOOT=yes TYPE=Ethernet IPADDR=192.168.30.20 NETMASK=255.255.255.0

ens256配置ip:

# 外网网卡配置 vim /etc/sysconfig/network-scripts/ifcfg-ens256 DEVICE=ens256 BOOTPROTO=none ONBOOT=yes TYPE=Ethernet compute:

ens192和ens224配置和control一样,ens224配置三个子接口,子接口ip网段,VLAN不换,只更改IP:

vim /etc/sysconfig/network-scripts/ifcfg-ens192 BOOTPROTO=static DEVICE=ens192 ONBOOT=yes IPADDR=10.24.3.11 NETMASK=255.255.255.0 GATEWAY=10.24.3.254 vim /etc/sysconfig/network-scripts/ifcfg-ens224.10 IPADDR=192.168.10.10 vim /etc/sysconfig/network-scripts/ifcfg-ens224.20 IPADDR=192.168.20.10 vim /etc/sysconfig/network-scripts/ifcfg-ens224.30 IPADDR=192.168.30.10 1.2 重启网卡 systemctl restart network ip a 查看网卡信息

ping命令检测,主机是否连通,例:[root@compute ~]# ping 192.168.20.10

1.3 compute新添加硬盘分区初始化 fdisk -l pvcreate /dev/sdb vgcreate cinder-volumes /dev/sdb 【deploy上操作以下内容,部署节点服务器】 2、准备部署

2.1 安装依赖关系

yum install -y epel-release yum install -y python-pip pip install -U pip yum install python-devel libffi-devel gcc openssl-devel libselinux-python

2.2 安装部署工具【ansible、kolla-ansible】

yum install ansible pip install kolla-ansible

2.3 将globals.yml和passwords.yml复制到/etc/kolla目录

cp -r /usr/share/kolla-ansible/etc_examples/kolla /etc/kolla/

2.4 将all-in-one和multinode库存文件复制到当前目录。

cp /usr/share/kolla-ansible/ansible/inventory/* . 3、下载kolla源码

若没有git命令,手动安装yum install -y git

3.1 获取Kolla和Kolla-Ansible存储库

git clone https://github.com/openstack/kolla git clone https://github.com/openstack/kolla-ansible

3.2 Kolla-ansible在etc/kolla中保存配置文件(globals.yml和passwords.yml)将配置文件复制到/etc/kolla目录

cp -r kolla-ansible/etc/kolla /etc/kolla/

3.3 Kolla-ansible将库存文件(all-in-one和multinode)保存在ansible / inventory中。 现将清单文件复制到当前目录

cp kolla-ansible/ansible/inventory/* . 4、准备部署

4.1 部署中使用的密码存储在/etc/kolla/passwords.yml文件中。通过运行下面命令生成随机密码:

kolla-genpwd

初始化之后,可手动更改keystone_admin_password密码(OpenStack登录密码)

vim /etc/kolla/passwords.yml keystone_admin_password:admin

4.2 配置multinode文件

[control] 10.24.3.12 ansible_user=root ansible_password=1234 ansible_become=true [network] 10.24.3.12 ansible_user=root ansible_password=1234 ansible_become=true [external-compute] 10.24.3.11 ansible_user=root ansible_password=1234 ansible_become=true [monitoring] 10.24.3.12 ansible_user=root ansible_password=1234 ansible_become=true [storage] 10.24.3.11 ansible_user=root ansible_password=1234 ansible_become=true [deployment] localhost ansible_connection=local

检测:确认inventory配置文件是否正确:

ansible -m ping all 结果: [root@deploy /]# ansible -m ping all 10.24.3.11 | SUCCESS => { "changed": false, "ping": "pong" } 10.24.3.12 | SUCCESS => { "changed": false, "ping": "pong" }

4.3 编辑globals.yml配置文件

kolla_base_distro: "centos" # binary使用像apt或yum这样的软件仓库,source使用原始源代码归档,git存储库或本地源代码目录 kolla_install_type: "source" openstack_release: "queens" # 使用的版本 kolla_internal_vip_address: "192.168.10.120" # 内部VIP kolla_external_vip_address: "10.24.3.120" # 外部VIP network_interface: "ens224.10" kolla_external_vip_interface: "ens192" api_interface: "ens224.10" storage_interface: "ens224.20" cluster_interface: "ens224.20" tunnel_interface: "ens224.30" # 接口是活动的,没有IP地址。否则,实例将无法访问外部网络 neutron_external_interface: "ens256" enable_cinder: "yes" 5、开始部署 ''' 1、带有kolla的引导服务器部署依赖关系''' kolla-ansible -i ./multinode bootstrap-servers ''' 2、对主机执行预部署检查''' kolla-ansible -i ./multinode prechecks ''' 3、执行OpenStack部署''' kolla-ansible -i ./multinode deploy 6、使用OpenStack

6.1 OpenStack需要一个openrc文件,其中设置了admin用户的凭证。 要生成这个文件运行以下命令:

kolla-ansible post-deploy . /etc/kolla/admin-openrc.sh

6.2 安装基本的OpenStack CLI客户端:

pip install python-openstackclient python-glanceclient python-neutronclient

6.3 运行脚本创建示例网络,图像等

. /usr/share/kolla-ansible/init-runonce 打开浏览器输入10.24.3.120(外部VIP),用户admin ,密码admin 可登录openstack_dashboard,如图所示:   openstack_dashboard.png


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3