3.4. Google Cloud でマルチアーキテクチャーのコンピューティングマシンを含むクラスターを作成する


マルチアーキテクチャーのコンピューティングマシンを含む Google Cloud クラスターを作成するには、まずマルチアーキテクチャーインストーラーバイナリーを使用して、単一アーキテクチャーの Google Cloud インストーラーによってプロビジョニングされたクラスターを作成する必要があります。AWS のインストールの詳細については、カスタマイズを使用した Google Cloud へのクラスターのインストール を参照してください。

シングルアーキテクチャーのコンピュートマシンを持つ現在のクラスターを、マルチアーキテクチャーのコンピュートマシンを持つクラスターに移行することもできます。詳細は、マルチアーキテクチャーのコンピュートマシンを備えたクラスターへの移行 を参照してください。

マルチアーキテクチャークラスターを作成した後、異なるアーキテクチャーのノードをクラスターに追加できます。

注記

現在、セキュアブートは Google Cloud の 64 ビット ARM マシンではサポートされていません

3.4.1. クラスターの互換性の確認

異なるアーキテクチャーのコンピュートノードをクラスターに追加する前に、クラスターがマルチアーキテクチャー互換であることを確認する必要があります。

前提条件

  • OpenShift CLI (oc) がインストールされている。

手順

  1. OpenShift CLI (oc) にログインします。
  2. 次のコマンドを実行すると、クラスターがアーキテクチャーペイロードを使用していることを確認できます。

    $ oc adm release info -o jsonpath="{ .metadata.metadata}"
    Copy to Clipboard Toggle word wrap

検証

  • 次の出力が表示された場合、クラスターはマルチアーキテクチャーペイロードを使用しています。

    {
     "release.openshift.io/architecture": "multi",
     "url": "https://access.redhat.com/errata/<errata_version>"
    }
    Copy to Clipboard Toggle word wrap

    その後、クラスターへのマルチアーキテクチャーコンピュートノードの追加を開始できます。

  • 次の出力が表示された場合、クラスターはマルチアーキテクチャーペイロードを使用していません。

    {
     "url": "https://access.redhat.com/errata/<errata_version>"
    }
    Copy to Clipboard Toggle word wrap
    重要

    クラスターを、マルチアーキテクチャーコンピュートマシンをサポートするクラスターに移行するには、マルチアーキテクチャーコンピュートマシンを含むクラスターへの移行 の手順に従ってください。

マルチアーキテクチャークラスターを作成した後、異なるアーキテクチャーのノードを追加できます。

マルチアーキテクチャーコンピュートマシンをマルチアーキテクチャークラスターに追加する方法には、次のものがあります。

  • 64 ビット ARM コントロールプレーンマシンを使用し、すでに 64 ビット ARM コンピュートマシンが含まれているクラスターに 64 ビット x86 コンピュートマシンを追加します。この場合、64 ビット x86 がセカンダリーアーキテクチャーと見なされます。
  • 64 ビット x86 コントロールプレーンマシンを使用し、すでに 64 ビット x86 コンピュートマシンが含まれているクラスターに 64 ビット ARM コンピュートマシンを追加します。この場合、64 ビット ARM がセカンダリーアーキテクチャーと見なされます。
注記

セカンダリーアーキテクチャーノードをクラスターに追加する前に、Multiarch Tuning Operator をインストールし、ClusterPodPlacementConfig カスタムリソースをデプロイすることを推奨します。詳細は、「Multiarch Tuning Operator を使用してマルチアーキテクチャークラスター上のワークロードを管理する」を参照してください。

前提条件

  • OpenShift CLI (oc) がインストールされている。
  • インストールプログラムを使用して、マルチアーキテクチャーインストーラーバイナリーを含む 64 ビット x86 または 64 ビット ARM の単一アーキテクチャーの Google Cloud クラスターを作成しました。

