学分高考 IT技术

ansible部署openstack教程

发布时间: 2022-03-17 07:57:01

ansible部署openstack教程指南提供分步说明,以在裸机服务器或虚拟机上使用Kolla Ansible部署OpenStack。

推荐阅读

在运行Kolla-Ansible之前学习Ansible 和Docker的基础知识是有益的。

主机要求

主机必须满足以下最低要求:

2个网络接口

8GB主内存

40GB磁盘空间

有关支持的主机操作系统的详细信息,请参阅支持列表。

安装依赖

通常,在本节中使用系统软件包管理器的命令必须以root特权运行。

1.安装Python构建依赖项:

对于CentOS或RHEL 8,运行:

sudo dnf install -y python3-devel libffi-devel gcc openssl-devel python3-libselinuxsudo yum remove -y docker docker-common docker-selinux docker-enginesudo yum install -y yum-utils device-mapper-persistent-data lvm2 epel-releasewget -O /etc/yum.repos.d/docker-ce.repo https://repo.huaweicloud.com/docker-ce/linux/centos/docker-ce.reposudo yum install docker-ce -y


安装依赖


1.安装pip

对于CentOS或RHEL,运行:

sudo dnf install python3-pip -y

2.确保已安装最新版本的pip:

mkdir /root/.pipvim /root/.pip/pip.conf[global]index-url = https://mirrors.huaweicloud.com/repository/pypi/simpletrusted-host = mirrors.huaweicloud.comsudo pip3 install -U pip

3.安装Ansible。Kolla Ansible至少需要Ansible2.9并最多支持2.9。

对于CentOS或RHEL,运行:

pip3 install 'ansible<2.10'dnf install ansible -y

安装Kolla-ansible进行部署或评估

1.使用安装kolla-ansible及其依赖项pip。

sudo pip3 install kolla-ansible

2.创建/etc/kolla目录。

sudo mkdir -p /etc/kollasudo chown $USER:$USER /etc/kolla

3.复制globals.yml并passwords.yml到/etc/kolla目录。

请运行:

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

将文件复制all-in-one并multinode清点到当前目录。

请运行:

