ページの先頭行へ戻る
Enterprise Service Development Platform V1.0.0 チューニングガイド
FUJITSU Software

2.2.4 Pod(Application)

アプリケーションが動作するコンテナが含まれるPodのチューニングについて説明します。

Pod(Application)が利用できるCPUやメモリは、そのPodが動作するnode(サーバ)のリソースの利用可能な範囲に限られるため、 Pod(Application)のスケーリングは、Kubernetes nodeサーバのスケーリングと併せて検討してください。

■スケールアップ・スケールダウン

Pod(Application)のスケールアップ・スケールダウンについて説明します。

・Pod(Application)の配備に利用したマニフェストでメモリやCPUに関するパラメーターを設定している場合

1. Pod(Application)の配備に利用したマニフェストにおいて、以下のパラメーターを変更します。

変更対象 マニフェストのパラメーター
メモリの割り当て制限値(注1) spec.containers.resources.limits.memory
メモリの割り当て保証値(注1) spec.containers.resources.requests.memory
CPUの割り当て制限値(注2) spec.containers.resources.limits.cpu
CPUの割り当て保証値(注2) spec.containers.resources.requests.cpu

注1) メモリの割り当てに関する詳細は、Assign Memory Resources to Containers and Pods - Kubernetesを参照してください。

注2) CPUの割り当てに関する詳細は、Assign CPU Resources to Containers and Pods - Kubernetesを参照してください。

2. 以下のコマンドを実行して、Pod(Application)の削除を行います。

kubectl delete -f <マニフェストファイル>

3. 以下のコマンドを実行して、Pod(Application)のスケールアップ・スケールダウンを行います。

kubectl apply -f <マニフェストファイル>

・Pod(Application)の配備に利用したマニフェストでメモリやCPUに関するパラメーターを設定していない場合

Container Managementのデフォルト設定では、メモリ・CPUの割り当て制限値・割り当て保証値のデフォルト値は設定してない(注3)ため、 Pod(Application)が動作するnode(サーバ)のリソースの利用可能な範囲で、上限なくメモリやCPUが利用されます。

注3) メモリ・CPUの割り当て制限値・割り当て保証値のデフォルト値を設定する場合、詳細については以下のドキュメントを参照してください。

- Configure Default Memory Requests and Limits for a Namespace - Kubernetes - Configure Default CPU Requests and Limits for a Namespace - Kubernetes

■スケールアウト・スケールイン

Pod(Application)のスケールアウト・スケールインについて説明します。

  • kubectl applyコマンドの場合

スケーリング対象のPod(Application)がDeploymentの作成により配備されていることを前提とします。 Deploymentの詳細は、Deployments - Kubernetesを参照してください。

  1. Pod(Application)の配備に利用したマニフェストにおいて「spec.replicas」の値をスケールしたい数に設定します。

  2. 以下のコマンドを実行して、Pod(Application)のスケールアウト・スケールインを行います。

kubectl apply -f <マニフェストファイル>