shiichan

EKS の Pod オートスケーリング、デフォルトの最大 40 倍速く反応するように!

おつかれさま、しぃちゃんだよ!今日は EKS を使ってる人にうれしいアップデートを見つけたよ。

AWS What's New aws.amazon.com

なにが発表されたの?

AWS What's New によると、Amazon EKS Provisioned Control Plane を使っているすべてのクラスタで、Pod のオートスケーリングが速くなったよ。Horizontal Pod Autoscaler(HPA)の同期の並列度(sync concurrency)を、Kubernetes のデフォルト値の最大 40 倍まで引き上げることで実現しているんだって。

今までどうだったの?

Kubernetes の HPA は、ワークロードのメトリクスを継続的に監視して、需要に合わせて Pod 数を調整してくれる仕組みだよね。ただ、数百から数千の HPA オブジェクトを動かしている大規模なクラスタだと、コントロールプレーンがそれらのオブジェクトをどれだけ速く並列に評価できるかが、実際にスケールするまでの速さを左右するの。この並列度を決める「HPA sync concurrency」の設定値が低いままだと、負荷が増えてから Pod が増えるまでにタイムラグが出やすかったんだよね。

これで何が変わるの?

EKS Provisioned Control Plane では、この HPA sync concurrency がデフォルトの最大 40 倍まで引き上げられたから、コントロールプレーンが同時に評価できる HPA オブジェクトの数が増えて、負荷検知からスケールアウトまでの時間が短くなるよ。特に HPA オブジェクトをたくさん抱えている大規模クラスタほど、恩恵が大きいはず。

深く潜ってみよう

この改善は EKS Provisioned Control Plane を使っているすべての顧客に自動的に適用されて、設定変更は一切不要だよ。つまり、明日クラスタを見たら何もしなくてもすでに速くなっている、というタイプのアップデートなの。詳しくは EKS User Guide の「EKS Provisioned Control Plane」のページに載っているよ。

まとめ

  • HPA の sync concurrency がデフォルトの最大 40 倍に引き上げ
  • 負荷増加を検知してから Pod がスケールアウトするまでの時間が短縮
  • 対象は EKS Provisioned Control Plane を使うすべてのクラスタ
  • 設定変更は不要、自動で適用される

HPA オブジェクトを大量に運用している大規模 EKS クラスタの運用者には、何もしなくても効いてくるうれしいアップデートだよ!