溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

微服務(wù)架構(gòu)下DLI的部署和運(yùn)維怎么理解

發(fā)布時(shí)間:2022-01-14 21:23:51 來(lái)源:億速云 閱讀:174 作者:柒染 欄目:大數(shù)據(jù)

微服務(wù)架構(gòu)下DLI的部署和運(yùn)維怎么理解,針對(duì)這個(gè)問(wèn)題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問(wèn)題的小伙伴找到更簡(jiǎn)單易行的方法。

華為云數(shù)據(jù)湖探索DLI是支持多模引擎的Serverless大數(shù)據(jù)計(jì)算服務(wù),其很好的實(shí)現(xiàn)了Serverless的特性:

1.弱化了存儲(chǔ)和計(jì)算之間的聯(lián)系;

2.代碼的執(zhí)行不再需要手動(dòng)分配資源;

3.按使用量計(jì)費(fèi)。

那么如何才能更好的實(shí)現(xiàn)Serverless化的服務(wù),同時(shí)又避免成為傳統(tǒng)單體分布式的應(yīng)用,微服務(wù)架構(gòu)無(wú)疑是最優(yōu)的選擇。DLI基于微服務(wù)架構(gòu)模式下的整體部署架構(gòu)如下:

微服務(wù)架構(gòu)下DLI的部署和運(yùn)維怎么理解

即對(duì)外以純API形式提供服務(wù),通過(guò)以API Gateway作為應(yīng)用的入口,基于領(lǐng)域模型按子域進(jìn)行微服務(wù)劃分,從而實(shí)現(xiàn)Serverless化的大數(shù)據(jù)計(jì)算服務(wù)。

對(duì)于這樣一個(gè)基于微服務(wù)架構(gòu)實(shí)現(xiàn)的Serverless服務(wù),我們是如何在生產(chǎn)環(huán)境來(lái)部署與運(yùn)維,從而在保證服務(wù)SLA的前提下實(shí)現(xiàn)快速迭代上線的呢?

DLI部署的關(guān)鍵

隨著技術(shù)的發(fā)展,部署的流程和架構(gòu)都發(fā)生了根本性的變化,如今已經(jīng)走入了輕量級(jí)、短生命周期的技術(shù)時(shí)代。

微服務(wù)架構(gòu)下DLI的部署和運(yùn)維怎么理解

從最初部署在物理機(jī)上的大數(shù)據(jù)計(jì)算平臺(tái),到基于公有云的彈性計(jì)算云服務(wù)器部署大數(shù)據(jù)平臺(tái),再到DLI這樣的Serverless服務(wù),其很好展現(xiàn)了大數(shù)據(jù)計(jì)算服務(wù)的演變。那么如何才能更好的實(shí)現(xiàn)Serverless化的大數(shù)據(jù)計(jì)算服務(wù)的部署呢,DLI的答案就是基于Kubernetes+Docker來(lái)部署各微服務(wù)。

Kubernetes部署是在不停機(jī)的情況下部署服務(wù)的好方法,但是如何應(yīng)對(duì)在接收生產(chǎn)流量后出現(xiàn)的錯(cuò)誤,使新版本的服務(wù)更可靠呢?這可以通過(guò)將問(wèn)題一分為二來(lái)看:

1.部署,即將服務(wù)上線到生產(chǎn)環(huán)境中運(yùn)行;

2.發(fā)布,即使服務(wù)可用于處理生產(chǎn)流量。

傳統(tǒng)上,分離部署流程與發(fā)布流程一直是一個(gè)挑戰(zhàn)。但現(xiàn)在我們有了很好的選擇,那就是基于服務(wù)網(wǎng)格。在DLI的部署中我們結(jié)合了Kubernetes+Istio,利用Istio的流量管理實(shí)現(xiàn)了服務(wù)發(fā)現(xiàn)、流量路由,從而輕松的將部署與發(fā)布分開(kāi),使新版本的服務(wù)更加可靠。

微服務(wù)架構(gòu)下DLI的部署和運(yùn)維怎么理解

監(jiān)控告警提升整體運(yùn)維能力

免運(yùn)維也是DLI作為Serverless云服務(wù)面向客戶時(shí)的一個(gè)重要的特性,我們是如何實(shí)現(xiàn)整個(gè)服務(wù)的運(yùn)維呢?今天就說(shuō)說(shuō)DLI是如何實(shí)現(xiàn)監(jiān)控告警來(lái)提升整體運(yùn)維能力,從而為客戶更好的提供Serverless的DLI。

微服務(wù)架構(gòu)下DLI的部署和運(yùn)維怎么理解

上圖是DLI服務(wù)的整體部署架構(gòu),作為Serverless服務(wù)其全面擁抱云原生技術(shù),無(wú)論是對(duì)外提供任務(wù)管理的微服務(wù)還是最終執(zhí)行任務(wù)的計(jì)算單元,其都是基于Kubernetes來(lái)部署,這也更好的實(shí)現(xiàn)了Serverless的快速?gòu)椥陨炜s。

對(duì)于DLI服務(wù)的監(jiān)控告警我們當(dāng)前主要從以下幾個(gè)方面來(lái)考慮:

1.全局維度,主要是整體API的QPS、成功率和響應(yīng)時(shí)延

DLI作為Serverless大數(shù)據(jù)計(jì)算服務(wù),其對(duì)外均以REST API的形式提供服務(wù),因此API的QPS和響應(yīng)時(shí)延直接反映了服務(wù)對(duì)外的能力,而成功率更是服務(wù)SLA的直接體現(xiàn)。

2. OS維度,主要是容器宿主的CPU使用率、內(nèi)存使用率、磁盤使用率、上下行流量

無(wú)論部署的架構(gòu)、技術(shù)如何演進(jìn),對(duì)基礎(chǔ)資源的監(jiān)控都是最基本和必須的。

3.容器維度,主要是CPU使用率、內(nèi)存使用率、K8s空間和用戶空間使用率、POD的健康度

容器是虛擬機(jī)的演進(jìn),因此對(duì)于容器的資源監(jiān)控也是最基本的。我們的微服務(wù)或計(jì)算單元都是以容器運(yùn)行在Kubernetes集群上,因此對(duì)于POD的健康狀態(tài)的監(jiān)控也是必須的。

4.微服務(wù)維度,主要是流量、性能、健康檢查和關(guān)鍵日志等

監(jiān)控是為了更好的發(fā)現(xiàn)和解決問(wèn)題,因此核心還是業(yè)務(wù)層面的監(jiān)控。DLI是一個(gè)復(fù)雜的分布式Serverless應(yīng)用,其內(nèi)部根據(jù)不同領(lǐng)域模型又分為不同的微服務(wù),因此對(duì)于微服務(wù)內(nèi)部的流量、性能等的監(jiān)控則是衡量各微服務(wù)可靠性的重要指標(biāo)。一個(gè)好的系統(tǒng)往往有完善的日志體系,通過(guò)對(duì)關(guān)鍵日志進(jìn)行監(jiān)控則能夠幫助我們快速發(fā)現(xiàn)和定位問(wèn)題,因此這也是我們?cè)跇I(yè)務(wù)維度的監(jiān)控上的重點(diǎn)。

關(guān)于微服務(wù)架構(gòu)下DLI的部署和運(yùn)維怎么理解問(wèn)題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒(méi)有解開(kāi),可以關(guān)注億速云行業(yè)資訊頻道了解更多相關(guān)知識(shí)。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI