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

進化するコンテナ ワークロードの要件に合わせてステートフル ワークロードをスケーリングします。

始める前に

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 オブジェクトの目的の数。