ステートフル ワークロードをスケーリングする

このドキュメントでは、Google Distributed Cloud(GDC)のエアギャップ Kubernetes クラスタで実行されている既存のステートフル ワークロードをスケーリングする方法について説明します。コンテナ ワークロードの要件の進化に合わせて、ステートフル ワークロードで実行されている Pod をスケーリングする必要があります。

このドキュメントは、組織のアプリケーション ワークロードの管理を担当するアプリケーション オペレーター グループのデベロッパーを対象としています。詳細については、GDC のエアギャップ環境のユーザー グループのドキュメントをご覧ください。

始める前に

Kubernetes クラスタに対してコマンドを実行するには、次のリソースがあることを確認してください。

  1. Kubernetes クラスタ名を確認するか、プラットフォーム管理者にクラスタ名を確認します。

  2. まだ Kubernetes クラスタの kubeconfig ファイルがない場合は、ログインして生成します。

  3. これらの手順では、Kubernetes クラスタの kubeconfig パスを使用して KUBERNETES_CLUSTER_KUBECONFIG を置き換えます。

ステートフル ワークロードをスケーリングするために必要な権限を取得するには、組織の IAM 管理者に、プロジェクトの Namespace で Namespace 管理者ロール(namespace-admin)を付与するよう依頼してください。

StatefulSet リソースをスケーリングする

Kubernetes のスケーリング機能を利用して、StatefulSet リソースで実行されている Pod の量を適切にスケーリングします。

StatefulSet リソースの Pod を手動でスケーリングする

StatefulSet リソースを手動でスケーリングするには、次のコマンドを実行します。

kubectl --kubeconfig KUBERNETES__CLUSTER_KUBECONFIG -n NAMESPACE \
    scale statefulset STATEFULSET_NAME \
    --replicas NUMBER_OF_REPLICAS

次のように置き換えます。

  • KUBERNETES_CLUSTER_KUBECONFIG: クラスタの kubeconfig ファイル。

  • NAMESPACE: プロジェクトの Namespace。

  • STATEFULSET_NAME: スケールする StatefulSet オブジェクトの名前。

  • NUMBER_OF_REPLICAS: StatefulSet オブジェクト内の複製された Pod オブジェクトの目的の数。

インプレース更新を行って Pod をスケーリングする

マニフェスト ファイルで StatefulSet リソースの Pod を直接スケーリングするには、次のコマンドを実行します。

kubectl --kubeconfig KUBERNETES__CLUSTER_KUBECONFIG -n NAMESPACE \
    patch statefulsets STATEFULSET_NAME \
    -p '{"spec":{"replicas":NUMBER_OF_REPLICAS}}'

次のように置き換えます。

  • KUBERNETES__CLUSTER_KUBECONFIG: クラスタの kubeconfig ファイル。

  • NAMESPACE: プロジェクトの Namespace。

  • STATEFULSET_NAME: スケールする StatefulSet オブジェクトの名前。

  • NUMBER_OF_REPLICAS: StatefulSet オブジェクト内の複製された Pod オブジェクトの目的の数。