第 1 章 在自动化中心中红帽认证的、经过验证的 Ansible Galaxy 内容


Ansible 认证的内容集合包括在订阅 Red Hat Ansible Automation Platform 中。使用 Ansible 自动化中心(Automation hub),您可以从所有形式的 Ansible 内容访问并策展一组唯一的集合。

Red Hat Ansible 内容包含两种类型的内容:

  • Ansible 认证的内容集合
  • Ansible 验证的内容集合

您可以使用 Ansible 认证内容集合或 Ansible 验证的内容集合来构建自动化库。如需有关 Ansible 认证内容集合和 Ansible 验证的内容集合之间的区别的更多信息,请参阅本指南中的 Ansible 认证内容集合和 Ansible 验证的内容或 Ansible 验证的内容

您可以通过下载其软件包来手动更新这些集合。

您可以通过创建一个要求文件,使用 Ansible Automation hub 将相关的 Red Hat Ansible 认证内容集合分发到您的用户。

在使用要求文件安装内容前,您必须:

使用远程配置配置您的私有自动化中心,使其与 console.redhat.com 上托管的 Ansible 认证内容集合或 Ansible Galaxy 中的集合同步。

位于 Automation Content Remotes 远程配置都为 communityrh-certified 存储库提供关于存储库 上次更新的时间 的信息。您可以使用Automation Repositories页面中包含的 EditSync 功能随时将新内容添加到 Ansible Automation hub 中。

Ansible Galaxy 和 Ansible 自动化中心之间的区别是什么?

发布到 Ansible Galaxy 的集合是 Ansible 社区发布的最新内容,没有与它们关联的联合支持声明。Ansible Galaxy 是 Ansible 社区访问内容的推荐前端目录。

向 Ansible Automation Hub 发布的集合面向红帽及所选合作伙伴的客户。客户需要 Ansible 订阅才能访问和下载 Ansible 自动化中心中的集合。认证集合意味着红帽与合作伙伴就位具有战略关系,随时支持共同客户,并且集合可能还会有额外的测试和验证。

如何在 Ansible Galaxy 上请求命名空间?

要通过 Ansible Galaxy GitHub 问题请求命名空间,请按照以下步骤执行:

您必须至少登录一次才能验证系统。

用户添加为命名空间的管理员后,您可以使用自助式进程添加更多管理员。

Ansible Galaxy 命名空间命名是否存在任何限制?

集合命名空间必须遵循 Python 模块名称规则。这意味着集合应具有简短的、由小写字符组成的名称。您可以在名称中使用下划线以提高它的可读性。

1.1.1. Automation Hub 中的令牌管理

在通过上传或下载集合与 Automation Hub 交互前,您需要创建 API 令牌。Automation Hub API 令牌将您的 ansible-galaxy 客户端与 Red Hat Automation Hub 服务器进行身份验证。

注意

Automation hub 不支持基本身份验证或通过服务帐户进行身份验证。您必须使用令牌管理进行身份验证。

创建 API 令牌的方法因所使用的自动化中心类型而异:

1.1.2. 在自动化 hub 中创建离线令牌

在自动化中心中,您可以使用 Token 管理 创建离线令牌。离线令牌是用来保护您的内容的 secret 令牌,因此请确保将其存储在安全的位置。

流程

  1. 进入 Red Hat Hybrid Cloud Console 上的 Ansible Automation Platform
  2. 在导航面板中,选择 Automation Hub Connect to Hub
  3. 离线令牌下,点 Load Token
  4. Copy to clipboard 图标复制离线令牌。
  5. 将 API 令牌粘贴到文件中,并存储在安全位置。

其他资源

您的离线令牌在 30 天不活跃后过期。有关获取新的离线令牌的更多信息,请参阅 保持离线令牌处于活动状态

后续步骤

离线令牌现在可用于将自动化中心配置为默认集合服务器,或使用 ansible-galaxy 命令行工具上传集合。

1.1.3. 在私有自动化中心中创建 API 令牌

在私有自动化中心中,您可以使用 API 令牌管理创建 API 令牌。API 令牌是用于保护内容的 secret 令牌,因此请确保将其存储在安全的位置。

API 令牌不会过期。

前提条件

  • Red Hat Ansible Automation Platform 的有效订阅凭证。

流程

  1. 登录到您的私有自动化中心。
  2. 在导航面板中,选择 Automation Content API token
  3. Load Token
  4. 要复制 API 令牌,请点 Copy to clipboard 图标。
  5. 将 API 令牌粘贴到文件中,并存储在安全位置。

后续步骤

API 令牌现在可用于将自动化中心配置为默认集合服务器,或使用 ansible-galaxy 命令行工具上传集合。

1.1.4. 保持离线令牌处于活跃状态

离线令牌在 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
    Copy to Clipboard Toggle word wrap

您可以编辑 rh-certified 远程存储库,将 console.redhat.com 上托管的自动化中心的集合同步到私有自动化中心。默认情况下,您的私有自动化中心 rh- certified 存储库包含整个 Ansible 认证内容集合组的 URL。

要只使用您的机构指定的集合,私有自动化中心管理员可以从 rh-certified remote 中手动创建要求文件。

如果您的要求文件中有集合 ABC,并且新的集合 X 被添加到要使用的 console.redhat.com 中,则必须将 X 添加到您的私有自动化中心要求文件中以同步它。

前提条件

  • 您有有效的修改 Ansible 仓库内容权限。有关权限的更多信息,请参阅 访问管理和身份验证
  • 您已从 console.redhat.com 上的自动化中心托管服务中检索 Sync URL 和 API Token。
  • 您已配置了端口 443 的访问权限。这是同步认证集合所必需的。如需更多信息,请参阅 规划安装 的网络端口和协议 部分中的自动化中心表。

流程

  1. 登录到您的 Ansible Automation Platform。
  2. 在导航面板中,选择 Automation Content Remotes
  3. rh-certified 远程存储库中,单击 Edit remote
  4. URL 字段中,粘贴 Sync URL
  5. Token 字段中,粘贴您从 console.redhat.com 获取的令牌。
  6. 单击 Save remote

结果

现在,您可以将集合从 console.redhat.com 同步到私有自动化中心。

您可以编辑 community 远程存储库,将所选集合从 Ansible Galaxy 同步到私有自动化中心。默认情况下,您的私有自动化中心 community 存储库定向到 galaxy.ansible.com/api/

先决条件

  • 您有修改 Ansible 存储库内容的权限。有关权限的更多信息,请参阅 访问管理和身份验证
  • 您有一个 requirements.yml 文件,用于标识要从 Ansible Galaxy 同步的集合,如下例所示:

    Requirements.yml 示例

    collections:
      # Install a collection from Ansible Galaxy.
      - name: community.aws
        version: 5.2.0
        source: https://galaxy.ansible.com
    Copy to Clipboard Toggle word wrap

流程

  1. 登录到 Ansible Automation Platform。
  2. 在导航面板中,选择 Automation Content Remotes
  3. Community remote 的 Details 选项卡中,点 Edit remote
  4. YAML requirements 字段中,粘贴 requirements.yml 文件的内容。
  5. 单击 Save remote

结果

现在,您可以将 requirements.yml 文件中标识的集合从 Ansible Galaxy 同步到私有自动化中心。

1.1.7. 配置代理设置

如果您的私有自动化中心位于网络代理后面,您可以在远程上配置代理设置,以同步位于本地网络之外的内容。

前提条件

  • 您有有效的修改 Ansible 仓库内容权限。有关权限的更多信息,请参阅 访问管理和身份验证
  • 您有一个来自本地网络管理员的代理 URL 和凭证。

流程

  1. 登录到 Ansible Automation Platform。
  2. 在导航面板中,选择 Automation Content Remotes
  3. rh-certifiedCommunity remote 中,点 More Actions 图标 appears 并选择 Edit remote
  4. 展开 Show advanced options 下拉菜单。
  5. 在适当的字段中输入代理 URL、代理用户名和代理密码。
  6. 单击 Save remote

1.1.8. 创建要求文件

使用要求文件将集合添加到自动化中心。要求文件采用 YAML 格式,列出要在自动化中心中安装的集合。

标准 requirements.yml 文件包含以下参数:

  • Name :格式为 < namespace>.<collection_name&gt; 的集合的名称
  • 版本: 集合版本号

流程

  • 创建您的要求文件。

    在 YAML 格式中,您的要求文件中的集合信息应类似如下:

    collections:
     name: namespace.collection_name
     version: 1.0.0
    Copy to Clipboard Toggle word wrap

确保指定集合版本号,否则您将同步所有集合版本。同步所有版本可能需要比预期更多的空间。

后续步骤

要同步要求文件中的集合,请按照 同步 Ansible 内容集合 中的步骤操作。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat