訂閱
糾錯(cuò)
加入自媒體

2020 Techo Park開發(fā)者大會(huì)召開,作業(yè)幫加速平臺(tái)架構(gòu)容器化探索

2020-12-23 17:08
來(lái)源: 粵訊

12月19日-20日,由騰訊主辦的2020 Techo Park開發(fā)者大會(huì)在京舉行,全球200余位頂級(jí)技術(shù)專家以及數(shù)千位參會(huì)者在大會(huì)現(xiàn)場(chǎng)就云計(jì)算、大數(shù)據(jù)和人工智能等前沿技術(shù)話題展開深度交流。

作業(yè)幫基礎(chǔ)架構(gòu)部架構(gòu)方向負(fù)責(zé)人呂亞霖受邀出席本次大會(huì)的“企業(yè)IT架構(gòu)云原生的必經(jīng)之路”容器分論壇,并在現(xiàn)場(chǎng)發(fā)表《作業(yè)幫容器化探索和落地實(shí)踐》主題演講,分享作業(yè)幫容器化背景、目標(biāo)、落地、收益及未來(lái)規(guī)劃,深入剖析容器在教育行業(yè)落地所面臨的問(wèn)題、挑戰(zhàn)以及相應(yīng)的高效解決方案。

云原生技術(shù)架構(gòu)是有效手段,K8S及其生態(tài)是重要抓手

隨著云原生技術(shù)的成熟和普及,金融、教育、游戲等各個(gè)領(lǐng)域越來(lái)越多的企業(yè)IT架構(gòu)正在向云原生架構(gòu)轉(zhuǎn)型。在此背景下,作業(yè)幫在技術(shù)和實(shí)踐中所取得的一系列進(jìn)展與成績(jī),成為教育領(lǐng)域企業(yè)云原生上云轉(zhuǎn)型的一大代表,為行業(yè)提供了可供借鑒的成功案例。

呂亞霖在演講中首先分享了作業(yè)幫技術(shù)體系現(xiàn)狀,他表示,作業(yè)幫自2015年成立至今,一直保持高速增長(zhǎng),尤其是在今年更是實(shí)現(xiàn)了規(guī)模的成倍增長(zhǎng),發(fā)展到現(xiàn)在已擁有數(shù)千個(gè)業(yè)務(wù)應(yīng)用、數(shù)萬(wàn)個(gè)應(yīng)用實(shí)例、數(shù)十萬(wàn)計(jì)算核數(shù),未來(lái)一段時(shí)間內(nèi)將會(huì)依然保持增長(zhǎng)勢(shì)頭。

而在規(guī);铀侔l(fā)展的同時(shí),作業(yè)幫的復(fù)雜度也在急劇增加。呂亞霖表示,作業(yè)幫已從最開始的拍照搜題工具類型應(yīng)用,演化成教研、工具一體并覆蓋整個(gè)教學(xué)領(lǐng)域,涵蓋了從低幼、K12到成人教育的全階段,技術(shù)棧則由PHP、C++演化成涵蓋了現(xiàn)在所有主流語(yǔ)言的多語(yǔ)言棧,由此也面臨著高可用、極致性能、高并發(fā)的一系列問(wèn)題,在可用性和性能的要求上比大部分互聯(lián)網(wǎng)業(yè)務(wù)要求更加苛刻。

在業(yè)務(wù)的極速擴(kuò)張下,控制其架構(gòu)復(fù)雜度同時(shí)保證業(yè)務(wù)服務(wù)穩(wěn)定性、成本以及效率成為作業(yè)幫容器化的核心問(wèn)題。對(duì)此,呂亞霖指出,用云原生技術(shù)架構(gòu),基礎(chǔ)設(shè)施接管業(yè)務(wù)中大量非功能邏輯,實(shí)現(xiàn)彈性、可觀測(cè)、韌性、自動(dòng)化、可持續(xù)等特性是有效手段,K8S以及其生態(tài)是重要抓手。

呂亞霖進(jìn)一步闡述了作業(yè)幫容器化層級(jí)和其背后的技術(shù)思考,“在虛擬機(jī)時(shí)代,應(yīng)用直接運(yùn)行在資源上,所以底層資源的變更對(duì)上層應(yīng)用是有感知的,應(yīng)用通過(guò)服務(wù)治理手段來(lái)保證業(yè)務(wù)的高可用、性能和可擴(kuò)展性,但是建立和運(yùn)維這種體系的成本高昂。而在容器化體系下的云原生架構(gòu),K8S通過(guò)對(duì)下游資源的抽象,來(lái)抹平資源差異和變更,由此資源對(duì)上層服務(wù)透明,上層服務(wù)不關(guān)系底層資源的細(xì)節(jié)和變化。同時(shí),對(duì)上層應(yīng)用做服務(wù)化,用應(yīng)用框架落地規(guī)范和標(biāo)準(zhǔn),降低接入成本!

