助力成本優(yōu)化,騰訊全場(chǎng)景在離線混部系統(tǒng)Caelus正式開源

發(fā)布時(shí)間:2021-11-10 15:06:43  |  來(lái)源:通信世界全媒體  

(CWW)11月4日,在2021騰訊數(shù)字生態(tài)大會(huì)上,騰訊正式宣布開源其全場(chǎng)景在離線混部系統(tǒng)Caelus。

Caelus由騰訊大數(shù)據(jù)團(tuán)隊(duì)聯(lián)合騰訊多個(gè)業(yè)務(wù)部門共同研發(fā),旨在解決大數(shù)據(jù)資源缺口問(wèn)題,通過(guò)Caelus在離線混部,擴(kuò)充大數(shù)據(jù)任務(wù)可用資源,發(fā)揮空閑資源更大價(jià)值。在騰訊內(nèi)部,Caelus混部方案已經(jīng)被大規(guī)模應(yīng)用到廣告、存儲(chǔ)、大數(shù)據(jù)、機(jī)器學(xué)習(xí)等多個(gè)業(yè)務(wù),平均提升30% 資源利用率,節(jié)省了上億成本。

近年來(lái),隨著互聯(lián)網(wǎng)業(yè)務(wù)的發(fā)展,大數(shù)據(jù)類任務(wù)的資源需求呈指數(shù)級(jí)增長(zhǎng),資源成本問(wèn)題突出。但各大權(quán)威機(jī)構(gòu)的調(diào)研數(shù)據(jù)顯示行業(yè)目前在線資源利用率普遍很低,平均維持在15%左右,資源浪費(fèi)嚴(yán)重。對(duì)此,業(yè)內(nèi)一直在進(jìn)行諸多探索,在線離線混部被認(rèn)為是解決該問(wèn)題的終極方案。

由于很多大數(shù)據(jù)任務(wù)具有實(shí)時(shí)性要求不高、運(yùn)行時(shí)間較短、使用碎片資源等特點(diǎn),而在線應(yīng)用的資源使用通常具有潮汐的特點(diǎn),因此大數(shù)據(jù)任務(wù)比較適合復(fù)用在線應(yīng)用的空閑資源,但混部也面臨諸多核心技術(shù)難題,具體包括:

1.大部分混部系統(tǒng)只針對(duì)云原生場(chǎng)景,無(wú)法利用大量非容器化的在線空閑資源;

2.部分混部方案要求大數(shù)據(jù)必須云原生化改造,增加了依賴條件;

3.資源復(fù)用在粒度、靈活性、時(shí)間等方面策略都不夠精細(xì),導(dǎo)致利用率不高;

4.缺乏比較好的干擾檢測(cè)機(jī)制,導(dǎo)致在線服務(wù)質(zhì)量無(wú)法很好保證,限制了可以混部的場(chǎng)景;

5.在內(nèi)核層、容器層缺乏完善的資源隔離、熱遷移等機(jī)制,導(dǎo)致容易發(fā)生干擾,且處理干擾代價(jià)高;

6.混部調(diào)度器缺乏在離線應(yīng)用調(diào)度的兼容性、高性能以及SLA保證。

解決這些問(wèn)題,也是Caelus混部研發(fā)的初衷。

適用全場(chǎng)景

目前在線作業(yè)容器化已成為主流,但絕大公司的在線業(yè)務(wù)還有相當(dāng)大未容器化的存量,或有些業(yè)務(wù)(如存儲(chǔ)類服務(wù))不適合容器化,這些沒(méi)有經(jīng)過(guò)容器化的在線應(yīng)用,沒(méi)有很好的資源隔離方式,但資源卻非??捎^,因此Caelus通過(guò)以后置容器的方式來(lái)管理在線應(yīng)用,將這部分資源也充分利用起來(lái),也減少了混部在很多公司、很多場(chǎng)景的限制。

對(duì)于離線任務(wù),Caelus可以支持大數(shù)據(jù)任務(wù),也可以支持任何非大數(shù)據(jù)類的任務(wù)。但由于大數(shù)據(jù)任務(wù)占到了離線任務(wù)的極高比例,并且離線大數(shù)據(jù)任務(wù)資源碎片化特點(diǎn)比較明顯,而大數(shù)據(jù)又有很多是hadoop的生態(tài),因此騰訊做了很多的兼容工作。同時(shí),也看到有很多公司已經(jīng)在云原生大數(shù)據(jù)領(lǐng)域有了比較不錯(cuò)的進(jìn)展,對(duì)于使用Caelus來(lái)做混部更加自然。

充分兼容的架構(gòu)設(shè)計(jì)

Caelus為了適應(yīng)各種的混部場(chǎng)景,遵循了幾個(gè)關(guān)鍵原則,主要包括:

1.不改變業(yè)務(wù)使用方式,便于業(yè)務(wù)遷移到Caelus混部平臺(tái)。比如大數(shù)據(jù)任務(wù)仍然可以使用原有的方式提交job,如果原來(lái)是Yarn,Caelus實(shí)現(xiàn)了Yarn on k8s。如果大數(shù)據(jù)已經(jīng)是on k8s的方式,也可以更方便的使用統(tǒng)一調(diào)度;

2.對(duì)基礎(chǔ)生態(tài)零入侵。不論是對(duì)hadoop,還是對(duì)k8s,都是零入侵的實(shí)現(xiàn),因此保證了對(duì)多種版本的兼容性,以及后續(xù)的可擴(kuò)展性;

3.非耦合、可擴(kuò)展的架構(gòu)。在實(shí)現(xiàn)時(shí),充分兼顧了未來(lái)的可擴(kuò)展性,大多功能都是以插件的形式實(shí)現(xiàn)。

保障在線業(yè)務(wù)服務(wù)質(zhì)量

Caelus挖掘的是在線業(yè)務(wù)的空閑資源,混部要優(yōu)先保障在線服務(wù)的正常運(yùn)行,當(dāng)在線業(yè)務(wù)需要資源時(shí),大數(shù)據(jù)業(yè)務(wù)要及時(shí)歸還資源。Caelus內(nèi)部集成了指標(biāo)收集、資源畫像、資源隔離、干擾檢測(cè)、離線驅(qū)逐等模塊,從調(diào)度、隔離、檢測(cè)等方面全方位保障在線的服務(wù)質(zhì)量。

對(duì)于資源隔離,Caelus采用全維度彈性資源隔離,包括CPU、內(nèi)存、磁盤IO、磁盤空間、網(wǎng)絡(luò)IO等。同時(shí)可以配合騰訊OS版本,進(jìn)一步提升資源隔離效果。

在干擾檢測(cè)方面,通過(guò)RDT、perf、eBPF等技術(shù)深度采集硬件、內(nèi)核及業(yè)務(wù)相關(guān)指標(biāo)數(shù)據(jù),通過(guò)豐富的異常檢測(cè)算法,判斷在線服務(wù)是否受到干擾。例如,Caelus采用eBPF技術(shù)從內(nèi)核中采集了更加豐富的diskIO和內(nèi)存操作相關(guān)指標(biāo)以及在線服務(wù)請(qǐng)求處理時(shí)長(zhǎng),以此來(lái)判斷在線服務(wù)是否發(fā)生了性能影響,一旦識(shí)別出在線服務(wù)質(zhì)量受到干擾,就會(huì)采取一定策略退還更多資源給在線服務(wù),保證在線服務(wù)不受影響。

為大數(shù)據(jù)業(yè)務(wù)提供“質(zhì)”的保證

混部雖然為大數(shù)據(jù)業(yè)務(wù)挖掘到了很多免費(fèi)資源,但是也帶來(lái)了比較差的服務(wù)質(zhì)量,因?yàn)橘Y源畫像的本質(zhì)是對(duì)未來(lái)的預(yù)測(cè),資源隔離是對(duì)可能的干擾進(jìn)行預(yù)防,但預(yù)測(cè)不會(huì)完全準(zhǔn)確,預(yù)防也不能保證問(wèn)題一定不會(huì)發(fā)生,所以在離線混部往往在干擾發(fā)生時(shí)陷入不得不犧牲離線任務(wù)的窘境,導(dǎo)致離線任務(wù)可能會(huì)被壓制甚至被kill。

Caelus采取了一系列措施來(lái)實(shí)現(xiàn)“質(zhì)”的保證,保證離線作業(yè)的成功率,比如為了更好地隔離在線和離線作業(yè)的磁盤IO及磁盤空間,Caelus會(huì)為節(jié)點(diǎn)動(dòng)態(tài)地掛載Ceph RBD盤;引入Remote Shuffle Service,解決在線應(yīng)用所在機(jī)器通常磁盤不足的問(wèn)題,從而避免了CPU等計(jì)算資源的浪費(fèi),進(jìn)一步提升利用率;Caelus除了對(duì)在線應(yīng)用作資源畫像之外,還對(duì)離線任務(wù)做畫像,并且與調(diào)度相配合,來(lái)提升離線任務(wù)的服務(wù)質(zhì)量。

同時(shí),Caelus還提供了一個(gè)混部的“后悔藥”——容器熱遷移能力。容器熱遷移是指在不終止離線任務(wù)的前提下將其移動(dòng)到更適合的節(jié)點(diǎn)。由于熱遷移一定發(fā)生在干擾產(chǎn)生之后,因此可以獲得離線任務(wù)實(shí)際使用資源的準(zhǔn)確認(rèn)知,基于這種認(rèn)知的調(diào)度決策會(huì)比基于預(yù)測(cè)的決策更有效,可以更好地保障離線任務(wù)的SLA。

另外,很多大數(shù)據(jù)場(chǎng)景下,大規(guī)模集群、大量短作業(yè)都對(duì)調(diào)度器的調(diào)度吞吐提出了很高的挑戰(zhàn),特別是云原生大數(shù)據(jù),更是缺乏這種能力,因此,Caelus實(shí)現(xiàn)了自研的高性能調(diào)度器,是原生K8S調(diào)度器的10倍調(diào)度吞吐。


關(guān)鍵詞: 資訊 通信世界網(wǎng) Caelus 騰訊 大數(shù)據(jù) 存儲(chǔ) 機(jī)器學(xué)習(xí)

 

網(wǎng)站介紹  |  版權(quán)說(shuō)明  |  聯(lián)系我們  |  網(wǎng)站地圖 

星際派備案號(hào):京ICP備2022016840號(hào)-16 營(yíng)業(yè)執(zhí)照公示信息版權(quán)所有 郵箱聯(lián)系:920 891 263@qq.com