3.7.3. Google Cloud 上のコントロールプレーンまたはインフラマシンセットをアーキテクチャー間で移行する
Google Cloud クラスター内のコントロールプレーンまたはインフラマシンセットを、x86 アーキテクチャーと arm64 アーキテクチャー間で移行できます。
前提条件
-
OpenShift CLI (
oc) がインストールされている。 -
cluster-admin権限を持つユーザーとしてocにログインしている。
手順
次のコマンドを実行して、コントロールプレーンまたはインフラノードのアーキテクチャーを確認します。
$ oc get nodes -o wide出力例
NAME STATUS ROLES AGE VERSION INTERNAL-IP EXTERNAL-IP OS-IMAGE KERNEL-VERSION CONTAINER-RUNTIME worker-001.example.com Ready infra 100d v1.30.7 10.x.x.x <none> Red Hat Enterprise Linux CoreOS 4xx.xx.xxxxx-0 5.x.x-xxx.x.x.el9_xx.x86_64 cri-o://1.30.x master-001.example.com Ready control-plane,master 120d v1.30.7 10.x.x.x <none> Red Hat Enterprise Linux CoreOS 4xx.xx.xxxxx-0 5.x.x-xxx.x.x.el9_xx.x86_64 cri-o://1.30.x出力の
KERNEL-VERSIONフィールドは、ノードのアーキテクチャーを示します。次のコマンドを実行して、クラスターがマルチペイロードを使用していることを確認します。
$ oc adm release info -o jsonpath="{ .metadata.metadata}"次の出力が表示された場合、クラスターはマルチアーキテクチャーと互換性があります。
{ "release.openshift.io/architecture": "multi", "url": "https://access.redhat.com/errata/<errata_version>" }クラスターがマルチペイロードを使用していない場合は、クラスターをマルチアーキテクチャークラスターに移行します。詳細は、「マルチアーキテクチャーのコンピュートマシンを備えたクラスターへの移行」を参照してください。
カスタムイメージストリームを使用する場合は、イメージストリームごとに次のコマンドを実行して、シングルアーキテクチャーからマルチアーキテクチャーに更新します。
$ oc import-image <multiarch_image_stream_tag> --from=<registry>/<project_name>/<image_name> \ --import-mode='PreserveOriginal'- General-purpose machine family for Compute engine (Google ドキュメント) から、ターゲットアーキテクチャーに一致するインスタンスタイプを選択します。Available regions and zones の表 (Google ドキュメント) をチェックして、インスタンスタイプがゾーンでサポートされていることを確認します。
- General-purpose machine family for Compute engine (Google ドキュメント) の「Supported disk types」セクションから、選択したインスタンスタイプでサポートされているディスクタイプを選択します。
次のコマンドを実行して、移行後にマシンセットが使用する Google Cloud イメージを確認します。
$ oc get configmap/coreos-bootimages \ -n openshift-machine-config-operator \ -o jsonpath='{.data.stream}' | jq \ -r '.architectures.aarch64.images.gcp'出力例
"gcp": { "release": "415.92.202309142014-0", "project": "rhcos-cloud", "name": "rhcos-415-92-202309142014-0-gcp-aarch64" }出力の
projectおよびnameパラメーターを使用して、projects/<project>/global/images/<name>という形式でimageパラメーターを作成します。コントロールプレーンを別のアーキテクチャーに移行するために、次のコマンドを実行します。
$ oc edit controlplanemachineset.machine.openshift.io cluster -n openshift-machine-api-
disks.typeパラメーターは、選択したディスクタイプに置き換えます。 -
disks.imageパラメーターは、以前に作成したimageパラメーターに置き換えます。 -
machineTypeパラメーターは、選択したインスタンスタイプに置き換えます。
-
インフラマシンセットを別のアーキテクチャーに移行するには、インフラマシンセットの ID を使用して次のコマンドを実行します。
$ oc edit machineset <infra-machine-set_id> -n openshift-machine-api-
disks.typeパラメーターは、選択したディスクタイプに置き換えます。 -
disks.imageパラメーターは、以前に作成したimageパラメーターに置き換えます。 -
machineTypeパラメーターは、選択したインスタンスタイプに置き換えます。
-