cp /usr/local/share/kolla-ansible/ansible/inventory/* .

为了获得最佳结果,应针对您的环境调整Ansible配置。例如,将以下选项添加到Ansible配置文件中 /etc/ansible/ansible.cfg:

[defaults]host_key_checking=Falsepipelining=Trueforks=100

准备初始配置


库存

下一步是准备我们的库存文件。库存是一个Ansible文件,我们在其中指定主机及其所属的组。我们可以使用它来定义节点角色和访问凭据。

克拉(Kolla)-Ansible配备all-in-one和清单文件。请编辑all-in-one清单:

1.编辑all-in-one环境的连接详细信息的第一部分

:1,$s/localhost/controller/:1,$s/ansible_connection=local//

Kolla密码

我们部署中使用的密码存储在/etc/kolla/passwords.yml 文件中。在此文件中,所有密码均为空白,必须手动填充或通过运行随机密码生成器来填充:

要进行部署或评估,请运行:

kolla-genpwd

要进行开发,请运行:

159 keystone_admin_password: MvzlnjVBKfZlgCRLfJ5R1xPIeC6kDtMzqh0hrB4w改为 keystone_admin_password: Huawei

克拉(Kolla)globals.yml

globals.yml是Kolla-Ansible的主要配置文件。部署Kolla-Ansible需要一些选项:

图片选项

用户必须指定将用于我们的部署的映像。在本指南中,将使用DockerHub提供的预构建映像。要了解有关构建机制的更多信息,请参阅构建容器映像。

Kolla在容器中提供了几种Linux发行版的选择:

  • CentOS的
  • Ubuntu
  • 德比安
  • RHEL

对于新手,我们建议使用CentOS 8或Ubuntu 20.04。

kolla_base_distro: "centos"

下一个“类型”的安装需要配置。选择是:

二进制的

使用apt或dnf之类的存储库

来源

使用原始源档案,git存储库或本地源目录

笔记

这仅影响OpenStack服务。基础设施服务始终是“二进制”的。

kolla_install_type: "binary"

联网

Kolla-Ansible需要设置一些联网选项。我们需要设置OpenStack使用的网络接口。

要设置的第一个接口是“ network_interface”。这是多个管理型网络的默认接口。

network_interface: "eth0"

所需的第二个接口专用于Neutron外部(或公共)网络,可以是VLAN或扁平的,取决于网络的创建方式。该接口应该是活动的,没有IP地址。如果没有,实例将无法访问外部网络。

neutron_external_interface: "eth1"

要了解有关网络配置的更多信息,请参阅 网络概述。

接下来,我们需要为管理流量提供浮动IP。此IP将通过keepalived进行管理以提供高可用性,并且应将其设置为 在连接到我们的管理网络中不使用的地址 network_interface。

kolla_internal_vip_address: "10.1.0.250"

启用其他服务

默认情况下,Kolla-Ansible提供一个裸计算套件,但是它确实提供了对大量其他服务的支持。要启用它们,请设置 enable_*为“是”。例如,要启用块存储服务:

enable_cinder: "yes"

Kolla现在支持许多OpenStack服务,其中有 可用服务的列表。有关服务配置的更多信息,请参考《 服务参考指南》。

多个全局文件

为了更精细地控制,globals.yml现在可以使用多个yml文件来启用主文件中的任何选项。只需globals.d在下面创建一个目录/etc/kolla/,并将所有相关*.yml文件放在其中。该kolla-ansible脚本将自动将所有它们添加为ansible-playbook 命令的参数。

例如,如果操作员希望在初始部署的后期而不启用现有globals.yml文件的情况下启用cinder及其所有选项,则是一个示例用例。这可以通过使用单独的cinder.yml文件放置在/etc/kolla/globals.d/ 目录下并在其中添加所有相关选项来实现。

虚拟环境

建议使用虚拟环境在远程主机上执行任务。这涵盖了 虚拟环境。

部署

设置完成后,我们可以进入部署阶段。首先,我们需要设置基本的主机级别依赖关系,例如docker。

Kolla-Ansible提供了一个剧本,它将以正确的版本安装所有必需的服务。

以下假定使用multinode清单。如果使用其他库存(例如)all-in-one,请相应替换-i参数。

要进行部署或评估,请运行:

具有kolla的Bootstrap服务器部署依赖项:

kolla-ansible -i ./multinode bootstrap-servers

对主机进行部署前检查:

kolla-ansible -i ./multinode prechecks

最后,继续进行实际的OpenStack部署:

kolla-ansible -i ./multinode deploy

当这本剧本结束时,OpenStack应该已经启动,正在运行并且可以正常运行!如果在执行过程中发生错误,请参阅《 故障排除指南》。

使用OpenStack的


安装OpenStack CLI客户端:

pip3 install python3-openstackclient

OpenStack需要一个openrc文件,在该文件中设置了管理员用户的凭据。要生成此文件:

要进行部署或评估,请运行:

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

根据您安装Kolla-Ansible的方式,有一个脚本可以创建示例网络,图像等。

对于部署或评估,请运行init-runonce脚本:

/usr/local/share/kolla-ansible/init-runonce
温馨提示:
本文【ansible部署openstack教程】由作者教培参考提供。该文观点仅代表作者本人,学分高考系信息发布平台,仅提供信息存储空间服务,若存在侵权问题,请及时联系管理员或作者进行删除。
我们采用的作品包括内容和图片部分来源于网络用户投稿,我们不确定投稿用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的权利,请联系我站将及时删除。
内容侵权、违法和不良信息举报
Copyright @ 2024 学分高考 All Rights Reserved 版权所有. 湘ICP备17021685号