日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
既要穩(wěn)也要省,容器資源該怎么分配?

既要穩(wěn)也要省,容器資源該怎么分配?

作者:陳賀 2023-10-24 07:25:10

云計(jì)算

云原生 很長(zhǎng)一段時(shí)間,舊的彈性云分級(jí)體系存在資源爭(zhēng)搶、業(yè)務(wù)延遲、擴(kuò)容失敗、業(yè)務(wù)無法準(zhǔn)確評(píng)估容量、物理機(jī)數(shù)量難以評(píng)估等問題。這些問題的本質(zhì)是由于沒有制定明確的資源準(zhǔn)備和分配規(guī)則。

成都創(chuàng)新互聯(lián)IDC提供業(yè)務(wù):資陽移動(dòng)機(jī)房,成都服務(wù)器租用,資陽移動(dòng)機(jī)房,重慶服務(wù)器租用等四川省內(nèi)主機(jī)托管與主機(jī)租用業(yè)務(wù);數(shù)據(jù)中心含:雙線機(jī)房,BGP機(jī)房,電信機(jī)房,移動(dòng)機(jī)房,聯(lián)通機(jī)房。

眾所周知,假期出行,熱情高漲,需求增多也使得穩(wěn)定性保障壓力大。當(dāng)各個(gè)服務(wù)流量激增時(shí),資源負(fù)載壓力將會(huì)顯著提升。微觀上,單臺(tái)物理機(jī)的 CPU 利用率會(huì)大幅提升,單機(jī)上各個(gè)容器之間的爭(zhēng)搶會(huì)增加,性能受到影響。宏觀上,整個(gè)彈性云的熱點(diǎn)機(jī)器會(huì)增加,可供調(diào)度的資源會(huì)降低,容器調(diào)度和擴(kuò)容的失敗率會(huì)上升。

今年,在降本增效的大前提下,不額外增加計(jì)算型服務(wù)器采購(gòu),如何保障資源供給以及確保高壓場(chǎng)景下的容器穩(wěn)定性,對(duì)彈性云而言是個(gè)巨大的挑戰(zhàn)。為了提供更穩(wěn)定的容器服務(wù),彈性云全面梳理了容器服務(wù)資源保障的每一個(gè)環(huán)節(jié),提出了新分級(jí)保障體系,提供了明確的容器資源保障等級(jí),在此基礎(chǔ)上,針對(duì)不同優(yōu)先級(jí)的容器提供相應(yīng)的資源和穩(wěn)定性保障。

早期彈性云容器體系帶來的超賣隱患

彈性云早期分級(jí)體系提供了1/2/3級(jí)容器等級(jí),只是對(duì)容器的優(yōu)先級(jí)進(jìn)行了簡(jiǎn)單的區(qū)分,并未將容器優(yōu)先級(jí)與底層的資源保障關(guān)聯(lián)在一起。容器服務(wù)在使用過程中,會(huì)遇到以下問題:

  • 資源爭(zhēng)搶嚴(yán)重
  • 業(yè)務(wù)延遲較高,毛刺較多
  • 擴(kuò)容失敗概率較高
  • 業(yè)務(wù)容量評(píng)估不準(zhǔn)
  • 物理機(jī)數(shù)量難以評(píng)估

之所以會(huì)存在這些問題,實(shí)際上還是因?yàn)樵谫Y源層面沒有相應(yīng)的保障。從單機(jī)資源看,部分物理機(jī)的 CPU 使用率峰值過高,并且容器的 CPU 資源存在不同程度的超賣。

從集群資源來看,舊體系下 quota 與物理機(jī)資源缺乏關(guān)聯(lián),導(dǎo)致業(yè)務(wù)申請(qǐng)的 quota 僅僅停留在數(shù)字層面,不指導(dǎo)物理機(jī)資源的準(zhǔn)備。此外,quota 還缺乏管控,導(dǎo)致 quota 的申請(qǐng)與實(shí)際需求嚴(yán)重脫節(jié)。

造成上述諸多問題很重要的一個(gè)原因就是彈性云資源整體上是超賣的,且比較嚴(yán)重。

所謂的資源超賣,指的是資源的申請(qǐng)量>供給量,表現(xiàn)為單機(jī) & 集群方面均超賣。

  • 單機(jī)層面,一臺(tái)物理機(jī)上運(yùn)行的所有容器的規(guī)格相加大于物理機(jī)所能提供的資源總量。
  • 集群層面,服務(wù)資源的 quota 總和大于集群物理機(jī)資源總量。 

