Automation hub 入门
将 Red Hat Automation Hub 配置为 Ansible 集合内容的默认服务器
saas-docs@redhat.com摘要
前言
Red Hat Ansible Automation Hub 为红帽订阅的用户提供了一个途径,以便快速找到并使用红帽及我们的技术合作伙伴支持的内容,以便为最需要的环境提供额外的保证。
Ansible Galaxy 客户端 ansible-galaxy 从命令行管理角色和集合。为确保 ansible-galaxy 客户端尽可能使用经过认证且受支持的 Ansible 集合,请更新 ansible.cfg 文件,以使用 Red Hat Automation Hub 作为 Ansible 集合的主要源。
本指南指导您执行将 ansible.cfg 文件配置为使用 Red Hat Automation Hub 作为认证 Ansible 集合内容的默认源所需的步骤。
使开源包含更多
红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。我们从这四个术语开始:master、slave、黑名单和白名单。由于此项工作十分艰巨,这些更改将在即将推出的几个发行版本中逐步实施。有关更多详情,请参阅我们的首席技术官 Chris Wright 提供的消息。
对红帽文档提供反馈
我们非常感谢您对我们的技术内容提供反馈,并鼓励您告诉我们您的想法。如果您想添加评论,提供见解、纠正拼写错误甚至询问问题,您可以在文档中直接这样做。
您必须有一个红帽帐户并登录到客户门户网站。
要从客户门户网站提交文档反馈,请执行以下操作:
- 选择 Multi-page HTML 格式。
- 点文档右上角的 反馈 按钮。
- 突出显示您要提供反馈的文本部分。
- 点高亮文本旁的添加反馈对话框。
- 在页面右侧的文本框中输入您的反馈,然后点 Submit。
每次提交反馈时,我们都会自动创建跟踪问题。打开在点 Submit 后显示的链接,并开始监视问题或添加更多注释。
第 1 章 创建 Red Hat Automation hub API 令牌
在通过上传或下载集合与自动化中心交互前,您必须创建 API 令牌。Automation hub API 令牌将您的 ansible-galaxy 客户端与 Red Hat Automation Hub 服务器进行身份验证。
您可以使用自动化中心(PAH)中的自动化中心或 API 令牌管理 中的自动化中心令牌 管理 创建 API 令牌。
1.1. 创建 Red Hat Automation hub API 令牌
在通过上传或下载集合与 Automation Hub 交互前,您需要创建 API 令牌。Automation hub API 令牌将您的 ansible-galaxy 客户端与 Red Hat Automation Hub 服务器进行身份验证。
您可以使用自动化中心令牌 管理创建 API 令牌。
先决条件
- Red Hat Ansible Automation Platform 的有效订阅凭证。
流程
- 导航到 Red Hat Hybrid Cloud Console。
- 选择 Automation Hub → Connect to Hub
- 在 离线令牌 下,点 Load Token。
- 点 copy 图标将 API 令牌复制到剪贴板。
- 将 API 令牌粘贴到文件中,并存储在安全位置。
API 令牌是用于保护内容的 secret 令牌。将 API 令牌存储在安全位置。
API 令牌现在可用于将自动化中心配置为默认集合服务器,或使用 ansible-galaxy 命令行工具上传集合。
1.2. 在私有自动化中心中创建 API 令牌
您可以使用 PAH 中的 API 令牌管理创建 API 令牌。
先决条件
- Red Hat Ansible Automation Platform 的有效订阅凭证。
流程
- 进入您的 PAH。
- 从侧边栏,导航到 Collections → API Token Management。
- 单击 Load Token。
- 点复制图标将 API 令牌复制到剪贴板。
- 将 API 令牌粘贴到文件中,并存储在安全位置。
API 令牌是用于保护内容的 secret 令牌。将 API 令牌存储在安全位置。
API 令牌现在可用于将自动化中心配置为默认集合服务器,或使用 ansible-galaxy 命令行工具上传集合。
1.3. 保持离线令牌处于活跃状态
当应用程序需要代表用户执行操作时,即使用户离线,则保持离线令牌处于活跃状态时很有用。例如,常规数据备份。
离线令牌在 30 天不活动后过期。您可以通过刷新离线令牌来保持离线令牌。
离线令牌过期后,您必须请求一个新令牌。
定期运行以下命令防止您的令牌过期:
curl https://sso.redhat.com/auth/realms/redhat-external/protocol/openid-connect/token -d grant_type=refresh_token -d client_id="cloud-services" -d refresh_token="{{ user_token }}" --fail --silent --show-error --output /dev/null第 2 章 将 Red Hat Automation Hub 配置为内容的主要来源
将 Red Hat Automation Hub 配置为访问 Ansible 认证内容集合的主要内容源。您可以在命令行界面(CLI)或 Web 控制台中配置自动化中心。
2.1. 使用 CLI 将 Red Hat Automation Hub 配置为内容的主要源
使用 CLI 将 Red Hat Automation Hub 配置为您的内容主要来源。要配置自动化中心,您必须修改 ansible.cfg 配置文件。使用自动化中心,您可以访问经过认证且受支持的集合。
先决条件
- 您已获取 Automation Hub 服务器的 API 令牌。如需更多信息 ,请参阅创建 Red Hat Automation hub API 令牌。
Creating a new token revokes any previous tokens generated for Private Automation Hub. Ensure that you update any Controller or scripts that you created with the previous token.
流程
-
在
[galaxy]部分下添加server_list选项,并提供一个或多个服务器名称。 为每个服务器名称创建一个新部分:
[galaxy_server._<server_name>_]
为每个服务器名称设置
url选项。您必须在服务器 URL 中包含api/galaxy/子目录:https://<server_fully_qualified_domain_name>/api/galaxy/-
可选:设置
auth_url选项。社区 Ansible Galaxy 不需要auth_url。 - 为 Automation Hub 服务器设置 API 令牌。
以下 ansible.cfg 配置文件示例演示了如何按优先顺序配置多个服务器,自动化中心配置为您的主源,Ansible Galaxy 服务器作为辅助源:
ansible.cfg
[galaxy] server_list = automation_hub, my_org_hub [galaxy_server.automation_hub] url=https://cloud.redhat.com/api/automation-hub/api/galaxy/ 1 2 auth_url=https://sso.redhat.com/auth/realms/redhat-external/protocol/openid-connect/token token=my_ah_token [galaxy_server.my_org_hub] url=https://automation.my_org/api/galaxy/ 3 username=my_user password=my_pass
所有 API URL 必须以斜杠 / 结尾,以防止收到 301 重定向。
现在,您已使用 CLI 将 Automation Hub 配置为主服务器,并可继续下载并安装支持的集合。
其他资源
有关服务器列表配置选项以及使用 Ansible Galaxy 作为 Ansible 内容源的更多信息,请参阅 Ansible Galaxy 用户指南。
2.2. 使用 Web 控制台将 Red Hat Automation Hub 配置为内容的主要源
使用 Web 控制台将 Red Hat Automation Hub 配置为您的内容主要来源。要配置自动化中心,您必须创建一个凭证并将其添加到机构的 Galaxy Credentials 字段中。使用自动化中心,您可以访问经过认证且受支持的集合。
先决条件
- 您已获取 Automation Hub 服务器的 API 令牌。如需更多信息 ,请参阅创建 Red Hat Automation hub API 令牌。
Creating a new token revokes any previous tokens generated for Private Automation Hub. Ensure that you update any Controller or scripts that you created with the previous token.
流程
- 进入 Automation Controller。
创建新凭据。
- 从 Credentials 屏幕中点 Add。
- 在 Name 字段中输入新凭证的名称。
- 可选:输入描述并输入或选择与凭证关联的机构名称。
- 在 Organization 下,选择您要使用凭据的组织。
- 选择 Ansible Galaxy/Automation Hub API Token 作为凭证类型。
- 在 Type Details 下,输入在先决条件中创建的 Galaxy 服务器 URL、身份验证服务器 URL 和 API Token。
- 点击 Save。
从机构的 Galaxy Credentials 字段中选择您创建的凭证。
- 导航到 Access → Organizations。
- 选择您要在其中添加 Galaxy 凭据的组织。
- 点 Edit。
- 在 Galaxy Credentials 下,点 搜索 图标。
- 选择您为自动化中心创建的凭证,并将其放在列表的开头。
- 可选:如果您有辅助内容源,如 Ansible Galaxy,请在您为自动化中心创建的凭证后放置此凭证。
- 点 Select。
- 点击 Save。
验证
要验证凭据,请选择项目并单击 Refresh 图标来更新基于现有的源控制管理(SCM)项目。
- 导航到您的项目存储库。
-
选择一个使用
collections/requirements.yml文件的项目。 - 点刷新图标 [refresh icon] 来更新项目。
如果项目的状态为 Successful,则凭据有效。
现在,您已使用 Web 控制台将 Automation Hub 配置为主服务器,您可以继续下载并安装支持的集合。
其他资源
- 有关服务器列表配置选项以及使用 Ansible Galaxy 作为 Ansible 内容源的更多信息,请参阅 Ansible Galaxy 用户指南。
- 如需有关创建和使用凭证的更多信息,请参阅自动化控制器用户指南 v4.2.1 中的凭证部分。https://docs.ansible.com/automation-controller/4.2.1/html/userguide/credentials.html