第 8 章 关于安装程序清单文件
通过在 inventory 文件中定义主机、组和部署场景来配置 Ansible Automation Platform 安装。
通过使用清单文件,Ansible 可以通过单个命令管理大量主机,并减少您指定的命令行选项数量。
根据您拥有的清单插件,清单文件可以采用多种格式。最常见的格式是 ini 和 yaml。本文档中列出的清单文件以 i 格式显示。
清单文件的位置取决于您使用的安装程序。下表显示了可能的位置:
Ansible Automation Platform RPM 安装程序在 2.5 中已弃用,并将在 Ansible Automation Platform 2.7 中删除。在 Ansible Automation Platform 2.6 生命周期期间,RHEL 9 支持 RPM 安装程序,以支持迁移到现有的受支持拓扑。有关升级和迁移路径的更多信息,请参阅 升级场景的支持列表。
| 安装程序 | 位置 |
|---|---|
| RPM |
|
| RPM 捆绑包 tar |
|
| RPM 非捆绑包 tar |
|
| 容器捆绑包 tar |
|
| 容器非捆绑包 tar |
|
您可以使用以下命令验证清单中的主机:
ansible all -i <path-to-inventory-file. --list-hosts
清单文件示例
[automationcontroller]
controller.example.com
[automationhub]
automationhub.example.com
[automationedacontroller]
automationedacontroller.example.com
[automationgateway]
gateway.example.com
[database]
data.example.com
[all:vars]
admin_password='<password>'
pg_host=''
pg_port=''
pg_database='awx'
pg_username='awx'
pg_password='<password>'
registry_url='registry.redhat.io'
registry_username='<registry username>'
registry_password='<registry password>'
automationgateway_admin_password=""
automationgateway_pg_host=""
automationgateway_pg_database=""
automationgateway_pg_username=""
automationgateway_pg_password=""
清单文件的第一个部分指定 Ansible 可使用的主机或主机组。
有关 registry_username 和 registry_password 的更多信息,请参阅设置 registry_username 和 registry_password。
平台网关是处理 Ansible Automation Platform 身份验证和授权的服务。它在 Ansible Automation Platform 中提供了一个条目,并提供平台用户界面,以便您可以从一个位置验证并访问所有 Ansible Automation Platform 服务。
8.1. 主机和组指南 复制链接链接已复制到粘贴板!
按照以下步骤正确设置数据库、自动化中心、自动化控制器、Event-Driven Ansible 控制器和平台网关主机,用于可靠的 Ansible Automation Platform 安装。
数据库
-
使用外部数据库时,请确保正确设置清单文件的
[database]部分。 要提高性能,请不要在同一服务器上并置数据库和自动化控制器。
重要在 Ansible Automation Platform 中使用外部数据库时,您必须创建和维护该数据库。在卸载 Ansible Automation Platform 时,请确保清除外部数据库。
Automation hub
-
如果有
[automationhub]组,则必须包含变量automationhub_pg_host和automationhub_pg_port。 -
在
[automationhub]组中添加 Ansible Automation hub 信息。 - 不要在同一节点上安装 Ansible Automation hub 和自动化控制器。
为
[automationhub]和[automationcontroller]主机提供可访问的 IP 地址或完全限定域名(FQDN),以确保用户可以从不同节点同步并安装 Ansible 自动化中心和自动化控制器的内容。FQDN 不得包含
_符号,因为它不会在 Skopeo 中正确处理。您可以使用在主机名的开始或结尾提供的符号。不要使用
localhost。
私有自动化中心
- 不要在同一节点上安装私有自动化中心和自动化控制器。
- 您可以使用相同的 PostgreSQL (数据库)实例,但它们必须使用不同的(数据库)名称。
如果您从内部地址安装私有自动化中心,并且有一个只包括外部地址的证书,则可能会导致安装在没有证书问题的情况下作为容器 registry。
重要您必须分隔自动化控制器和 Ansible 自动化中心的安装,因为
[database]组无法区分这两个(如果同时安装了这两个组)。如果您在[database]和自动化控制器和 Ansible 自动化中心中使用一个值,则它们将使用相同的数据库。
自动化控制器
- 自动化控制器不会为它使用的数据库配置复制或故障转移。
- 自动化控制器可以与已有的任何复制一起工作。
event-Driven Ansible 控制器
- event-Driven Ansible 控制器必须安装在单独的服务器上,且不能安装到与自动化中心和自动化控制器相同的主机上。
平台网关
- 平台网关是处理 Ansible Automation Platform 身份验证和授权的服务。它为平台提供了一个条目,并提供平台用户界面。
集群安装
- 在升级现有集群时,您还可以重新配置集群来忽略现有的实例或实例组。从清单文件中省略实例或实例组不足以将其从集群中移除。除了从清单文件中省略实例或实例组外,还必须在开始升级前取消置备实例或实例组。如需更多信息,请参阅 取消置备节点或组。否则,忽略的实例或实例组会继续与集群通信,这可能会在升级过程中造成自动化控制器服务的问题。
如果要创建集群安装设置,则必须使用所有实例的主机名或 IP 地址替换
[localhost]。自动化控制器和自动化中心的安装程序不接受[localhost]所有节点,实例必须能够使用此主机名或地址访问任何其他节点。您不能在其中一个节点上使用 localhostansible_connection=local。对所有节点的主机名使用相同的格式。因此,这无法正常工作:
[automationhub] localhost ansible_connection=local hostA hostB.example.com 172.27.0.4需要使用以下格式:
[automationhub] hostA hostB hostC或者
[automationhub] hostA.example.com hostB.example.com hostC.example.com