負荷を予測して事前スケーリングする HPA の Custom Controller 実装

Japanese Solo Session Sat, 13 Jun 2020 13:40:00 +0900 35m

概要

本セッションでは Horizontal Pod Autoscaler (HPA) のターゲットとなる Deployment などのワークロードの負荷を監視・予測し事前にスケーリングできるような Custom Controller の設計・実装を紹介します。

近年 Operator の浸透により Kubernetes 上でステートフルアプリケーションを動作させることが多くなってきています。しかしながらそういったアプリケーションはボリュームのアタッチや初期化処理などに時間のかかるものも多く、HPA などでスケーリングを導入する際にその時間を加味してしきい値を決めたりなど面倒な場合があります。また、Cluster Autoscaler と併用している場合 Pod が増えてもリソース不足で起動できないこともあります。そこで将来発生する負荷を予測して事前にスケーリングさせることで、Pod やノード自身の起動時間を考えることなく自然にしきい値を設定できる HPA の上位リソースを開発しました。HPA を管理するリソースであるため Behavior など全ての設定に対応していることも強みの一つです。

登壇者

質問

← 戻る