通过 Kolla Ansible 安装¶
注意
本安装指南解释了 Tacker。其他组件,例如 nova 或 neutron,不在此涵盖。
注意
本安装指南的内容特定于 Redhat 发行版。
请参考 安装依赖 的 Kolla Ansible 安装 [1],以设置 Kolla Ansible 使用的 docker 环境。
通过 Kolla Ansible 安装,Kolla Ansible 的版本应与目标 Tacker 系统保持一致。例如,Kolla Ansible 的 stable/ussuri 分支应与 Tacker 的 stable/ussuri 分支一起安装。这里将使用 stable/ussuri 分支版本来演示如何使用 Kolla Ansible 安装 Tacker。
Kolla 可用于安装多节点系统,但 Tacker 服务器尚未准备好多节点部署,因此本文档仅安装一个 all-in-one Tacker。
安装 Kolla Ansible¶
获取 Kolla Ansible 的 stable/ussuri 版本
$ git clone https://github.com/openstack/kolla-ansible.git -b stable/ussuri $ cd kolla-ansible $ sudo dnf install python3-devel libffi-devel gcc openssl-devel python3-libselinux $ sudo pip3 install -r requirements.txt $ sudo python3 setup.py install
如果所需的版本已在 pypi 站点 ‘https://pypi.ac.cn/project/kolla-ansible’ 上发布,则可以使用以下命令
$ sudo pip install "kolla-ansible==5.0.0"
安装依赖
$ sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo $ sudo dnf install https://download.docker.com/linux/centos/7/x86_64/stable/Packages/containerd.io-1.2.6-3.3.el7.x86_64.rpm $ sudo dnf install docker-ce docker-ce-cli $ sudo systemctl enable docker $ sudo systemctl restart docker $ sudo pip3 install 'ansible<2.10' $ sudo pip3 install docker
注意
在 CentOS 8 上安装 docker-ce 官方不支持。
安装 Tacker¶
编辑 Kolla Ansible 的配置文件
/etc/kolla/globals.yml--- kolla_install_type: "source" # openstack_release can be determined by version of kolla-ansible tool. # But if needed, it can be specified. #openstack_release: 5.0.0 kolla_internal_vip_address: <one IP address of local nic interface> # The Public address used to communicate with OpenStack as set in the # public_url for the endpoints that will be created. This DNS name # should map to kolla_external_vip_address. #kolla_external_fqdn: "{{ kolla_external_vip_address }}" # define your own registry if needed #docker_registry: "127.0.0.1:4000" # If needed OpenStack kolla images are published, docker_namespace should be # kolla docker_namespace: "kolla" #docker_namespace: "gongysh" enable_glance: "no" enable_haproxy: "no" enable_keystone: "yes" enable_mariadb: "yes" enable_memcached: "yes" enable_neutron: "no" enable_nova: "no" enable_barbican: "yes" enable_tacker: "yes" enable_heat: "no" enable_openvswitch: "no" enable_horizon: "yes" enable_horizon_tacker: "{{ enable_tacker | bool }}"
注意
要确定 kolla-ansible 的版本,可以使用以下命令行
$ python -c \ "import pbr.version; print(pbr.version.VersionInfo('kolla-ansible'))"
运行 kolla-genpwd 以生成系统密码
$ sudo cp etc/kolla/passwords.yml /etc/kolla/passwords.yml $ sudo kolla-genpwd
注意
如果使用 pypi 版本安装 kolla-ansible,则骨架密码文件可能位于
/usr/share/kolla-ansible/etc_examples/kolla。使用此命令,
/etc/kolla/passwords.yml将填充生成的密码。运行 Kolla Ansible 部署以安装 tacker 系统
$ sudo kolla-ansible deploy
运行 Kolla Ansible 后部署以生成 tacker 访问环境文件
$ sudo kolla-ansible post-deploy
使用此命令,
admin-openrc.sh将在/etc/kolla/admin-openrc.sh处生成。检查相关容器是否已启动并正在运行
Tacker 系统由一些容器组成。以下是一个示例输出。fluentd、cron 和 kolla_toolbox 容器来自 kolla,请参阅 Kolla Ansible 文档以了解其用法。其他来自 Tacker 系统组件。
$ sudo docker ps --format "table {{.ID}}\t{{.Image}}\t{{.Names}}" CONTAINER ID IMAGE NAMES 756adb8d787f kolla/centos-source-tacker-server:ussuri tacker_server 000320a1c76f kolla/centos-source-tacker-conductor:ussuri tacker_conductor 11b5ccf91d86 kolla/centos-source-barbican-worker:ussuri barbican_worker 4a5224d14f36 kolla/centos-source-barbican-keystone-listener:ussuri barbican_keystone_listener a169e7aed0b6 kolla/centos-source-barbican-api:ussuri barbican_api 07ecaad80542 kolla/centos-source-horizon:ussuri horizon 7e6ac94ea505 kolla/centos-source-keystone:ussuri keystone 2b16b169ed18 kolla/centos-source-keystone-fernet:ussuri keystone_fernet ec80b37da07b kolla/centos-source-keystone-ssh:ussuri keystone_ssh 3e3d5c976921 kolla/centos-source-rabbitmq:ussuri rabbitmq 24196bca6652 kolla/centos-source-memcached:ussuri memcached 73f9873b1eac kolla/centos-source-mariadb-clustercheck:ussuri mariadb_clustercheck ceb67bd5418d kolla/centos-source-mariadb:ussuri mariadb b82404a0400e kolla/centos-source-chrony:ussuri chrony f70ab08ea36d kolla/centos-source-cron:ussuri cron 5bbe7eee05d4 kolla/centos-source-kolla-toolbox:ussuri kolla_toolbox be73c1b5fdca kolla/centos-source-fluentd:ussuri fluentd
安装 tacker 客户端
$ sudo pip3 install python-tackerclient $ sudo pip3 install python-openstackclient
检查 Tacker 服务器是否运行良好
$ sudo cat /etc/kolla/admin-openrc.sh > /tmp/admin-openrc.sh $ . /tmp/admin-openrc.sh $ openstack vim list