AHPA概述
在云原生場景下,資源容量通常難以預(yù)估,而使用Kubernetes原生的HPA時(shí)需要面對彈性滯后以及配置復(fù)雜問題。為此,ACK推出了AHPA(Advanced Horizontal Pod Autoscaler)彈性預(yù)測,支持根據(jù)業(yè)務(wù)歷史指標(biāo),自動識別彈性周期并對容量進(jìn)行預(yù)測,提前進(jìn)行彈性規(guī)劃,解決彈性滯后的問題。
背景信息
傳統(tǒng)管理應(yīng)用實(shí)例數(shù)有固定實(shí)例數(shù)、HPA和CronHPA三種方法。三種方法的缺點(diǎn)如下。
類型 | 缺點(diǎn) |
固定實(shí)例數(shù) | 資源浪費(fèi)嚴(yán)重,在業(yè)務(wù)低谷時(shí)仍需要全量支付資源費(fèi)用。 |
HPA | 彈性觸發(fā)滯后,只有達(dá)到業(yè)務(wù)洪峰才會觸發(fā)彈性伸縮。 |
CronHPA |
|
針對上述彈性方式存在的問題,ACK支持AHPA彈性預(yù)測功能,以提高資源利用率和易用性。AHPA彈性預(yù)測根據(jù)歷史數(shù)據(jù)自動規(guī)劃未來24小時(shí)每一分鐘的應(yīng)用實(shí)例數(shù),相當(dāng)于進(jìn)行1440個(gè)點(diǎn)(一天為1440分鐘)的CronHPA定時(shí)配置。如下圖所示,左側(cè)為傳統(tǒng)HPA策略,右側(cè)為有預(yù)測功能的HPA。
傳統(tǒng)HPA策略:在業(yè)務(wù)量上漲之后開始擴(kuò)容,滯后的資源供給不能及時(shí)補(bǔ)充業(yè)務(wù)需求。
有預(yù)測功能的HPA:根據(jù)歷史Pod的Ready Time以及歷史Metrics自動學(xué)習(xí)規(guī)律,在業(yè)務(wù)量上漲之前的一個(gè)Ready Time開始擴(kuò)容。當(dāng)業(yè)務(wù)量上漲時(shí)Pod已提前準(zhǔn)備,可以及時(shí)供給資源。
業(yè)務(wù)架構(gòu)
豐富的數(shù)據(jù)指標(biāo):支持包括CPU、GPU、Memory、QPS、RT以及外部指標(biāo)等。
穩(wěn)定性保障:AHPA的彈性邏輯基于主動預(yù)測、被動兜底的策略,并結(jié)合降級保護(hù),保證了資源的穩(wěn)定性。
主動預(yù)測:根據(jù)歷史指標(biāo)預(yù)測出未來一段時(shí)間的趨勢結(jié)果,適用于周期性的應(yīng)用。
被動預(yù)測:實(shí)時(shí)預(yù)測。針對突發(fā)流量場景,通過被動預(yù)測實(shí)時(shí)準(zhǔn)備資源。
降級保護(hù):支持配置多個(gè)時(shí)間區(qū)間范圍最大、最小值。
多種伸縮方式:AHPA支持伸縮方式包括Knative、HPA以及Deployment:
Knative:解決Serverless應(yīng)用場景下,基于并發(fā)數(shù)、QPS或RT彈性冷啟動的問題。
HPA:簡化HPA彈性策略配置,降低用戶使用彈性的門檻,解決使用HPA面臨的彈性滯后問題。
Deployment:直接使用Deployment,自動擴(kuò)縮容。
核心優(yōu)勢
更快:毫秒級預(yù)測,秒級彈性。
更準(zhǔn):復(fù)雜周期識別率95%以上,主動預(yù)測和被動預(yù)測相結(jié)合。
更穩(wěn): 支持分鐘級邊界保護(hù)配置。
適用場景
有明顯周期性場景。例如直播、在線教育、游戲服務(wù)場景等。
固定實(shí)例數(shù)+彈性兜底。例如常態(tài)業(yè)務(wù)下應(yīng)對突發(fā)流量等。
推薦實(shí)例數(shù)配置場景。提供標(biāo)準(zhǔn)K8s API獲取預(yù)測結(jié)果,常用于與自身業(yè)務(wù)平臺進(jìn)行集成。
使用說明
部署并使用AHPA,請參見部署AHPA。
基于GPU指標(biāo)實(shí)現(xiàn)AHPA彈性預(yù)測,請參見基于GPU指標(biāo)實(shí)現(xiàn)AHPA彈性預(yù)測。
在Knative中使用AHPA彈性預(yù)測,請參見在Knative中使用AHPA彈性預(yù)測。
關(guān)于如何使用AHPA解決彈性滯后問題,請參見如何使用AHPA解決彈性滯后問題。
關(guān)于AHPA彈性預(yù)測的最佳實(shí)踐,請參見AHPA彈性預(yù)測最佳實(shí)踐。
阿里云與達(dá)摩院合作的AHPA彈性預(yù)測論文,已被頂會ICDE錄用,詳情請參見ICDE 2022。