Pod オートスケーリング (KEDA)
KEDA の ScaledObjects は、2 つのトリガーを持つ Prometheus ベースのメトリクスを使用します:| トリガー | メトリック | しきい値 | 条件 |
|---|---|---|---|
| Worker Load | inferno_worker_load / inferno_worker_capacity | 0.8 (80%) | 常に有効 |
| Queue-based | api_queue_size / capacity (overflow モード) | 1.0 | minReplicas=0 のときのみ |
| Queue-based | api_unserviceable_requests_size | 0.9 | minReplicas=0 のときのみ |
- ポーリング間隔: 15 秒
- スケールアップの安定化時間: 30 秒
- スケールダウンの安定化時間: 900 秒(15 分)
- スケールダウンポリシー: 60 秒ごとに Pod を 1 つ削除
クラスタ/ノードのオートスケーリング
- AWS EKS
- GCP GKE
Cluster Autoscaler を使用:
- スキャン間隔: 10 秒
- スケールダウン遅延: ノード追加後 10 分
- スケールダウンに必要な未使用時間: 10 分
- Expander: least-waste(bin-packing)
- メトリック: リソース不足によりスケジュールできない Pending Pod