cgroup v2 に移行する

VMware バージョン 1.35 の Google Distributed Cloud ソフトウェアのみには、cgroup v2 が必要です。バージョン 1.35 以降、Kubernetes は cgroup v1 をサポートしていません。このドキュメントでは、クラスタを cgroup v2 に移行する方法について説明します。

始める前に

Kubernetes 1.35 で VMware に Google Distributed Cloud ソフトウェアのみをインストールまたはアップグレードするには、次のことを確認します。

  • ソフトウェア バージョンを確認する: VMware バージョン 1.35.00 以降で Google Distributed Cloud ソフトウェアのみを使用する必要があります。
  • OS cgroup v2 の互換性: cgroup v2 をサポートするオペレーティング システムを使用する必要があります。
  • cgroup v2 を構成する(必要な場合): OS のデフォルトが cgroup v2 でない場合(Ubuntu 18.04/20.04 など)、手動で構成する必要があります。詳細については、Kubernetes ドキュメントの cgroup v2 への移行をご覧ください。
  • クラスタ構成を更新する: バージョン 1.35 にアップグレードする前に、osImageType フィールドを ubuntuubuntu_containerdcos のいずれかから ubuntu_cgv2 または cos_cgv2 に変更します。
  • vSphere イメージを準備する: vSphere にイメージがない場合は、gkectl prepare を実行します。
  • 自動化スクリプトを更新する: 新しい ubuntu_cgv2 または cos_cgv2 画像タイプを使用するように、自動化スクリプトを確認して更新します。

OS イメージのタイプを更新する

gkectl upgrade を実行する前に、クラスタの YAML ファイルで osImageType を cgroup v2 互換のイメージに変更します。

管理クラスタ

  1. 管理クラスタ構成ファイルを開きます。
  2. osImageType フィールドを見つけます。
  3. 値を ubuntu_cgv2(Ubuntu を使用している場合)または cos_cgv2(COS を使用している場合)に変更します。

このフィールドの詳細については、osImageType のドキュメントをご覧ください。

ユーザー クラスタ

  1. ユーザー クラスタの構成ファイルを開きます。
  2. nodePools セクション内の osImageType フィールドを見つけます。
  3. 値を ubuntu_cgv2(Ubuntu を使用している場合)または cos_cgv2(COS を使用している場合)に変更します。

このフィールドの詳細については、nodePools[i].osImageType のドキュメントをご覧ください。

クラスタのアップグレード

構成ファイルの osImageType を更新したら、クラスタをアップグレードします。

  1. 次のコマンドを実行して、クラスタをアップグレードします。

    gkectl upgrade cluster --config USER_CLUSTER_CONFIG --admin-config ADMIN_CLUSTER_CONFIG
    

    USER_CLUSTER_CONFIG は、ユーザー クラスタ構成ファイルのパスに置き換えます。ADMIN_CLUSTER_CONFIG は、管理クラスタ構成ファイルのパスに置き換えます。

プリフライト チェック

GKE on VMware 1.35 は、ubuntuubuntu_containerdcos の OS イメージタイプをサポートしていません。これらのイメージタイプを使用してクラスタまたはノードプールを作成またはアップグレードしようとすると、プリフライト チェック中にリクエストがブロックされます。

新しいデフォルトの OS イメージ タイプ

GKE on VMware 1.35 のデフォルトの osImageTypeubuntu_cgv2 です。新しいクラスタ構成を作成し、osImageType フィールドを空白のままにすると、システムはデフォルトで cgroup v2 が有効になっているノードをデプロイします。

Ubuntu よりも Container-Optimized OS(COS)を使用する場合は、構成ファイルで osImageType フィールドを cos_cgv2 に明示的に設定します。

次のステップ