從上圖中可以看到,單是1級(jí)服務(wù)申請(qǐng)的資源量,就已經(jīng)超過了物理機(jī)的總資源量。在集群和單機(jī)都超賣的情況下,早期的分級(jí)體系并沒有確立明確的超賣規(guī)則,使得舊體系容器運(yùn)行環(huán)境整體處于無序和不確定的狀態(tài)下。

兩大超賣解決思路帶來的四大收益

思路一:核心服務(wù)鏈路不超賣

所有的核心服務(wù)鏈路上的服務(wù)均1:1對(duì)應(yīng)物理機(jī)資源,不超賣。通過對(duì)機(jī)房1和機(jī)房2進(jìn)行簡(jiǎn)單的統(tǒng)計(jì), 發(fā)現(xiàn)核心服務(wù)鏈路中網(wǎng)約車+兩輪車+代駕服務(wù)的申請(qǐng)量總和占據(jù)了所有服務(wù)總申請(qǐng)量的大約一半,且機(jī)房1核心服務(wù)的申請(qǐng)量已經(jīng)超過總CPU數(shù),機(jī)房2核心服務(wù)的申請(qǐng)量基本接近總CPU數(shù)。所以,核心服務(wù)不超賣受限于資源,方式不可行。   

   

思路二:核心服務(wù)鏈路中最重要的服務(wù)不超賣

受限于資源,無法做到所有的核心服務(wù)鏈路中的服務(wù)都不超賣,那退一步,在物理資源有限的情況下,保障核心服務(wù)鏈路中最重要的服務(wù)不超賣,并在此基礎(chǔ)上,對(duì)于剩余的服務(wù)制定合理的超賣規(guī)則。

因此,彈性云需要重新制定分級(jí)保障體系,同時(shí)為新分級(jí)體系制定明確的超賣規(guī)則。超賣規(guī)則如下:

  • 核心服務(wù)中20% -> S級(jí)服務(wù):不超賣
  • 老1級(jí) -> A級(jí)服務(wù):2倍超賣
  • 老2/3級(jí) -> B級(jí)服務(wù):4倍超賣

在新的超賣規(guī)則下,可以看到,機(jī)房1和機(jī)房2的總物理CPU量是基本能滿足需求的(機(jī)房2的資源申請(qǐng)量略微超出, 可以通過新增機(jī)器或是縮容來滿足要求)。

這樣的重新設(shè)計(jì)下,我們?cè)?022年元旦前完成所有S級(jí)服務(wù)的接入,2022年國(guó)慶前完成網(wǎng)約車核心服務(wù)/兩輪車核心服務(wù)/代駕核心服務(wù)接入新體系。總體來看,這樣的改變帶來了四大收益:

  • 收益1:資源層面,S級(jí)服務(wù)CPU外部爭(zhēng)搶降低60% ~80%,A級(jí)服務(wù)CPU外部爭(zhēng)搶降低30~50%。
  • 收益2:業(yè)務(wù)延遲方面,業(yè)務(wù)99分位延遲(均值)降低7% ~ 20%業(yè)務(wù)99分位延遲(最大值)降低5% ~ 15%。
  • 收益3:容量方面,高峰期S級(jí)服務(wù)比之前多承載30%+流量,S級(jí)服務(wù)比之前能縮容30%+資源。
  • 收益4:業(yè)務(wù)收益角度,高峰期CPU外部爭(zhēng)搶下降65%~75%,毛刺基本消失,業(yè)務(wù)延遲指標(biāo)下降5%~25%,業(yè)務(wù)壓測(cè)CPU外部爭(zhēng)搶下降60%~70%。

彈性云新分級(jí)保障體系總體架構(gòu)

為了支持新分級(jí)保障體系,彈性云從下到上,針對(duì)每一層中的相關(guān)組件都進(jìn)行開發(fā)改造,同時(shí)也包含了系統(tǒng)部 CMP 系統(tǒng)quota相關(guān)的開發(fā)工作,主要體現(xiàn)在操作系統(tǒng)層、k8s 調(diào)度層、kube-odin 層、服務(wù)樹和系統(tǒng)部 CMP 系統(tǒng)。

從上述架構(gòu)圖中可以看到,位于最底層的是機(jī)房的物理機(jī)資源,物理機(jī)分別位于不同的機(jī)房。

