3.3. 填充私有自动化中(automation hub)容器 registry


默认情况下,私有自动化中心不包括自动化执行环境。要填充容器 registry,您必须将执行环境推送到其中。

您必须遵循特定的工作流来填充私有自动化中心远程 registry:

  • 从红帽生态系统目录(registry.redhat.io)拉取自动化执行环境
  • 标记它们
  • 将其推送到私有自动化中心远程 registry
重要

最初,镜像清单和文件系统 Blob 都直接由 registry.redhat.ioregistry.access.redhat.com 提供。从 2023 年 5 月 1 日起,文件系统 Blob 由 quay.io 提供。

  • 确保 Table 5.4 中列出的 网络端口和协议。执行环境(EE) 可用于避免拉取容器镜像的问题。

对任何特别启用到 registry.redhat.ioregistry.access.redhat.com 的出站连接进行此更改。

在配置防火墙规则时使用主机名而不是 IP 地址。

完成此更改后,您可以继续从 registry.redhat.ioregistry.access.redhat.com 拉取执行环境。您不需要 quay.io 登录,或以任何方式直接与 quay.io registry 交互,以继续拉取红帽容器镜像。

但是,在基于 Web 的 Red Hat Subscription Management 上,清单(有时称为"订阅分配)"不再受支持(在 Red Hat Satellite 6.16 发布前)。对于 Red Hat Satellite 6.16 的发行日期,保持最新的 Red Hat Satellite 发行日期。

3.3.1. 拉取在自动化中心中使用的执行环境

在将执行环境推送到私有自动化中心之前,您必须首先从现有 registry 中拉取它们并标记它们以供使用。以下示例详细介绍了如何从红帽生态系统目录(registry.redhat.io)拉取执行环境。

重要

从 2024 年初期,红帽不再支持 Red Hat Subscription Management Web 平台上的清单或清单列表,这些列表与"订阅分配"互换使用。红帽不再支持 Red Hat Satellite 中的大多数清单功能,但有一个例外:在 Red Hat Satellite 6.16 发布之前,Red Hat Satellite 用户处于封闭的网络或"air gapped"网络,目前仍然可以使用 access.redhat.com

新的红帽帐户自动为其订阅工具使用简单内容访问。新的红帽帐户和可以连接到红帽服务器的现有 Satellite 客户可以在 console.redhat.com 上找到其清单。

先决条件

  • 有从 registry.redhat.io 中拉取自动化执行环境的权限。
  • 启用简单内容访问的红帽帐户。

流程

  1. 如果需要访问容器镜像的清单,请登录 红帽控制台
  2. 点自动化执行环境所需的清单的三ot菜单,然后点 Export manifest
  3. 使用您的 registry.redhat.io 凭证登录到 Podman:

    $ podman login registry.redhat.io
  4. 输入您的用户名和密码。
  5. 拉取执行环境:

    $ podman pull registry.redhat.io/<ee_name>:<tag>

验证

要验证您最近拉取的执行环境是否包含在列表中,请执行以下步骤:

  1. 列出本地存储中的镜像:

    $ podman images
  2. 检查执行环境名称,并验证该标签是否正确。

其他资源

3.3.2. 标记在自动化中心中使用的执行环境

从 registry 中拉取执行环境后,标记它们以便在私有自动化中心远程 registry 中使用。

前提条件

  • 您已从外部 registry 拉取执行环境。
  • 有自动化中心实例的 FQDN 或 IP 地址。

流程

  • 使用自动化中心容器存储库标记本地执行环境:

    $ podman tag registry.redhat.io/<ee_name>:<tag> <automation_hub_hostname>/<ee_name>

验证

  1. 列出本地存储中的镜像:

    $ podman images
  2. 验证您最近使用自动化中心信息标记的执行环境是否包含在列表中。

3.3.3. 将执行环境推送到私有自动化中心

您可以将标记的执行环境推送到私有自动化中心,以创建新容器并填充远程 registry。

前提条件

  • 有创建新容器的权限。
  • 有自动化中心实例的 FQDN 或 IP 地址。

流程

  1. 使用您的自动化中心位置和凭证登录到 Podman:

    $ podman login -u=<username> -p=<password> <automation_hub_url>
    警告

    当您登录时,让 Podman 提示您输入密码。使用您的用户名同时输入密码,可以将您的密码公开给 shell 历史记录。

  2. 将执行环境推送到自动化中心远程 registry:

    $ podman push <automation_hub_url>/<ee_name>

故障排除

push 操作会在上传期间重新编译镜像层,无法保证可重复生成,依赖于客户端实施。这可能会导致镜像层摘要的变化,并导致推送操作失败,Error: Copying this image requires changing layer representation, which is not possible (image is signed or the destination specifies a digest)

验证

  1. 登录到您的 Ansible Automation Platform。
  2. 导航到 Automation Content Execution Environments
  3. 在 container 存储库列表中找到容器。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.