手順

  1. OpenShift CLI (oc) にログインします。
  2. YAML ファイルを作成し、設定を追加して、クラスター内の 64 ビット ARM または 64 ビット x86 コンピュートノードを制御するコンピュートマシンセットを作成します。

    Google Cloud 64 ビット ARM または 64 ビット x86 コンピュートノードの MachineSet オブジェクトの例

    apiVersion: machine.openshift.io/v1beta1
    kind: MachineSet
    metadata:
      labels:
        machine.openshift.io/cluster-api-cluster: <infrastructure_id> 
    1
    
      name: <infrastructure_id>-w-a
      namespace: openshift-machine-api
    spec:
      replicas: 1
      selector:
        matchLabels:
          machine.openshift.io/cluster-api-cluster: <infrastructure_id>
          machine.openshift.io/cluster-api-machineset: <infrastructure_id>-w-a
      template:
        metadata:
          creationTimestamp: null
          labels:
            machine.openshift.io/cluster-api-cluster: <infrastructure_id>
            machine.openshift.io/cluster-api-machine-role: <role> 
    2
    
            machine.openshift.io/cluster-api-machine-type: <role>
            machine.openshift.io/cluster-api-machineset: <infrastructure_id>-w-a
        spec:
          metadata:
            labels:
              node-role.kubernetes.io/<role>: ""
          providerSpec:
            value:
              apiVersion: gcpprovider.openshift.io/v1beta1
              canIPForward: false
              credentialsSecret:
                name: gcp-cloud-credentials
              deletionProtection: false
              disks:
              - autoDelete: true
                boot: true
                image: <path_to_image> 
    3
    
                labels: null
                sizeGb: 128
                type: pd-ssd
              gcpMetadata: 
    4
    
              - key: <custom_metadata_key>
                value: <custom_metadata_value>
              kind: GCPMachineProviderSpec
              machineType: n1-standard-4 
    5
    
              metadata:
                creationTimestamp: null
              networkInterfaces:
              - network: <infrastructure_id>-network
                subnetwork: <infrastructure_id>-worker-subnet
              projectID: <project_name> 
    6
    
              region: us-central1 
    7
    
              serviceAccounts:
              - email: <infrastructure_id>-w@<project_name>.iam.gserviceaccount.com
                scopes:
                - https://www.googleapis.com/auth/cloud-platform
              tags:
                - <infrastructure_id>-worker
              userDataSecret:
                name: worker-user-data
              zone: us-central1-a
    Copy to Clipboard Toggle word wrap

    1
    クラスターのプロビジョニング時に設定したクラスター ID を基にするインフラストラクチャー ID を指定します。以下のコマンドを実行してインフラストラクチャー ID を取得できます。
    $ oc get -o jsonpath='{.status.infrastructureName}{"\n"}' infrastructure cluster
    Copy to Clipboard Toggle word wrap
    2
    追加するロールノードラベルを指定します。
    3
    現在のコンピュートマシンセットで使用されるイメージへのパスを指定します。イメージへのパスにはプロジェクトとイメージ名が必要です。

    プロジェクトとイメージ名にアクセスするには、次のコマンドを実行します。

    $ oc get configmap/coreos-bootimages \
      -n openshift-machine-config-operator \
      -o jsonpath='{.data.stream}' | jq \
      -r '.architectures.aarch64.images.gcp'
    Copy to Clipboard Toggle word wrap

    出力例

      "gcp": {
        "release": "415.92.202309142014-0",
        "project": "rhcos-cloud",
        "name": "rhcos-415-92-202309142014-0-gcp-aarch64"
      }
    Copy to Clipboard Toggle word wrap

    出力の project パラメーターと name パラメーターを使用して、マシンセット内のイメージフィールドへのパスを作成します。イメージへのパスは次の形式に従う必要があります。

    $ projects/<project>/global/images/<image_name>
    Copy to Clipboard Toggle word wrap
    4
    オプション: key:value のペアの形式でカスタムメタデータを指定します。ユースケースの例については、カスタムメタデータの設定 について Google Cloud のドキュメント を参照してください。
    5
    選択した OS イメージの CPU アーキテクチャーに合ったマシンタイプを指定します。詳細は、64 ビット ARM インフラストラクチャー上の Google Cloud のテスト済みインスタンスタイプを参照してください。
    6
    クラスターに使用する Google Cloud プロジェクトの名前を指定します。
    7
    リージョンを指定します。たとえば、us-central1 です。選択したゾーンに必要なアーキテクチャーを備えたマシンがあることを確認してください。
  3. 次のコマンドを実行してコンピュートマシンセットを作成します。

    $ oc create -f <file_name> 
    1
    Copy to Clipboard Toggle word wrap
    1
    <file_name> は、コンピュートマシン設定を含む YAML ファイルの名前に置き換えます。たとえば、gcp-arm64-machine-set-0.yaml、または gcp-amd64-machine-set-0.yaml です。

検証

  1. 次のコマンドを実行して、コンピュートマシンセットのリストを表示します。

    $ oc get machineset -n openshift-machine-api
    Copy to Clipboard Toggle word wrap

    出力に、作成したマシンセットが含まれている必要があります。

    出力例

    NAME                                                DESIRED  CURRENT  READY  AVAILABLE  AGE
    <infrastructure_id>-gcp-machine-set-0                   2        2      2          2  10m
    Copy to Clipboard Toggle word wrap

  2. 次のコマンドを実行すると、ノードが準備完了状態でスケジュール可能かどうかを確認できます。

    $ oc get nodes
    Copy to Clipboard Toggle word wrap
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat