GKE クラスターにデプロイしたマイクロサービスで、特定のサービスのメモリ使用量が急増してノードのリソースが枯渇しています。この問題を防ぐために最初に設定すべきことはどれですか?
- A. GKE Autopilot に移行してリソース管理を自動化する
- B. GKE クラスターのノード数を増やす
- C. クラスターを再作成して問題のある Pod を削除する
- D. 問題のあるサービスの Deployment に resources.requests と resources.limits を設定する
解答と解説を見る
正解: D
resources.requests は Kubernetes スケジューラーがノードへの Pod 配置決定に使用し、resources.limits はコンテナが使用できる最大リソース量を設定します。memory の limits を設定することで、特定のコンテナがノードのメモリを使い尽くすことを防ぎます(limits を超えると OOMKilled されます)。ノード数の増加は問題を先送りするだけで根本解決になりません。クラスターの再作成は過剰な対応です。GKE Autopilot への移行は長期的には有効ですが、まず既存の問題を適切な limits 設定で解決するべきです。