在 Automation Assembler 中配置 Ansible Automation Platform/Ansible Tower 集成Last Updated February 5, 2025
Automation Assembler
中配置 Ansible Automation Platform/Ansible Tower 集成可以将 Ansible Automation Platform(以前称为 Ansible Tower)与
Automation Assembler
集成,以支持已部署资源的配置管理。配置集成后,可以从云模板编辑器将 Ansible Automation Platform 虚拟组件添加到新部署或现有部署中。 - 授予非管理员用户访问 Ansible Automation Platform 的适当权限。对于大多数配置,有两种适用方法。请选择最适合您配置的方法。
- 在组织级别为用户授予清单管理员和作业模板管理员角色。
- 为用户授予特定清单的管理员权限,以及用于置备的所有作业模板的执行角色。
- 您必须在 Ansible Automation Platform 中配置相应的凭据和模板,以与您的部署配合使用。模板可以是作业模板或工作流模板。作业模板定义用于部署的清单和 playbook。作业模板和 playbook 之间存在 1:1 映射。Playbook 使用类似 YAML 的语法来定义与模板关联的任务。对于大多数典型部署,请使用计算机凭据进行身份验证。工作流模板允许用户创建序列,这些序列包含作业模板、项目同步和清单同步的任意组合,并链接在一起以便您可以作为一个单元执行。Ansible Automation Platform 工作流可视化工具可帮助用户设计工作流模板。对于大多数典型部署,可以使用计算机凭据进行身份验证。如果使用 Ansible Automation Platform,则必须在 Ansible Controller 上定义执行环境以满足 ansible-runner 依赖关系。有关执行环境和容器映像的详细信息,请参见 Ansible 文档。特别是,请参阅 https://docs.ansible.com/automation-controller/4.2.0/html/userguide/execution_environments.html。
- 登录到 Ansible Automation Platform 并导航到“模板”部分。
- 选择“添加新作业”模板。
- 选择已创建的凭据。这些是将由 Ansible Automation Platform 管理的计算机的凭据。每个作业模板可以有一个凭据对象。
- 对于“限制”选择,选择“启动时提示”。这可确保作业模板针对正从Automation Assembler置备或取消置备的节点运行。如果未选择此选项,则在部署包含作业模板的蓝图时,将显示“未设置限制”错误。
- 选择“添加新工作流”模板。
- 选择已创建的凭据,然后定义清单。使用工作流可视化工具,设计工作流模板。
对于工作流模板或作业模板的“限制”框,通常会选择“启动时提示”。选择此选项可确保作业模板或工作流模板针对正从Automation Assembler置备或取消置备的节点运行。
- 您可以在 Ansible Tower 的“作业”选项卡上查看从Automation Assembler调用的作业模板或工作流模板的执行情况。
- 选择,然后单击添加集成。
- 单击 Ansible Tower。此时将显示 Ansible 配置页面。
- 输入主机名(可以是 IP 地址)以及 Ansible Automation Platform 实例的其他必填信息。
- 为适用的 Ansible Automation Platform 实例输入基于 UI 的身份验证用户名和密码。
- 单击验证以验证集成。
- 为集成键入适当的名称和描述。
- 单击添加。
Ansible Tower 可在云模板中使用。
将 Ansible Automation Platform 组件添加到所需云模板。必须为在集成帐户中指定的用户指定适用的作业模板和执行权限。
- 在云模板画布页面上,选择蓝图选项菜单上“配置管理”标题下的“Ansible”,然后将 Ansible Automation Platform 组件拖动到画布。
- 使用右侧面板配置适当的 Ansible Automation Platform 属性,例如作业模板。
将 Ansible Automation Platform 图标添加到云模板时,
VMware Aria Automation
会在 Ansible Automation Platform 中为连接的虚拟机创建主机条目。默认情况下,VMware Aria Automation
将使用虚拟机的资源名称创建主机条目,但可以使用蓝图 YAML 中的 hostName
属性指定任何名称。为了与计算机进行通信,VMware Aria Automation
将为主机条目创建 ansible_host: IP
Address
变量。可以覆盖默认行为,使用 FQDN 配置通信,具体方法为在 hostVariables
下指定关键字 ansible_host
,并提供 FQDN 作为其值。以下 YAML 代码片段显示了如何配置主机名和 FQDN 通信的示例:在此示例中,通过提供 FQDN 覆盖默认的
ansible_host
值。如果用户希望 Ansible Tower 使用 FQDN 连接到主机,此功能可能非常有用。YAML 中
hostVariables
的默认值为 ansible_host:IP_address
,并且 IP 地址用来与服务器通信。如果 Ansible Automation Platform 的 YAML 计数属性大于 1,则主机名可以映射到相应虚拟机的任何属性。以下示例显示了名为 Ubuntu-VM 的虚拟机资源的映射(如果要将其地址属性映射到主机名)。
将 Ansible Automation Platform 组件添加到云模板时,可以指定要在云模板 YAML 中调用的作业模板。此外,还可以指定工作流模板或作业模板和工作流模板的组合。如果未指定模板类型,则默认情况下,
VMware Aria Automation
会假定您将调用作业模板。以下 YAML 代码段显示了如何在 Ansible Tower 云模板中调用作业模板和工作流模板组合的示例。
我们添加了
maxConnectionsRetries
和 maxJobRetries
以处理 Ansible 相关故障。云模板接受自定义值,如果未提供值,则使用默认值。对于 maxConnectionRetries
,默认值为 10,对于 maxJobRetries
,默认值为 3。 早期版本的
VMware Aria Automation
仅支持在云模板中使用 jobTemplate 结构定义执行作业模板。jobTemplate 现已弃用,可能会在未来版本中移除。目前,使用 jobTemplate 属性将继续正常工作。要运行工作流模板并使用其他功能,建议使用模板结构定义。Ansible Automation Platform 集成的
Automation Assembler
模板包括 useDefaultLimit
属性,该属性具有 true 或 false 值,用于定义 Ansible 模板的执行位置。Ansible 模板可以是作业模板或工作流模板。如果该值设置为 true,则指定的模板将针对在 Ansible“模板”页面上的“限制”框中指定的计算机运行。如果该值设置为 false,则模板将针对已置备的计算机运行,但用户应选中 Ansible Automation Platform“模板”页面上的“启动时提示”复选框。默认情况下,此属性的值为 false。以下 YAML 示例展示了 useDefaultLimit
属性在云模板中的显示方式。此外,如上例所示,可以使用
extraVars
属性指定额外变量或调查变量。此功能对于运行需要输入的模板非常有用。如果用户保留了调查变量,则您必须在云模板的 extraVars
部分中传递该变量,以避免出现错误。具有云管理员特权的用户可以更改包含 Ansible 开源资源和 Ansible Automation Platform 资源的部署项目。该功能可作为部署级别的实施后操作使用。
要更改 Ansible 部署的项目,请从该部署的“操作”菜单中选择“更改项目”选项,如
Automation Assembler
的“部署”页面上所示,然后选择目标项目并在显示的对话框上单击提交
。虽然 Ansible Tower 集成不支持 groups 属性,但客户可以使用虚拟机标记和 VMware 清单插件实现等效功能,如以下文章中所述:https://docs.ansible.com/ansible/latest/collections/community/vmware/vmware_vm_inventory_inventory.html
用户必须进行两项更改才能使其正常运行:
- 在云模板中使用ansible_host(例如 FQDN)和hostName。
- 在 AWX 中,启用“启动时更新”标志;即,在运行 playbook 之前,同步到新主机的 vCenter。同步将合并由VMware Aria Automation添加并由 VMware 清单插件导入的 FQDN 主机条目,并将主机分配给组。将使用上述同步源变量根据虚拟机标记值创建清单组。
虽然 VMware 并不正式支持使用 AWX,但在本文所述的情况下,AWX 将起作用。
有关示例实施,请参见以下云模板。