1.3.4.10. アーキテクチャー全体のクラスターを作成できない

ハブクラスターのアーキテクチャーとは異なるアーキテクチャーでマネージドクラスターを作成するには、両方のアーキテクチャーのファイルが含まれるリリースイメージ (ClusterImageSet) を作成する必要があります。たとえば、ppc64le ハブクラスターから x86_64 クラスターを作成することはできません。OpenShift Container Platform リリースレジストリーは、マルチアーキテクチャーイメージマニフェストを提供しないため、クラスターの作成に失敗します。

この問題を回避するには、以下の手順を実行します。

  1. OpenShift Container Platform リリースレジストリー から、x86_64 および ppc64le リリースイメージの両方を含む マニフェスト一覧 を作成します。

    1. Quay リポジトリーから両方のアーキテクチャーのマニフェストの一覧をプルします。

      $ podman pull quay.io/openshift-release-dev/ocp-release:4.8.1-x86_64
      $ podman pull quay.io/openshift-release-dev/ocp-release:4.8.1-ppc64le
    2. イメージを管理するプライベートリポジトリーにログインします。

      $ podman login <private-repo>

      private-repo は、リポジトリーへのパスに置き換えます。

    3. 以下のコマンドを実行して、リリースイメージマニフェストをプライベートリポジトリーに追加します。

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

      private-repo は、リポジトリーへのパスに置き換えます。

    4. 新規情報のマニフェストを作成します。

      $ podman manifest create mymanifest
    5. 両方のリリースイメージへの参照をマニフェスト一覧に追加します。

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

      private-repo は、リポジトリーへのパスに置き換えます。

    6. マニフェストリストの一覧を既存のマニフェストにマージします。

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

      private-repo は、リポジトリーへのパスに置き換えます。

  2. ハブクラスターで、リポジトリーのマニフェストを参照するリリースイメージを作成します。

    1. 以下の例のような情報を含む YAML ファイルを作成します。

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

      private-repo は、リポジトリーへのパスに置き換えます。

    2. ハブクラスターで以下のコマンドを実行し、変更を適用します。

      oc apply -f <file-name>.yaml

      file-name を、先の手順で作成した YAML ファイルの名前に置き換えます。

  3. OpenShift Container Platform クラスターの作成時に新規リリースイメージを選択します。

作成プロセスでは、マージされたリリースイメージを使用してクラスターを作成します。