久久午夜夜伦鲁鲁片免费无码影视,国产一区二区三区不卡av,无码人妻一区二区三区线,成人无码av片在线观看蜜桃

行業(yè)動(dòng)態(tài)

了解最新公司動(dòng)態(tài)及行業(yè)資訊

當(dāng)前位置:首頁>新聞中心>行業(yè)動(dòng)態(tài)
全部 4097 公司動(dòng)態(tài) 961 行業(yè)動(dòng)態(tài) 3136

京東云架構(gòu)師運(yùn)維體系構(gòu)建:如何保持客戶在云端業(yè)務(wù)的穩(wěn)定性?

時(shí)間:2022-11-02   訪問量:1902

京東云作為京東集團(tuán)對(duì)外輸出能力的窗口,實(shí)現(xiàn)京東能力+云平臺(tái)賦能客戶。其產(chǎn)品涵蓋IaaS層、PaaS層以及以此為基礎(chǔ)的電子商務(wù)、物流、金融、保險(xiǎn)等領(lǐng)域的服務(wù)和解決方案。本文主要從保障這些服務(wù)的穩(wěn)定性和效率的角度來講解京東云自動(dòng)化運(yùn)維系統(tǒng)的構(gòu)建和實(shí)現(xiàn)。

2017年12月1日至2日,由51CTO主辦的WOTD全球軟件開發(fā)技術(shù)峰會(huì)在深圳中州萬豪酒店舉行。

京東云高級(jí)架構(gòu)師在主會(huì)場(chǎng)與來賓分享了《京東云自動(dòng)化運(yùn)維系統(tǒng)建設(shè)》的主題演講。以下是演講稿。

說到京東云,我們最看重運(yùn)維,需要一個(gè)自動(dòng)化的運(yùn)維平臺(tái)。這方面有幾個(gè)關(guān)鍵問題,主要圍繞安全、部署變更、網(wǎng)絡(luò)管理、監(jiān)控管理……使用自動(dòng)化運(yùn)維來提高平臺(tái)架構(gòu)的穩(wěn)定性和人員的開發(fā)效率。

在京東云的整體環(huán)境中,除了我們的技術(shù)團(tuán)隊(duì)管理和維護(hù)的云應(yīng)用外,還啟用和提供了各種SaaS服務(wù)。

如何在云端維護(hù)客戶業(yè)務(wù)的穩(wěn)定性?我們對(duì)此進(jìn)行了深入的研究和探索,我們將分四個(gè)部分進(jìn)行說明:

京東云自動(dòng)化運(yùn)維基礎(chǔ)組件

針對(duì)以上問題,我們從四個(gè)方面入手:

如上圖所示,京東云運(yùn)維平臺(tái)的大致建設(shè)路線圖是:基礎(chǔ)組件→客戶端系統(tǒng)→部署系統(tǒng)(包括:各種發(fā)布系統(tǒng)、任務(wù)調(diào)度系統(tǒng)、監(jiān)控系統(tǒng)),最后完善運(yùn)營(yíng)和維護(hù)平臺(tái)。,以便更好地服務(wù)于我們的客戶。

服務(wù)和資源管理

首先我們來看第一個(gè)基礎(chǔ)組件:服務(wù)組織資源的管理it運(yùn)維,也就是利用CMDB來實(shí)現(xiàn)所謂的配置管理。

通過CMDB的“服務(wù)樹”概念,我們可以把握以下三個(gè)方面:

因此,“服務(wù)樹”主要涉及到系統(tǒng)中服務(wù)的實(shí)時(shí)信息,包括:哪個(gè)服務(wù)在哪臺(tái)機(jī)器上,哪些實(shí)例,屬于哪個(gè)App,內(nèi)部有哪些邏輯進(jìn)程,以及如何申請(qǐng)所需的外部權(quán)限,以及我們?nèi)绾螌?duì)其進(jìn)行監(jiān)控等。這些都需要從服務(wù)器獲得。

