美林?jǐn)?shù)據(jù)技術(shù)專家團隊|如何通過基于云原生的智能監(jiān)測體系實現(xiàn)企業(yè)提質(zhì)增效
微服務(wù)容器化部署作為當(dāng)前較為成熟的應(yīng)用上線部署方式,具有進程隔離、文件系統(tǒng)隔離、資源隔離的優(yōu)勢。但是微服務(wù)容器化部署后由于其自身對進程、文件、資源的隔離特點,使得應(yīng)用服務(wù)的運行狀態(tài)、環(huán)境的監(jiān)控、面臨諸多挑戰(zhàn)。因此如何構(gòu)建一套適合容器化建設(shè)的智能監(jiān)測體系成為企業(yè)當(dāng)下的一個痛點。
本文從“提質(zhì)增效”的角度出發(fā),描述了美林?jǐn)?shù)據(jù)“云原生”監(jiān)測分析的架構(gòu)體系設(shè)計,并對該監(jiān)測體系的架構(gòu)內(nèi)容進行了詳細的介紹。
隨著“云原生”技術(shù)的發(fā)展,分布式微服務(wù)架構(gòu)下應(yīng)用日益豐富,用戶數(shù)量爆發(fā)式增長,紛雜的應(yīng)用異常問題接踵而來。傳統(tǒng)運維模式下多套運維系統(tǒng)上的各項指標(biāo)無法關(guān)聯(lián)分析, 運維人員需要根據(jù)運維經(jīng)驗逐一排查應(yīng)用異常,致使 :
1、大型分布式應(yīng)用關(guān)系錯綜復(fù)雜,分析定位應(yīng)用問題困難,應(yīng)用運維面臨如何保障應(yīng)用正常、快速完成問題定位、迅速找到性能瓶頸的挑戰(zhàn);
2、應(yīng)用體驗差,導(dǎo)致用戶流失。運維人員不能實時感知并追蹤體驗差的業(yè)務(wù),未能及時診斷應(yīng)用異常,嚴(yán)重影響用戶體驗。
針對公司微服務(wù)容器化部署上線后應(yīng)用服務(wù)的運行狀態(tài)、環(huán)境無法監(jiān)控的痛點,本文在美林?jǐn)?shù)據(jù)“云原生”架構(gòu)體系的基礎(chǔ)之上,提出基于“云原生”的智能監(jiān)測體系。
智能監(jiān)測分析體系 本文將從架構(gòu)設(shè)計及建設(shè)內(nèi)容兩個角度出發(fā)來闡述所建設(shè)的智能監(jiān)測體系。
一、云原生架構(gòu) 美林?jǐn)?shù)據(jù)的云原生架構(gòu)涵蓋了智能運維、容器、API驅(qū)動及微服務(wù)四個方面,自上而下可分為:管理服務(wù)層、容器服務(wù)層及平臺服務(wù)層。
其中管理服務(wù)層是美林?jǐn)?shù)據(jù)自主開發(fā)建設(shè)的可視化的操作平臺,該平臺支持應(yīng)用的統(tǒng)一部署、監(jiān)控、配置、維護、擴展、升級等操作。
容器服務(wù)層提供高性能可伸縮的容器應(yīng)用管理能力,支持企業(yè)級容器化應(yīng)用的全生命周期管理;助力企業(yè)高效運行云端Kubernetes容器化應(yīng)用。
平臺服務(wù)層依托現(xiàn)有的公有云、私有云、混合云等新型可動態(tài)伸縮的環(huán)境來構(gòu)建與運行可彈性擴展的應(yīng)用,以虛擬化技術(shù)為基礎(chǔ)、以網(wǎng)絡(luò)為載體提供基礎(chǔ)架構(gòu),整合大規(guī)模可擴展的計算、存儲、數(shù)據(jù)、應(yīng)用等分布式計算資源進行協(xié)同工作的超級計算模式來為容器服務(wù)層提供服務(wù)。
二、云原生智能監(jiān)測體系 關(guān)于智能監(jiān)測分析體系,該體系主要是針對應(yīng)用服務(wù)、硬件資源、容器資源進行主動監(jiān)控與檢查的服務(wù)。通過多視角對容器、應(yīng)用及環(huán)境進行綜合管理,運用交叉比對(自動告警規(guī)則和監(jiān)測的業(yè)務(wù)數(shù)據(jù)進行比對分析)、趨勢分析(不同時間內(nèi)某一個指標(biāo)或者幾個指標(biāo)隨著時間的推移,監(jiān)控指標(biāo)的變化趨勢分析)等方法對異常狀態(tài)進行分析并及時報告,快速定位故障原因,提高系統(tǒng)運維效率,具體架構(gòu)設(shè)計如下圖所示。
?應(yīng)用監(jiān)測 應(yīng)用監(jiān)測在本文描述的智能監(jiān)測分析體系中是為應(yīng)用服務(wù)提供一個監(jiān)測、分析的入口,實現(xiàn)的架構(gòu)如下圖所示:
應(yīng)用服務(wù)監(jiān)測實現(xiàn)對應(yīng)用服務(wù)的全方位監(jiān)控、快速定位出錯接口和慢接口、重現(xiàn)調(diào)用參數(shù)、發(fā)現(xiàn)系統(tǒng)瓶頸,從而大幅提升線上問題診斷的效率。通過探針的方式來捕獲、計算展示出不同端點之間相互調(diào)用鏈,及各個調(diào)用鏈中端點的性能分析結(jié)果。通過3D拓撲圖能立體展示應(yīng)用、服務(wù)和主機的健康狀況,以及應(yīng)用的上下游依賴關(guān)系,幫助您快速定位誘發(fā)故障的服務(wù)、被故障影響的應(yīng)用和關(guān)聯(lián)的主機等。通過對應(yīng)用服務(wù)的實時診斷,提供可視化的瀑布圖的方式來簡便問題的快速定位。
?硬件監(jiān)測 硬件監(jiān)測是本文描述的智能監(jiān)測分析架構(gòu)體系的基礎(chǔ),主要實現(xiàn)對應(yīng)用部署環(huán)境的網(wǎng)絡(luò)狀況和服務(wù)器狀況的監(jiān)控。通過靈活的告警機制來保障運維人員對于異常情況的快速定位與響應(yīng)。通過自定義創(chuàng)建多監(jiān)控項視圖的方式來滿足不同使用的人員對監(jiān)控產(chǎn)品的個性化需求。
通過可視化的網(wǎng)絡(luò)拓撲看板方式實現(xiàn)對監(jiān)控項的可視化配置及可視化的狀態(tài)查看。該模塊通過Agent方式實現(xiàn)對服務(wù)器主機信息的監(jiān)控的涵蓋CPU、內(nèi)存、網(wǎng)絡(luò)、磁盤、文件的監(jiān)控,包括CPU負載、CPU使用率、內(nèi)存使用率、網(wǎng)絡(luò)傳輸、網(wǎng)絡(luò)故障、丟包信息、磁盤使用率、文件監(jiān)控、TCP端口連接,響應(yīng)時間等,硬件監(jiān)控的原理如下圖硬件監(jiān)測原理圖所示。
?容器監(jiān)測 容器監(jiān)測在本文描述的智能監(jiān)測分析體系中實現(xiàn)了容器的實時監(jiān)測、應(yīng)用性能和故障管理及被監(jiān)測服務(wù)的各項指標(biāo)。容器監(jiān)測的架構(gòu)如下圖所示:在智能檢測的過程中,采集的監(jiān)控數(shù)據(jù)均以指標(biāo)(metric)的形式保存在內(nèi)置的時間序列數(shù)據(jù)庫當(dāng)中(TSDB):屬于同一指標(biāo)名稱,同一標(biāo)簽集合的、有時間戳標(biāo)記的數(shù)據(jù)流。除了存儲的時間序列,還可以根據(jù)查詢請求產(chǎn)生臨時的、衍生的時間序列作為返回結(jié)果,監(jiān)控主機可以采用pull的模式,定期從各個agent獲取指標(biāo)數(shù)據(jù),做統(tǒng)一匯總處理。
它既適用于面向服務(wù)器等硬件指標(biāo)的監(jiān)控,也適用于高動態(tài)的面向服務(wù)架構(gòu)的監(jiān)控。它的多維度數(shù)據(jù)收集和數(shù)據(jù)篩選查詢語言能力為現(xiàn)在流行的微服務(wù)提供了強大的技術(shù)支持。它是為服務(wù)的可靠性而設(shè)計的,當(dāng)服務(wù)出現(xiàn)故障時,它可以使你快速定位和診斷問題,并且其自身的搭建過程對硬件和服務(wù)沒有很強的依賴關(guān)系。
基于云原生架構(gòu)的智能監(jiān)測體系,可適用于企業(yè)應(yīng)用上線后對應(yīng)用狀態(tài)、硬件環(huán)境、容器狀態(tài)的監(jiān)測、分析、告警。立足于為企業(yè)提供一個可視化配置、分析的智能監(jiān)測架構(gòu)體系,幫助企業(yè)實時感知并追蹤異常業(yè)務(wù),并為運維人員診斷應(yīng)用異常提供理論指導(dǎo)。