全部產品
Search
文件中心

Container Service for Kubernetes:Auto Scaling概述

更新時間:Sep 07, 2024

Auto Scaling是根據業務需求和策略,自動調整計算資源的管理服務,典型的情境包含線上業務彈性、大規模計算訓練、深度學習GPU或共用GPU的訓練與推理等。本文介紹ACK Serverless叢集支援的Auto Scaling方案。

方案

一句話介紹

擴縮依據的指標

使用情境

支援的資源類型

相關文檔

HPA

在業務負載上升時快速擴容Pod副本來緩解壓力,在業務負載變小時適當縮容以節省資源,是最常執行的 App彈性方案。

  • 資源指標(CPU、記憶體使用量率)

  • 其他自訂指標

服務波動較大、服務數量多且需要頻繁擴縮容的線上業務情境,例如電商服務、線上教育、金融服務等。

Deployment、StatefulSet等支援scale介面的對象

容器水平伸縮(HPA)

CronHPA

類似Crontab的策略定時對Pod進行擴縮容,支援配置時區、執行的日期、跳過執行的日期(例如節假日),支援和HPA協同使用。

定時擴縮容

業務流量有明顯高峰時段、應用程式需要在特定時間執行任務等情境。

Deployment、StatefulSet等

使用容器定時水平伸縮(CronHPA)

VPA

監控Pod的資源消耗模式,靈活推薦CPU和記憶體資源分派的配置,並在適當的情況下自動進行調整,而不調整Pod的副本數量。

推薦並自動調整Pod中容器的CPU及記憶體的Request和Limit

需要穩定資源配置的有狀態應用的擴容、大型單體應用等情境,通常是在Pod出現異常恢複時生效。

Deployment、DaemonSet、StatefulSet等

容器垂直伸縮(VPA)

AHPA

根據業務歷史指標,自動、主動識別彈性周期並對容量進行預測,提前進行彈性規劃,解決彈性滯後的問題。

  • 資源指標(CPU、記憶體、GPU使用率)

  • 流量指標(QPS、RT)

  • 其他自訂指標

業務流量有明顯周期性的情境,例如直播、線上教育、遊戲服務等。

Deployment、Knative Service等

AHPA概述