kolla-ansible部署Yoga版OpenStack

1. 准备工作

1.1 安装Centos Stream 8系统,最小化安装即可(所有节点)

[root@kollatest ~]# cat /etc/centos-release

CentOS Stream release 8

业务:192.168.1.0/24

管理:192.168.10.0/24(私网)

存储:192.168.100.0/24(私网)

三种网卡做bond

1.2 添加yum源(所有节点)

[root@kollatest ~]# sudo curl -o /etc/yum.repos.d/CentOS-Aliyun.repo http://mirrors.aliyun.com/repo/Centos-8.repo

1.3 安装一些基础的包(所有节点)

[root@kollatest ~]# dnf install -y git python3-devel libffi-devel gcc openssl-devel python3-libselinux chrony

#配置时间同步服务

[root@kollatest ~]# systemctl restart chronyd && systemctl enable chronyd

1.4 关闭防火墙、设置selinux(所有节点)

[root@kollatest ~]# systemctl disable firewalld && systemctl stop firewalld

[root@kollatest ~]# sed -i '7s/enforcing/disabled/g' /etc/selinux/config

[root@kollatest ~]# setenforce 0

[root@kollatest ~]# getenforce

Permissive

1.5 重启机器(所有节点)

[root@kollatest ~]# reboot

[root@kollatest ~]# getenforce

Disabled

1.6 设置host(所有节点)

[root@kollatest ~]# cat >> /etc/hosts <<-'EOF'

192.168.10.100  kolla100

……

EOF

1.7 设置免密登陆(部署节点)

[root@kollatest ~]# ssh-keygen

[root@kollatest ~]# ssh-copy-id -i .ssh/id_rsa.pub root@kolla100

…………

2. 系统基本配置

2.1 安装Python3-pip(所有节点)

2.1.1 配置pip源

[root@kollatest ~]# mkdir ~/.pip && touch  ~/.pip/pip.conf

[root@kollatest ~]# cat > .pip/pip.conf <<EOF

[global]
index-url = Simple Index
[install]
trusted-host=mirrors.aliyun.com

EOF

2.1.2 升级pip3

[root@kollatest ~]# pip3 install -U pip

2.2 安装docke-ce(所有节点)

#安装docker-ce,不是docker

[root@kollatest ~]# dnf install -y docker-ce

#安装Python3 docker插件(必须安装,可以不设置版本,部署时会自动下载合适版本)

[root@kollatest ~]# pip3 install docker==4.4.4

2.3 配置docker镜像的源(所有节点)

[root@kollatest ~]# mkdir -p /etc/docker && touch /etc/docker/daemon.json        

[root@kollatest ~]# cat > /etc/docker/daemon.json <<EOF

{

"registry-mirrors": ["https://1g8n1i3h.mirror.aliyuncs.com"],

   "bip": "193.168.0.1/24"

}

EOF

2.4 启动docker服务(所有节点)

[root@kollatest ~]# systemctl daemon-reload && systemctl restart docker && systemctl enable docker

3. 安装kolla、ansible(部署节点)

3.1 安装ansible(部署节点)

[root@kollatest ~]# pip3 install 'ansible>=4,<6'

# 调优ansible

mkdir /etc/ansible/

cat > /etc/ansible/ansible.cfg << EOF

[defaults]

host_key_checking=False

pipelining=True

forks=100

EOF

3.3 安装kolla-ansible(部署节点)

3.2.1 先安装pbr

[root@kollatest ~]# pip3 install pbr

3.2.2 开始安装kolla-ansible,要带上--ignore-installed PyYAML,否则可能会报错

[root@kollatest ~]# pip3 install kolla-ansible==14.8.0

3.2.3 创建kolla的文件夹,后续部署的时候很多openstack的配置文件都会在这

[root@kollatest ~]# mkdir -p /etc/kolla

[root@kollatest ~]# chown $USER:$USER /etc/kolla

3.2.4 复制ansible的部署配置文件all-in-one和multinode到当前目录

[root@kollatest ~]# cp /usr/local/share/kolla-ansible/ansible/inventory/* /home

3.2.5 负责gloable.ymlpassword.yml到目录/etc/kolla

[root@kollatest ~]# cp -r /usr/local/share/kolla-ansible/etc_examples/kolla/* /etc/kolla

3.2.6 安装 Ansible Galaxy

[root@kollatest ~]# kolla-ansible install-deps

3.3 配置文件修改(部署节点)

3.3.1 生成password.yml的密码,所有openstack组件的密码自动创建,后续组件都会使用此密码文件

[root@kollatest ~]# kolla-genpwd

3.3.2 globals.yml设置

[root@kollatest config]# cat /etc/kolla/globals.yml |grep -v ^$ |grep -v ^#

---

kolla_install_type: "source"

openstack_release: "yoga"

kolla_internal_vip_address: "192.168.10.254"

kolla_external_vip_address: "192.168.1.254"

docker_registry: "docker.io"

enable_docker_repo: "no"

docker_namespace: "kolla"

network_interface: "bond1.10"

kolla_external_vip_interface: "bond0.1"

storage_interface: "bond2.100"

neutron_external_interface: "bond0,bond1"

neutron_bridge_name: "br-office,br-sfc"

neutron_plugin_agent: "openvswitch"

keepalived_virtual_router_id: "254"

openstack_region_name: "Kolla-Yoga"

enable_haproxy: "yes"

enable_central_logging: "yes"

enable_cinder: "yes"

enable_grafana: "yes"

enable_mariabackup: "yes"

enable_neutron_qos: "yes"

enable_neutron_provider_networks: "yes"

enable_prometheus: "yes"

ceph_nova_keyring: "{{ ceph_cinder_keyring }}"

ceph_nova_user: "cinder"

ceph_nova_pool_name: "vms"

glance_backend_ceph: "yes"

cinder_backend_ceph: "yes"

nova_backend_ceph: "yes"

enable_prometheus_node_exporter: "no"

3.3.4 修改passwords.yml

[root@kollatest ~]# vi /etc/kolla/passwords.yml

keystone_admin_password: xxxxxx

4 部署OpenStack(部署节点)

开始进行部署,执行命令需要在ansible的all-in-one和multinode的文件所在目录执行,否则命令要修改下路径

4.1 检查依赖关系(部署节点)

[root@kollatest ~]# kolla-ansible -i /home/multinode bootstrap-servers

4.2 检查环境配置(部署节点)

[root@kollatest ~]# kolla-ansible -i /home/multinode prechecks

4.3 拉取openstack镜像(部署节点)

[root@kollatest ~]# kolla-ansible -i /home/multinode pull

4.4 部署(部署节点)

[root@kollatest ~]# kolla-ansible -i /home/multinode deploy

4.5 生成环境变量文件(部署节点)

openstack命令行客户端使用,post-deploy会在 /etc/kolla/目录下生成文件admin-openrc.sh

[root@kollatest ~]# kolla-ansible post-deploy

每次使用openstack命令时执行source /etc/kolla/admin-openrc.sh(manager节点执行)

source /etc/kolla/admin-openrc.sh   (将文件内容复制到/etc/profile中,即可一直生效)

4.6 安装openstack客户端(部署节点)

[root@kollatest ~]# pip install python-openstackclient

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

灰羽翎

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值