Container ServiceACK支援AHPA(Advanced Horizontal Pod Autoscaler)的彈效能力,滿足在應用具備周期性的情況下,通過彈性預測進行資源預熱,解決您在服務使用中遇到的彈性滯後問題。您可以通過安裝AHPA Controller使用AHPA彈性預測能力。本文介紹AHPA的組件資訊、使用說明和變更記錄。
組件介紹
AHPA基於應用歷史指標預測未來Pod執行個體數量,協助您解決彈性滯後的問題。AHPA通過主動預測和被動預測相結合,即時調整資源執行個體數,並且增加了兜底保護原則,通過設定時間區間的執行個體數上下界值,實現彈性兜底。
工作原理
Auto Scaling可以協助使用者節省成本,提高業務的整體穩定性、免營運能力和核心競爭力。AHPA架構設計的基本原則如下:
穩定性:在使用者服務穩定的情況下進行Auto Scaling。
免營運:不增加額外的營運負擔。AHPA不需要在使用者側增加新的Controller,且Autoscaler的配置語義比HPA更清晰。
面向Serverless:提供以使用者應用為中心、面嚮應用Pod維度設計,不考慮K8s節點的利用率情況。假設使用者使用的都是ECI Pod,考慮在Serverless情境(沒有節點)下的彈性最佳實務,增強ACK Serverless運行LongRun的能力。
AHPA的架構如下圖所示:
豐富的資料指標:支援CPU、Memory、QPS、RT和外部指標等。
穩定性保障:AHPA的彈性邏輯基於主動預熱、被動兜底的策略,並結合降級保護,保障資源的穩定。
主動預測:基於歷史指標通過達摩院機器學習演算法提前預測出未來24小時應用的執行個體數量,適用於周期性的應用。
被動預測:基於應用即時指標資料計算Pod數,便於應對突發的流量。
降級保護:支援配置多個時間區間範圍最大和最小執行個體。
多種伸縮方式:AHPA支援伸縮方式包括Knative、HPA和Deployment。
Knative:解決Serverless應用情境下,基於並發數、QPS、RT的彈性冷啟動問題。
HPA:簡化HPA彈性策略配置,降低使用者使用彈性的門檻,解決使用HPA面臨的冷啟動問題。
Deployment:直接使用Deployment,自動擴縮容。
使用說明
關於AHPA的使用說明,請參見AHPA概述。
變更記錄
2024年04月
版本號碼 | 變更時間 | 變更內容 | 變更影響 |
版本號碼 | 變更時間 | 變更內容 | 變更影響 |
v2.6.0-aliyun.1 | 2024年04月16日 | 最佳化通過metrics-server採集指標的鏈路。 | 建議在業務低峰期升級。 |
2024年03月
版本號碼 | 變更時間 | 變更內容 | 變更影響 |
版本號碼 | 變更時間 | 變更內容 | 變更影響 |
v2.5.6-aliyun.1 | 2024年03月20日 | 修複自訂指標panic問題。 | 建議在業務低峰期升級。 |
2023年12月
版本號碼 | 變更時間 | 變更內容 | 變更影響 |
版本號碼 | 變更時間 | 變更內容 | 變更影響 |
v2.5.0-aliyun.1 | 2023年12月25日 |
| 建議在業務低峰期升級。 |
2023年10月
版本號碼 | 變更時間 | 變更內容 | 變更影響 |
版本號碼 | 變更時間 | 變更內容 | 變更影響 |
v2.4.0-aliyun.1 | 2023年10月16日 |
| 建議在業務低峰期升級。 |
2023年07月
版本號碼 | 變更時間 | 變更內容 | 變更影響 |
版本號碼 | 變更時間 | 變更內容 | 變更影響 |
v2.3.0-aliyun.1 | 2023年07月12日 |
| 建議在業務低峰期升級。 |
2023年06月
版本號碼 | 變更時間 | 變更內容 | 變更影響 |
版本號碼 | 變更時間 | 變更內容 | 變更影響 |
v2.2.0-aliyun.1 | 2023年06月19日 |
| 建議在業務低峰期升級。 |
2023年04月
版本號碼 | 變更時間 | 變更內容 | 變更影響 |
版本號碼 | 變更時間 | 變更內容 | 變更影響 |
v2.1.0-aliyun.1 | 2023年04月26日 |
| 建議在業務低峰期升級。 |
2022年07月
版本號碼 | 變更時間 | 變更內容 | 變更影響 |
版本號碼 | 變更時間 | 變更內容 | 變更影響 |
v1.0.0-aliyun.1 | 2022年07月13日 |
| 無 |