操作系統(tǒng)層

物理機(jī)之上是操作系統(tǒng)層,操作系統(tǒng)層面分為內(nèi)核態(tài)和用戶態(tài)。在內(nèi)核態(tài)新增特性上,新分級(jí)體系對(duì) CPU 調(diào)度,內(nèi)存管理,IO 讀寫都進(jìn)行了針對(duì)性的開發(fā)和優(yōu)化。

CPU 調(diào)度:

  • 新增優(yōu)先級(jí)權(quán)重概念,不同優(yōu)先級(jí)容器的調(diào)度權(quán)重不同,用于區(qū)分不同等級(jí)容器調(diào)度優(yōu)先級(jí)。
  • 新增 CPU Burst 技術(shù),允許部分重要容器能短時(shí)間內(nèi)突破規(guī)格的上線,臨時(shí)使用超量的 CPU。

內(nèi)存管理:

  • 新增優(yōu)先級(jí)回收技術(shù),優(yōu)先回收低優(yōu)先級(jí)容器的內(nèi)存,最后回收高優(yōu)先級(jí)容器內(nèi)存。
  • 新增分級(jí)水位特性,減少系統(tǒng)內(nèi)存緊張時(shí)高優(yōu)先級(jí)容器內(nèi)存分配受阻。

IO 讀寫:

  • 新增帶寬限速特性,支持對(duì)低優(yōu)先級(jí)容器的 IO 讀寫帶寬進(jìn)行限速,以減少對(duì)高優(yōu)先級(jí)容器的影響。
  • 新增優(yōu)先級(jí)帶寬分配特性,支持按容器優(yōu)先級(jí)分配 IO 帶寬。

在用戶態(tài)新增特性上,操作系統(tǒng)用戶態(tài)針對(duì)新分級(jí)體系的支持主要體現(xiàn)在 Kubelet、IRMAS 和單機(jī)資源調(diào)度這幾個(gè)組件上。其中,kubelet 和 IRMAS 主要新增了新分級(jí)體系容器的識(shí)別、信息采集上報(bào)、單機(jī)資源配置、環(huán)境適配等工作。新增單機(jī)資源調(diào)度模塊實(shí)現(xiàn)了極端情況下單機(jī)資源的壓制和恢復(fù),以及與 k8s 調(diào)度聯(lián)動(dòng)等功能。

k8s 調(diào)度層

在 k8s 容器調(diào)度層,針對(duì)新分級(jí)體系新增了最小資源保障策略,指的是通過合理的調(diào)度,保障任何時(shí)候,容器均能獲得承諾的資源量。

容器分級(jí)均衡打散策略指的是保證一臺(tái)物理機(jī)上不會(huì)存在過多同一級(jí)別的容器,將不同等級(jí)的容器均勻打散到不同的物理機(jī)上。

分級(jí)容量資源大盤指的是資源大盤新增新分級(jí)體系容器支持,實(shí)時(shí)觀察新分級(jí)容器容量健康情況。

擴(kuò)容成功率保障指的是新增容量預(yù)估特性,優(yōu)化資源申請(qǐng)流程,實(shí)時(shí)監(jiān)控彈性云可供擴(kuò)容資源量,有效提高擴(kuò)容成功率。

kube-odin 層

kube-odin 層配合新分級(jí)體系也進(jìn)行了相關(guān)改動(dòng)和升級(jí):

  • 新增新等級(jí)接入平臺(tái):包括新等級(jí)容器查詢操作相關(guān)接口的適配。
  • 計(jì)費(fèi)管理模塊:新增新分級(jí)體系容器的計(jì)費(fèi)支持,支持多種計(jì)費(fèi)場(chǎng)景。
  • 服務(wù) quota 操作:新增 quota 操作接口。

服務(wù)樹

服務(wù)樹在保持兼容性的基礎(chǔ)上,新增了新分級(jí)體系集群信息的支持。

系統(tǒng)部 CMP 系統(tǒng)

新體系容器的 quota 申請(qǐng)和使用由系統(tǒng)部 CMP 系統(tǒng)操作和記錄。

