15.6. 运行动态清单脚本
您可以在 Red Hat OpenStack Platform (RHOSP)环境中运行基于 Ansible 的自动化。使用位于 /home/stack/overcloud-deploy/<stack> 目录中的
清单文件来运行 ansible play 或临时命令。
tripleo-
ansible-inventory.yaml
如果要在 undercloud 上运行 Ansible playbook 或 Ansible 临时命令,则必须使用 /home/stack/tripleo-deploy/undercloud/tripleo-ansible-inventory.yaml
清单文件。
流程
要查看节点清单,请运行以下命令:
(undercloud) [stack@undercloud ~]$ ansible -i ./overcloud-deploy/overcloud/tripleo-ansible-inventory.yaml all --list
要在您的环境中执行 Ansible playbook,请运行
ansible
命令,并使用-i
选项包含清单文件的完整路径。例如:(undercloud) $ ansible <hosts> -i ./overcloud-deploy/tripleo-ansible-inventory.yaml <playbook> <options>
将 <
;hosts> 替换为您要使用的主机类型:-
controller
,适用于所有 Controller 节点 -
compute
,适用于所有 Compute 节点 -
overcloud
,适用于所有 overcloud 子节点。例如,controller
和compute
节点 -
"*"
,适用于所有节点
-
将 &
lt;options&
gt; 替换为额外的 Ansible 选项。-
使用
--ssh-extra-args='-o StrictHostKeyChecking=no'
选项跳过主机密钥检查确认操作。 -
使用
-u [USER]
选项更改执行 Ansible 自动化的 SSH 用户。默认的 overcloud SSH 用户由动态清单中的ansible_ssh_user
参数自动定义。-u
选项会覆盖此参数。 -
使用
-m [MODULE]
选项使用特定的 Ansible 模块。默认为command
,用于执行 Linux 命令。 -
使用
-a [MODULE_ARGS]
选项为选定的模块定义参数。
-
使用
overcloud 上的自定义 Ansible 自动化不是标准 overcloud 堆栈的一部分。后续执行 openstack overcloud deploy
命令可能会覆盖 overcloud 节点上的 OpenStack Platform 服务的基于 Ansible 的配置。