1.3.5.21. 在跨架构创建集群时,需要手动创建的发行镜像

要在与 hub 集群架构不同的架构中创建受管集群,您需要创建包含这两个架构文件的发行镜像(ClusterImageSet)。例如,如果要从 ppc64les390x hub 集群创建 x86_64 集群,则需要创建发行镜像。如果使用两组文件创建发行镜像,集群创建成功,因为新发行镜像启用 OpenShift Container Platform 发行 registry 来提供多架构镜像清单。

要临时解决这个问题,请针对您的架构类型完成类似以下示例的步骤:

  1. OpenShift Container Platform release registry 中,创建一个包含 x86_64s390xppc64le 发行镜像的清单列表。

    1. 从 Quay 存储库拉取环境中这两个架构的清单列表:

      $ podman pull quay.io/openshift-release-dev/ocp-release:4.9.1-x86_64
      $ podman pull quay.io/openshift-release-dev/ocp-release:4.9.1-ppc64le
      $ podman pull quay.io/openshift-release-dev/ocp-release:4.9.1-s390x
    2. 登录到维护镜像的私有存储库:

      $ podman login <private-repo>

      使用存储库的路径替换 private-repo

    3. 运行以下命令,将发行镜像清单添加到私有存储库中:

      $ podman push quay.io/openshift-release-dev/ocp-release:4.9.1-x86_64 <private-repo>/ocp-release:4.9.1-x86_64
      $ podman push quay.io/openshift-release-dev/ocp-release:4.9.1-ppc64le <private-repo>/ocp-release:4.9.1-ppc64le
      $ podman push quay.io/openshift-release-dev/ocp-release:4.9.1-s390x <private-repo>/ocp-release:4.9.1-s390x

      使用存储库的路径替换 private-repo

    4. 为新信息创建清单:

      $ podman manifest create mymanifest
    5. 将两个发行镜像的引用添加到清单列表中:

      $ podman manifest add mymanifest <private-repo>/ocp-release:4.9.1-x86_64
      $ podman manifest add mymanifest <private-repo>/ocp-release:4.9.1-ppc64le
      $ podman manifest add mymanifest <private-repo>/ocp-release:4.9.1-s390x

      使用存储库的路径替换 private-repo

    6. 将清单列表中的列表与现有清单合并:

      $ podman manifest push mymanifest docker://<private-repo>/ocp-release:4.9.1

      使用存储库的路径替换 private-repo

  2. 在 hub 集群中,创建一个发行版本镜像来引用存储库中的清单。

    1. 创建一个 YAML 文件,其中包含类似以下示例的信息:

      apiVersion: hive.openshift.io/v1
      kind: ClusterImageSet
      metadata:
        labels:
          channel: fast
          visible: "true"
        name: img4.9.1-appsub
      spec:
        releaseImage: <private-repo>/ocp-release:4.9.1

      使用存储库的路径替换 private-repo

    2. 在 hub 集群中运行以下命令以应用更改:

      oc apply -f <file-name>.yaml

      file-name 替换为您刚才创建的 YAML 文件的名称。

  3. 在创建 OpenShift Container Platform 集群时选择新的发行镜像。

创建流程使用合并的发行镜像来创建集群。