CMP 系統(tǒng)通過獲取業(yè)務(wù)申請(qǐng)的 quota 信息,能明確推算所需的物理機(jī)資源,更好實(shí)現(xiàn)物理機(jī)資源的保障。針對(duì)新體系容器的 quota 支持,CMP 系統(tǒng)新增了 quota 成本賬戶、quota 成本賬戶以及 quota 申請(qǐng)模塊。

  • quota 成本賬戶:包含S級(jí)/A級(jí)/B級(jí)的 quota 信息。
  • quota 管控模塊:對(duì) quota 的使用量進(jìn)行追蹤和考察,以便進(jìn)行有效的資源管控。
  • quota 申請(qǐng)模塊:規(guī)范 quota 申請(qǐng)流程,明確 quota 申請(qǐng)規(guī)則。

新分級(jí)體系三大重點(diǎn)資源保障

新分級(jí)體系立足于核心問題,在單機(jī)層面和集群層面都對(duì)容器申請(qǐng)的資源進(jìn)行相應(yīng)保障。

單機(jī)資源保障:CPU

新分級(jí)體系資源保障的其中一個(gè)重點(diǎn)為:保障容器的 CPU 資源任何時(shí)刻都能按超賣比所規(guī)定的有效交付。

在前文中,我們提到新體系容器的超賣規(guī)則為:S級(jí)不超賣,A級(jí)2倍超賣,B級(jí)4倍超賣。那對(duì)于不同等級(jí)的容器,可輕松得知其所需的物理 CPU 個(gè)數(shù)。新分級(jí)體系所需要保證的就是一臺(tái)物理機(jī)上所有容器經(jīng)過超賣比計(jì)算后得到的物理 CPU 個(gè)數(shù)必須小于物理機(jī)上的 CPU 個(gè)數(shù)。

圖片

上述的示例中,對(duì)于一個(gè)40核的物理機(jī),可用的 CPU 數(shù)為: 40*90%=36核 (90%為計(jì)算各種 agent 和調(diào)度損耗之后的有效核數(shù))。容器總共申請(qǐng)的核數(shù)為56核,經(jīng)過超賣比計(jì)算后得到的所需物理核為36,剛好滿足要求。

通過明確超賣比,根據(jù)超賣比準(zhǔn)備對(duì)應(yīng)物理 CPU 資源的方式,在高負(fù)載期間,如果所有的容器都滿載運(yùn)行,則物理機(jī)上的 CPU 資源將會(huì)按照超賣比承諾的比例進(jìn)行分配。在低負(fù)載時(shí)刻,算力足夠時(shí),由于機(jī)器整體空閑,容器之間幾乎不發(fā)生爭(zhēng)搶,此時(shí)容器可以正常使用 CPU。

單機(jī)資源保障:內(nèi)存

在物理機(jī)層面,內(nèi)存是所有容器之間共享的資源,傳統(tǒng)內(nèi)核沒有對(duì)容器進(jìn)行優(yōu)先級(jí)的劃分,所有容器的內(nèi)存使用對(duì)于內(nèi)核而言都是一視同仁。

內(nèi)存對(duì)容器性能的影響主要體現(xiàn)在內(nèi)存分配和內(nèi)存回收上。

內(nèi)存分級(jí)水位

操作系統(tǒng)內(nèi)核會(huì)監(jiān)控整個(gè)系統(tǒng)的內(nèi)存使用情況,當(dāng)可用內(nèi)存低于一定水位時(shí),就會(huì)阻塞內(nèi)存分配路徑,觸發(fā)內(nèi)存回收操作。

某些場(chǎng)景下,低優(yōu)先級(jí)容器可能大量申請(qǐng)內(nèi)存,導(dǎo)致內(nèi)存水位線降職 min 水位以下,物理機(jī)面臨內(nèi)存分配和回收時(shí),高優(yōu)容器將會(huì)受到影響,無法及時(shí)的分配內(nèi)存。

針對(duì)這個(gè)場(chǎng)景,內(nèi)核新增了內(nèi)存分級(jí)水位特性,允許按照優(yōu)先級(jí)設(shè)置不同的 min 水位。這樣,在申請(qǐng)內(nèi)存時(shí),低優(yōu)先級(jí)容器會(huì)先達(dá)到回收水位線觸發(fā)低優(yōu)先級(jí)容器的內(nèi)存回收,而高優(yōu)先級(jí)容器的內(nèi)存回收水位線較低,可以正常分配。

內(nèi)存按優(yōu)先級(jí)回收

