EKS のコントロールプレーン、細かいパラメータまでいじれるようになったよ!
やっほー、しぃちゃんだよ!Kubernetes を運用してる人には見逃せないアップデートを見つけたよ!
AWS What's Newなにが発表されたの?
AWS What's New で、Amazon EKS が Kubernetes コントロールプレーンの構成要素、スケジューラー・コントローラーマネージャー・API サーバーのパラメータを設定できるようになったって発表されたよ。
なぜ重要なの?
これまで EKS のコントロールプレーンはデフォルト設定で動くのが基本だったところに、管理者がパラメータレベルで手を入れられる余地ができたの。クラスタの特性やワークロードの傾向に合わせて、動作をチューニングできるようになるのは、大規模にクラスタを運用してるチームほど効いてくるポイントだよ。
これで何が変わるの?
設定できるようになったパラメータには、こんなものがあるよ。
- Pod の配置戦略(リソース利用効率の改善)
- 需要変化に対する水平 Pod オートスケーリング(HPA)の反応速度
- イベント保持期間などのリソースライフサイクルパラメータ
クラスタ管理者は、デフォルトの動作を超えてコントロールプレーンをコントロールできるようになるんだね。
深く潜ってみよう
原文で紹介されてる具体例が分かりやすいよ。スケジューラーのノードリソースフィット戦略パラメータを MostAllocated に設定すると、すでに利用率が高いノードに Pod を詰めて配置するようになって、同じワークロードをより少ないノード数で動かせるようになるの。
デフォルトの LeastAllocated 戦略は逆に Pod をノードにまんべんなく分散させる動き方だから、ノードの余裕(ヘッドルーム)を優先したいときはそのままにしておけばいいよ。密度を優先してコスト効率を上げたいか、余裕を優先して安定性を取るか、クラスタの目的に応じて選べるようになったってことだね。
この機能は、Amazon EKS が利用できるすべての AWS リージョンで使えるよ。設定できるパラメータの全リストは、Amazon EKS ユーザーガイドの Control plane configuration に載ってるから、気になる人はチェックしてみてね。
まとめ
- Amazon EKS で、スケジューラー・コントローラーマネージャー・API サーバーのパラメータを設定できるように
- Pod 配置戦略・HPA の反応速度・イベント保持期間などをチューニング可能
- 例: スケジューラーを
MostAllocatedにすると Pod を密に詰めてノード数を削減、デフォルトのLeastAllocatedは分散重視 - 全リージョンで利用可能
大規模な EKS クラスタでコスト効率や安定性をもう一段チューニングしたい、インフラ担当さんにおすすめのアップデートだよ!