其次,可以解決服務(wù)之間的解耦關(guān)系,即服務(wù)與實(shí)例的關(guān)系,以及服務(wù)對(duì)外提供的窗口。

上圖右側(cè)為“服務(wù)樹”與名稱服務(wù)的示意圖。底部顯示了從應(yīng)用程序到實(shí)例的解耦關(guān)系,頂部是客戶端的退避()。

任務(wù)調(diào)度管理

第二個(gè)基本組成部分是任務(wù)調(diào)度管理。在實(shí)際場(chǎng)景中,無論我們是想?yún)f(xié)同操作、在線發(fā)布,還是部署和分發(fā)文件。

這些都需要系統(tǒng)調(diào)度目標(biāo)機(jī)器完成相應(yīng)的任務(wù),也就是我們必須要求指定的機(jī)器能夠按照指定的策略執(zhí)行指定的命令。由于該過程的實(shí)時(shí)性、批處理性和共生性,支持該系統(tǒng)極具挑戰(zhàn)性。

同時(shí),我們需要通過策略來定義不同類型的并發(fā)。比如我們要發(fā)布一百臺(tái)機(jī)器,那么我們不會(huì)同時(shí)部署,而是批量并發(fā)。

因此,我們需要指定每個(gè)并發(fā)的具體任務(wù),判斷成功與否的邏輯關(guān)系,檢查具體的完成程度,還要找出那些超時(shí)的狀態(tài)。由于這些是通過底層架構(gòu)構(gòu)建的各種服務(wù),它們的調(diào)度邏輯其實(shí)是一樣的。

此外,所有執(zhí)行操作都需要可追溯,包括能夠知道誰、何時(shí)以及執(zhí)行了哪些操作??梢姷陌踩院蜆?biāo)準(zhǔn)化非常重要。

而如果出現(xiàn)故障,我們需要及時(shí)截取輸出來定位問題。這些是任務(wù)調(diào)度系統(tǒng)基于服務(wù)樹求和需要實(shí)現(xiàn)的基本邏輯。

監(jiān)控平臺(tái)

第三個(gè)基本組成部分是監(jiān)控平臺(tái)。監(jiān)控?zé)o非是一個(gè)從數(shù)據(jù)采集、到數(shù)據(jù)聚合、再到存儲(chǔ)和處理的過程。

與通常的數(shù)據(jù)監(jiān)控不同,我們構(gòu)建了一個(gè)時(shí)間序列數(shù)據(jù)存儲(chǔ)(TSDB)。由于要查詢的數(shù)據(jù)點(diǎn)比較多,所以我們將每個(gè)查詢和收集到的監(jiān)控點(diǎn)信息按順序存儲(chǔ)。

另外,我們的系統(tǒng)具有“少讀多寫”的特點(diǎn),即“寫”(寫數(shù)據(jù))比較均衡;而“讀取”(讀取數(shù)據(jù))是突發(fā)的。

例如,檢查一個(gè)監(jiān)控的狀態(tài)是一個(gè)隨時(shí)都要做的操作。一般這樣的寫操作需要1秒、10秒或1分鐘作為獲取間隔,這是一個(gè)比較頻繁的過程。讀操作是突然發(fā)生的,所以我們需要分離讀寫。

因此,我們基于 ES() 實(shí)現(xiàn) TSPD,其中涉及到兩個(gè)封裝:

監(jiān)控?cái)?shù)據(jù)的另一個(gè)特點(diǎn)是自動(dòng)采樣。有時(shí),一些頻繁的查詢涉及很大的時(shí)間跨度。

例如:一個(gè)月甚至一年。由于我們的數(shù)據(jù)采集間隔是1秒、10秒或者1分鐘,如果直接查詢所有的數(shù)據(jù)點(diǎn),需要產(chǎn)生海量的數(shù)據(jù),這當(dāng)然是很難實(shí)現(xiàn)的。

因此,我們自動(dòng)對(duì)寫操作進(jìn)行采樣。當(dāng)查詢超過15天的數(shù)據(jù)時(shí),我們會(huì)按分鐘或每小時(shí)匯總數(shù)據(jù),放入數(shù)據(jù)庫,然后查詢一個(gè)月的數(shù)據(jù)。