由于原生內(nèi)存沒有對(duì)內(nèi)存進(jìn)行優(yōu)先級(jí)區(qū)分,因此當(dāng)內(nèi)核走到內(nèi)存回收路徑,會(huì)無差別的進(jìn)行內(nèi)存回收動(dòng)作。此時(shí),可能高優(yōu)先級(jí)容器的內(nèi)存被回收,而低優(yōu)先級(jí)容器內(nèi)存則完好無損。

新分級(jí)體系的目標(biāo)顯然是要在回收內(nèi)存的時(shí)候優(yōu)先回收低優(yōu)先級(jí)容器的內(nèi)存,這樣可以最大程度保護(hù)高優(yōu)先級(jí)容器的內(nèi)存,進(jìn)而保障高優(yōu)先級(jí)容器的性能表現(xiàn)。

圖片

基于優(yōu)先級(jí)回收的思想,內(nèi)核所做的就是識(shí)別容器優(yōu)先級(jí),然后按照容器優(yōu)先級(jí)逐一回收內(nèi)存,直至內(nèi)存水位線恢復(fù)健康水平。

先回收B級(jí)容器的內(nèi)存

再回收A級(jí)容器的內(nèi)存

集群資源保障:quota

業(yè)務(wù)在申請(qǐng)容器服務(wù)的時(shí)候,一般需要指定單個(gè)容器的規(guī)格(CPU/內(nèi)存大?。┖蜕暾?qǐng)的數(shù)量。匯總服務(wù)總共所需的資源量,即為 quota,quota 管理的最小單位為成本賬戶。

圖片

可以看到,在新分級(jí)體系下,quota 按照容器優(yōu)先級(jí),分為了對(duì)應(yīng)的S級(jí)/A級(jí)/B級(jí) quota。quota 是用于描述業(yè)務(wù)的資源申請(qǐng)量,而對(duì)于彈性云和系統(tǒng)部而言, 則可以根據(jù) quota,進(jìn)行物理資源的準(zhǔn)備。例如對(duì)于某個(gè)成本賬戶,申請(qǐng)的 quota 如下所示:

圖片

我們可以清楚看到,業(yè)務(wù)申請(qǐng)的 quota 量與實(shí)際準(zhǔn)備物理機(jī)資源量之間的對(duì)應(yīng)關(guān)系。

通過建立并規(guī)范 quota 的申請(qǐng)和使用流程,新分級(jí)體系能根據(jù)資源超賣規(guī)則有效的將 quota 的申請(qǐng)量與后臺(tái)真實(shí)物理資源的準(zhǔn)備量結(jié)合起來,從而實(shí)現(xiàn)資源層面的強(qiáng)保障。另外,在 quota 體系逐步完善之后,還能根據(jù) quota 使用率和容器的 CPU 使用率對(duì) quota 進(jìn)行有效的資源管控。

總結(jié)

很長(zhǎng)一段時(shí)間,舊的彈性云分級(jí)體系存在資源爭(zhēng)搶、業(yè)務(wù)延遲、擴(kuò)容失敗、業(yè)務(wù)無法準(zhǔn)確評(píng)估容量、物理機(jī)數(shù)量難以評(píng)估等問題。這些問題的本質(zhì)是由于沒有制定明確的資源準(zhǔn)備和分配規(guī)則。

新分級(jí)體系立足于核心問題,提出了明確的資源超賣規(guī)則,在單機(jī)層面和集群層面都對(duì)容器申請(qǐng)的資源進(jìn)行相應(yīng)保障。在單機(jī)層面,保證了按超賣比轉(zhuǎn)化后實(shí)際的物理機(jī)資源不會(huì)超過物理機(jī)所提供的最大資源量,同時(shí)制定了明確的資源爭(zhēng)搶規(guī)則。在集群層面,建立并規(guī)范了 quota 申請(qǐng)流程,明確了 quota 與物理機(jī)資源之間的對(duì)應(yīng)關(guān)系,保障了資源的供給,同時(shí),也有效管控了 quota ,避免資源的浪費(fèi)。

通過在容器資源申請(qǐng)、容器調(diào)度、運(yùn)行時(shí)保障、資源管控等多個(gè)方面添加資源保障策略,彈性云新分級(jí)體系支持容器高效穩(wěn)定的運(yùn)行,確保了彈性云整體的穩(wěn)定性,也一定程度降低了物理機(jī)運(yùn)營(yíng)成本。


本文題目:既要穩(wěn)也要省,容器資源該怎么分配?
網(wǎng)頁網(wǎng)址:http://www.5511xx.com/article/djhidcs.html