2020 Techo Park開發(fā)者大會(huì)召開,作業(yè)幫加速平臺(tái)架構(gòu)容器化探索

CPU高峰調(diào)度應(yīng)根據(jù)未來(lái)使用量,日志檢索針對(duì)元數(shù)據(jù)

呂亞霖強(qiáng)調(diào),在容器化落地進(jìn)程中,首先明確業(yè)務(wù)服務(wù)構(gòu)建容器的原則是很重要的,一是避免陷入重大問(wèn)題缺陷,二是有利于容器生態(tài)的快速接入。

“容器化落地的內(nèi)核主要是集中在IPVS和Cgroups,內(nèi)核上我們遇到了很經(jīng)典的ipvsreuse mode問(wèn)題,也有在高并發(fā)下網(wǎng)絡(luò)毛刺的問(wèn)題,我們通過(guò)騰訊tlinux內(nèi)核團(tuán)隊(duì)協(xié)作解決了這些問(wèn)題!眳蝸喠卦诖髸(huì)現(xiàn)場(chǎng)分享了容器化落地的內(nèi)核以及原生K8S優(yōu)化等內(nèi)容。

“K8S默認(rèn)調(diào)度器有很多不足,比如高峰調(diào)度不均衡問(wèn)題,我們先后做過(guò)均衡調(diào)度,真實(shí)調(diào)度,優(yōu)化后發(fā)現(xiàn)在業(yè)務(wù)deployment時(shí),其實(shí)是均衡的,但是到了高峰時(shí)段,又變得不均衡,因?yàn)榇蟛糠謽I(yè)務(wù)場(chǎng)景下CPU高峰增量不是線性的,所以我們的建議是做高峰預(yù)測(cè)調(diào)度,不要根據(jù)現(xiàn)在的使用量來(lái)調(diào)度,而是要根據(jù)未來(lái)的使用量。”

接下來(lái),呂亞霖進(jìn)一步從容器化落地服務(wù)發(fā)現(xiàn)注冊(cè)的控制面和數(shù)據(jù)面進(jìn)行了詳細(xì)說(shuō)明,他表示,在容器化過(guò)渡期間,虛擬機(jī)和容器會(huì)并行很長(zhǎng)一段時(shí)間,所以需要解決老的虛擬機(jī)和容器化互通的問(wèn)題,從控制面上來(lái)看,通過(guò)一個(gè)控制組件,來(lái)監(jiān)聽(tīng)虛擬機(jī)的名字服務(wù),將服務(wù)注冊(cè)到K8S集群的service里,監(jiān)聽(tīng)其變更,將變更同步到容器。而在數(shù)據(jù)面,容器通過(guò)service直接訪問(wèn)虛擬機(jī),service來(lái)做負(fù)載均衡,虛擬機(jī)訪問(wèn)容器化,則通過(guò)一個(gè)東西向的ingress服務(wù),訪問(wèn)容器內(nèi)的服務(wù)單元。

此外,Service Mesh對(duì)于像作業(yè)幫等使用多語(yǔ)言的公司來(lái)說(shuō)優(yōu)勢(shì)非常明顯。呂亞霖指出,其優(yōu)勢(shì)一是低入侵,業(yè)務(wù)幾乎無(wú)感,二是多語(yǔ)言支持,三是與服務(wù)感知的結(jié)合較好。

資源彈性調(diào)度+在離線混合部署,部分業(yè)務(wù)成本下降43%

作為資源彈性調(diào)度的重要參考背景,作業(yè)幫容器化落地過(guò)程中的時(shí)間周期特性十分明顯,高峰時(shí)段是平峰時(shí)段的20倍,是低峰時(shí)段的上百倍,同時(shí)流量上升曲線較陡,凌晨到5點(diǎn)前流量較少。此外,遇到寒暑高峰或者期中、期末考試,也會(huì)有很大的資源使用量。

基于這一特性,呂亞霖和團(tuán)隊(duì)主要通過(guò)兩種HPA來(lái)擴(kuò)縮POD,一個(gè)是定時(shí)HPA,較為適合時(shí)間點(diǎn)明確的業(yè)務(wù),另一個(gè)是autoHPA,用來(lái)應(yīng)急擴(kuò)縮,防止服務(wù)出現(xiàn)容量問(wèn)題。同時(shí),底層資源層面則有兩個(gè)池子,一個(gè)是固定池,里面是裸金屬服務(wù),長(zhǎng)時(shí)間使用,另一個(gè)是動(dòng)態(tài)池,由一批按需的虛擬機(jī)構(gòu)成,平時(shí)處于關(guān)機(jī)狀態(tài),當(dāng)資源緊張時(shí)則會(huì)開機(jī)加入集群,用來(lái)應(yīng)對(duì)非預(yù)期的峰值。

除此之外,在離線業(yè)務(wù)容器化混合部署則成為成本節(jié)約優(yōu)化的一大利器。據(jù)呂亞霖介紹,正常在線業(yè)務(wù)有大量的低負(fù)載時(shí)段,作業(yè)幫把大數(shù)據(jù)離線和視頻音頻轉(zhuǎn)解碼服務(wù)均容器化,統(tǒng)一在K8S調(diào)度,部署到在線K8S集群,由此帶來(lái)的收益是非常大的,而這里面主要的技術(shù)則是利用tlinux的cpu隔離策略。

而從異構(gòu)計(jì)算來(lái)看,在GPU服務(wù)的容器化方面,作業(yè)幫的主要策略是gpu-share方案,通過(guò)顯存和算力進(jìn)行POD調(diào)度,從上游流量入口側(cè)對(duì)算力進(jìn)行隔離,來(lái)保證GPU服務(wù)穩(wěn)定性,同時(shí)實(shí)現(xiàn)資源利用率的最大化!霸谖覀兊膱(chǎng)景下,大規(guī)模使用GPU幾千卡,比較常見(jiàn)的情況是卡故障,這時(shí)候就需要做故障轉(zhuǎn)移和資源下線操作!眳蝸喠胤Q。

此外,作為可用性保證的重要環(huán)節(jié)之一,在多云K8S建設(shè)方面,作業(yè)幫在多個(gè)云廠商部署獨(dú)立的K8S集群,實(shí)現(xiàn)統(tǒng)一K8S的管理調(diào)度層,云內(nèi)流量閉環(huán),數(shù)據(jù)存儲(chǔ)專線同步,源頭DNS/HTTPDNS切流。

2020 Techo Park開發(fā)者大會(huì)召開,作業(yè)幫加速平臺(tái)架構(gòu)容器化探索

在多重舉措的合力推動(dòng)下,作業(yè)幫容器化的收益顯著,同樣業(yè)務(wù)遷移前后,使用了HPA和在離線混合部署后,成本下降43%,穩(wěn)定性提升到99.995%,接口響應(yīng)提升10%。由此,有效支持了作業(yè)幫業(yè)務(wù)的快速迭代,秒級(jí)急速擴(kuò)縮容,服務(wù)運(yùn)行態(tài)規(guī)范落地和統(tǒng)一的運(yùn)維環(huán)境,多云的環(huán)境統(tǒng)一,提升服務(wù)可用性。這也便于云間相互自由遷徙,實(shí)現(xiàn)單云故障的應(yīng)急預(yù)案,通過(guò)優(yōu)化資源碎片,在離線混合部署,自動(dòng)擴(kuò)縮容,整體成本進(jìn)一步下降。

在演講最后,談及對(duì)于容器化未來(lái)的規(guī)劃展望時(shí),呂亞霖提出四大方向,包括更大規(guī)模和全時(shí)段的在離線混合部署,K8S與Serverless的結(jié)合是未來(lái)的趨勢(shì),中間件容器化,以及大數(shù)據(jù)服務(wù)容器化。

    聲明: 本文系OFweek根據(jù)授權(quán)轉(zhuǎn)載自其它媒體或授權(quán)刊載,目的在于信息傳遞,并不代表本站贊同其觀點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé),如有新聞稿件和圖片作品的內(nèi)容、版權(quán)以及其它問(wèn)題的,請(qǐng)聯(lián)系我們。

    發(fā)表評(píng)論

    0條評(píng)論,0人參與

    請(qǐng)輸入評(píng)論內(nèi)容...

    請(qǐng)輸入評(píng)論/評(píng)論長(zhǎng)度6~500個(gè)字

    您提交的評(píng)論過(guò)于頻繁,請(qǐng)輸入驗(yàn)證碼繼續(xù)

    • 看不清,點(diǎn)擊換一張  刷新

    暫無(wú)評(píng)論

    暫無(wú)評(píng)論

    人工智能 獵頭職位 更多
    掃碼關(guān)注公眾號(hào)
    OFweek人工智能網(wǎng)
    獲取更多精彩內(nèi)容
    文章糾錯(cuò)
    x
    *文字標(biāo)題:
    *糾錯(cuò)內(nèi)容:
    聯(lián)系郵箱:
    *驗(yàn) 證 碼:

    粵公網(wǎng)安備 44030502002758號(hào)