通過自適應(yīng)路由,我們可以找到有限的一小時(shí)數(shù)據(jù),同時(shí)我們的數(shù)據(jù)庫和業(yè)務(wù)系統(tǒng)速度也可以有更快的水平。

另外,對(duì)于那些實(shí)時(shí)數(shù)據(jù)處理,我們主要采用基于JNS的多地點(diǎn)部署和多調(diào)度流程,從而實(shí)現(xiàn)多維實(shí)時(shí)計(jì)算。

客戶

第四個(gè)基本組件是客戶端。由于所有業(yè)務(wù)都需要客戶端,對(duì)于京東這樣大的公司,會(huì)細(xì)分為部署類(如JNS)、監(jiān)控類、初始化等客戶端類型。

想象一下,如果我們需要加載、部署或升級(jí) 100,000 臺(tái)機(jī)器,工作量是可想而知的。

即使我們只維護(hù)一個(gè)幾十萬臺(tái)機(jī)器的Agent,由于環(huán)境復(fù)雜,多個(gè)IP的存在,根據(jù)一個(gè)“何時(shí)何地出問題”來處理會(huì)很費(fèi)時(shí)費(fèi)力。單一維度。

所以這里我們介紹一下Agent資源溢出的重要概念。比如對(duì)Agent的監(jiān)控,由于占用了一些計(jì)算資源,當(dāng)前的服務(wù)可能會(huì)被關(guān)閉,所以這種服務(wù)外的監(jiān)控會(huì)影響服務(wù)本身的穩(wěn)定性。

可以看出,Agent客戶端需要做以下事情:

在具體實(shí)現(xiàn)中,我們使用 ifrit 進(jìn)行控制。也就是當(dāng)一臺(tái)機(jī)器在引入服務(wù)時(shí),負(fù)責(zé)管理的agent會(huì)在我們的ifrit服務(wù)器上注冊(cè),告知它當(dāng)前的分機(jī)房和使用的agent的版本。

然后其對(duì)應(yīng)的客戶端就可以相應(yīng)的下載這些信息包,從而掌握最新版本的Agent等信息。這導(dǎo)致了一個(gè)簡(jiǎn)單的客戶端架構(gòu)。

京東云自動(dòng)化運(yùn)維部署介紹

有了上述客戶端和組件系統(tǒng)的構(gòu)建基礎(chǔ),我們進(jìn)一步構(gòu)建部署和發(fā)布任務(wù)就相對(duì)容易了。

我們先來看看應(yīng)用的部署系統(tǒng)。除了實(shí)現(xiàn)應(yīng)用部署外,它還管理各種服務(wù)的維護(hù)和資源,以及訪問的過程。

如上圖所示: 除了編譯構(gòu)建“”之外,我們還實(shí)現(xiàn)了流量訪問“”。

如上圖所示,這里的Agent有一個(gè)核心需求:實(shí)現(xiàn)跨平臺(tái)。由于京東整體平臺(tái)環(huán)境復(fù)雜,我們有不同的虛擬機(jī)、物理機(jī),需要整合上面提到的各種操作。

因此,我們需要實(shí)現(xiàn)以下容錯(cuò)功能:

對(duì)于上述功能的實(shí)現(xiàn),我們將部署分為兩種:

大體流程是:編譯構(gòu)建自己的產(chǎn)品庫(包括代碼包和代碼項(xiàng))→通過部署服務(wù)和上述調(diào)度系統(tǒng)的部署服務(wù)發(fā)布(物理機(jī)和容器都可以實(shí)現(xiàn))→部署完成并開始運(yùn)行→對(duì)運(yùn)維(尤其是鏡像日志的收集)→通過日志服務(wù)進(jìn)一步分析。

同時(shí)我們?cè)谇岸俗龊昧肆髁拷尤?,中間還提供了一個(gè)LB(負(fù)載均衡)網(wǎng)絡(luò)。通過以上兩種部署方式,我們可以根據(jù)服務(wù)的實(shí)際需求進(jìn)行按需升級(jí)。

此外,我們這里使用的是基于 NS 的服務(wù)自動(dòng)化和資源管理。它不需要關(guān)心當(dāng)前服務(wù)的具體流程是如何實(shí)現(xiàn)的,只關(guān)注:當(dāng)前的容量,需要什么資源,可以獲得的資源。

京東云自動(dòng)化運(yùn)維監(jiān)控系統(tǒng)

除了上面提到的部署,我們還非常重視監(jiān)控系統(tǒng)。監(jiān)控最重要的作用是能夠在出現(xiàn)問題時(shí)及時(shí)恢復(fù)。

為此,必須完成以下工作:

因此,面對(duì)虛擬機(jī)和復(fù)雜環(huán)境,為了保證服務(wù)器不停止運(yùn)行,我們?cè)谏暇€過程中采用了-分層發(fā)布。

它可以監(jiān)控一個(gè)服務(wù)是否在機(jī)器層、服務(wù)層、外部流量訪問層,甚至網(wǎng)絡(luò)層。這些都是監(jiān)控需要解決的問題。

上圖是監(jiān)控的整體架構(gòu),展示了從底層數(shù)據(jù)抽象,到數(shù)據(jù)采集,再到數(shù)據(jù)處理和離線處理的全流程。

數(shù)據(jù)采集??方式包括:采集代理、外部檢測(cè)和API推送。

同時(shí),處理邏輯包括:如何判斷異常類型,對(duì)異常做出何種告警,運(yùn)維溝通或研發(fā)溝通的方式。這些步驟都是提前計(jì)劃好的。

當(dāng)然,這些失敗本身就是事件類型。因此,我們需要考慮如何存儲(chǔ)事件以方便查詢和進(jìn)一步?jīng)Q策。

由于之前的事件可能會(huì)影響到后續(xù)的事件,如果你有一個(gè)好的事件庫,那么你可以讓系統(tǒng)下游知道上游發(fā)生故障的時(shí)間和地點(diǎn),這對(duì)于下游故障排除非常有用。都非常有幫助。

同時(shí),我們也會(huì)對(duì)監(jiān)測(cè)到的數(shù)據(jù)進(jìn)行一些離線處理,通過各種高效算法反饋給相應(yīng)的告警計(jì)算。最終以趨勢(shì)圖或各種事件、報(bào)警的形式顯示各種數(shù)據(jù)。

在之前的基礎(chǔ)上it運(yùn)維,我們構(gòu)建的京東云監(jiān)控系統(tǒng)由以下四種監(jiān)控類型組成:

其實(shí)這個(gè)問題對(duì)于京東來說會(huì)很嚴(yán)重,因?yàn)樗鼤?huì)直接影響到用戶流量甚至用戶訂單的流失,所以我們需要從用戶層面做黑盒檢測(cè)。

基本監(jiān)控

具體而言,對(duì)于機(jī)器監(jiān)控,我們將機(jī)器連接的整個(gè)過程自動(dòng)化,從采集到計(jì)算,再到報(bào)警,從而避免人工干預(yù)。

同時(shí),我們?yōu)楦鞣N報(bào)警指標(biāo)設(shè)置了默認(rèn)值。例如,通過發(fā)現(xiàn)某臺(tái)機(jī)器的cpu.idle小于10%,我們可以從服務(wù)名知道它所屬的服務(wù),以及誰是維護(hù)者,然后向它的維護(hù)者發(fā)送告警信息,并通過報(bào)警信息,可以大致了解相關(guān)數(shù)據(jù),從而實(shí)現(xiàn)后臺(tái)聯(lián)動(dòng)。

生存監(jiān)測(cè)

對(duì)于生存監(jiān)控,主要檢查進(jìn)程和端口是否存活。為了實(shí)現(xiàn)部署聯(lián)動(dòng),我們指定進(jìn)程和端口的部署路徑。

通過進(jìn)程的路徑,我們可以知道進(jìn)程的類型和對(duì)外開放的端口,從而實(shí)現(xiàn)自然監(jiān)控。

性能監(jiān)控

再來看看性能監(jiān)控,主要關(guān)注服務(wù)的外部指標(biāo),一般來自日志。

為了統(tǒng)一,我們規(guī)定、規(guī)范、約定了一種日志格式,從多個(gè)維度讀取日志信息中不同的標(biāo)簽(tag)值。

比如,從宏觀層面來看,京東整體流量是穩(wěn)定的,但通過多維度聚合可以發(fā)現(xiàn),某省機(jī)房流量存在細(xì)微的底層波動(dòng)。

當(dāng)然,除了主動(dòng)從日志中抓取,我們還可以從程序和用戶的告警中學(xué)習(xí)。

業(yè)務(wù)監(jiān)控

業(yè)務(wù)監(jiān)控就是從用戶那里檢查服務(wù)是否正常。比如電商中常用的就是通過模擬全國(guó)用戶訪問,找出分省、分運(yùn)營(yíng)商或分機(jī)房的訪問情況。

這是使用外部網(wǎng)絡(luò)或自定義方法來測(cè)試業(yè)務(wù)。此外,我們還將使用模擬云操作的方法來監(jiān)控云服務(wù)。

例如:模擬用戶登錄云網(wǎng)站→購買主機(jī)→部署鏡像→發(fā)布。

讓我們判斷一切是否正常。通過這種方式,我們能夠在用戶之前從用戶的角度識(shí)別、處理和解決問題。

總結(jié)與展望

如上圖所示,我們最終在上一個(gè)的基礎(chǔ)上搭建了京東云自動(dòng)化運(yùn)維平臺(tái)方舟。

在界面上,它可以提供:

綜上所述,我們的監(jiān)控自動(dòng)化平臺(tái)通過各種技術(shù)的應(yīng)用,基本實(shí)現(xiàn)了服務(wù)化,實(shí)現(xiàn)了全生命周期。

面對(duì)大量的 SaaS 客戶,我們的解決方案為他們提供有保障的交付效率、成本節(jié)約以及對(duì)各種可能出現(xiàn)的問題的準(zhǔn)備。

組織/夏立成 上海藍(lán)夢(mèng)創(chuàng)始人兼CEO,湖北IT公司副總裁,致力于為企業(yè)客戶提供IT外包網(wǎng)絡(luò)維護(hù)服務(wù),幫助他們創(chuàng)新、迭代和進(jìn)化。

藍(lán)盟1999年成立于上海,致力于為企業(yè)客戶提供IT外包、弱電工程(網(wǎng)絡(luò)布線、機(jī)房建設(shè)、門禁考勤、視頻監(jiān)控、電話交換機(jī)、多媒體會(huì)議室)、系統(tǒng)集成(網(wǎng)絡(luò)搭建、網(wǎng)絡(luò)改造)、WIFI覆蓋、數(shù)據(jù)備份、病毒防護(hù)、文件權(quán)限、虛擬化等)、云服務(wù)(微軟云、阿里云、企業(yè)郵箱等)“一站式”IT外包解決方案。, 咨詢。

上一篇:藍(lán)盟IT小貼士,來嘍!下一個(gè)角色是網(wǎng)絡(luò)運(yùn)營(yíng)

下一篇:網(wǎng)絡(luò)服務(wù)的基本術(shù)語為網(wǎng)絡(luò)服務(wù)建立基本詞匯表(圖)

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

評(píng)論記錄:

未查詢到任何數(shù)據(jù)!

在線咨詢

點(diǎn)擊這里給我發(fā)消息 售前咨詢專員

點(diǎn)擊這里給我發(fā)消息 售后服務(wù)專員

在線咨詢

免費(fèi)通話

24小時(shí)免費(fèi)咨詢

請(qǐng)輸入您的聯(lián)系電話,座機(jī)請(qǐng)加區(qū)號(hào)

免費(fèi)通話

微信掃一掃

微信聯(lián)系
返回頂部