李偉良,李 巖,張曉亮,孫建剛,時(shí)佳偉,段嘉琦
(國家電網(wǎng)有限公司信息通信分公司,北京 100761)
近年來,全國各地政府和企業(yè)投入大量的精力和資金建設(shè)云平臺(tái),例如公有云、政務(wù)云、電網(wǎng)云、工業(yè)云以及多種行業(yè)云,希望借助云平臺(tái)促進(jìn)數(shù)字化轉(zhuǎn)型[1-2]。
在建云過程中,考慮到安全、成本和穩(wěn)定等各方面因素,都采用了混合云建設(shè)策略。在云平臺(tái)建設(shè)前期,缺乏對(duì)云平臺(tái)運(yùn)營運(yùn)維的支撐、管理和服務(wù)的考慮和重視,導(dǎo)致不滿足云平臺(tái)運(yùn)營運(yùn)維需求,無法實(shí)現(xiàn)對(duì)全網(wǎng)云平臺(tái)運(yùn)行情況、故障告警全方位掌控,無法確保云上業(yè)務(wù)系統(tǒng)穩(wěn)定運(yùn)行。
本文將基于混合云監(jiān)控的痛點(diǎn),開展云平臺(tái)監(jiān)控體系研究,實(shí)現(xiàn)混合云平臺(tái)統(tǒng)一納管、集中監(jiān)控、精細(xì)運(yùn)營,最終實(shí)現(xiàn)云平臺(tái)全棧式監(jiān)控[3-4]。
隨著企業(yè)云平臺(tái)建設(shè)進(jìn)度的推進(jìn),企業(yè)云平臺(tái)用戶數(shù)目極速增加,云平臺(tái)監(jiān)控?cái)?shù)據(jù)以TB級(jí)別飛速增長(zhǎng)。同時(shí)虛擬化與容器技術(shù)廣泛應(yīng)用,IT系統(tǒng)架構(gòu)日益復(fù)雜。許多企業(yè)借用多個(gè)運(yùn)維工具監(jiān)控業(yè)務(wù)系統(tǒng),獲得不同類型的數(shù)據(jù),以滿足運(yùn)營運(yùn)維的需要。企業(yè)云平臺(tái)需要快速得到監(jiān)控?cái)?shù)據(jù)的分析結(jié)果,以進(jìn)行運(yùn)營管理決策。因此處理海量且離散的監(jiān)控?cái)?shù)據(jù)需要高效[5-7]。
基于云平臺(tái)監(jiān)控體系現(xiàn)狀,分析企業(yè)云平臺(tái)監(jiān)控體系的痛點(diǎn)問題,展開多云平臺(tái)監(jiān)控體系建設(shè)研究,實(shí)現(xiàn)企業(yè)多云平臺(tái)監(jiān)控體系需求。多云平臺(tái)監(jiān)控體系建設(shè)主要分四個(gè)方向開展研究:監(jiān)控對(duì)象、監(jiān)控維度、監(jiān)控指標(biāo)以及監(jiān)控告警,并基于這四個(gè)監(jiān)控方向進(jìn)行深度分析研究,如圖1所示。
圖1 云平臺(tái)監(jiān)控邏輯圖
由于異構(gòu)云之間的差異,不能使用統(tǒng)一的方式對(duì)云平臺(tái)進(jìn)行監(jiān)控,每種云平臺(tái)都有自己的監(jiān)控指標(biāo)和監(jiān)控工具,并且各云平臺(tái)提供的監(jiān)控工具不能覆蓋云上的所有組件,適合混合云平臺(tái)的統(tǒng)一監(jiān)控體系來屏蔽不同云平臺(tái)的差異,實(shí)現(xiàn)對(duì)云平臺(tái)進(jìn)行全面的監(jiān)控。
通過剖析云平臺(tái)內(nèi)部結(jié)構(gòu),采用分層監(jiān)控策略,監(jiān)控體系主要分為基礎(chǔ)設(shè)施層、云平臺(tái)底座組件層、云產(chǎn)品層共三層,實(shí)現(xiàn)各層面多維度監(jiān)控?cái)?shù)據(jù)的互聯(lián)互通。各層通過不同的采集工具進(jìn)行數(shù)據(jù)采集,采集的數(shù)據(jù)交給數(shù)據(jù)處理模塊進(jìn)行統(tǒng)一的處理分析。
基礎(chǔ)設(shè)施包括機(jī)房及物理IT設(shè)備,對(duì)于機(jī)房數(shù)據(jù)的采集可結(jié)合推拉模式從數(shù)據(jù)中心獲取監(jiān)控?cái)?shù)據(jù),物理設(shè)備使用硬件監(jiān)控工具IPMI進(jìn)行數(shù)據(jù)采集,最后采集的數(shù)據(jù)通過調(diào)用監(jiān)控平臺(tái)的數(shù)據(jù)傳輸接口,將數(shù)據(jù)匯集到多云平臺(tái)監(jiān)控體系中,進(jìn)行統(tǒng)一分析處理和存儲(chǔ)。
圖2 云平臺(tái)內(nèi)部結(jié)構(gòu)圖
云平臺(tái)層采集的對(duì)象包括服務(wù)器OS、云平臺(tái)底座、云產(chǎn)品組件以及云資源池。監(jiān)控指標(biāo)分為基礎(chǔ)配置指標(biāo)、性能指標(biāo)、portal探測(cè)指標(biāo)等。這些產(chǎn)品一般由成熟的云廠商提供,通過調(diào)用產(chǎn)品的API接口來獲取監(jiān)控?cái)?shù)據(jù)。監(jiān)控?cái)?shù)據(jù)采集后經(jīng)過數(shù)據(jù)處理和分析后傳輸?shù)皆破脚_(tái)數(shù)據(jù)存儲(chǔ)中心。
云服務(wù)層是指云平臺(tái)云產(chǎn)品對(duì)用戶提供云服務(wù)能力。根據(jù)云服務(wù)資源配置模式的不同,云服務(wù)分為三類服務(wù)模式:IaaS、PaaS、SaaS。這些服務(wù)都是由云廠商提供,廠商也提供了監(jiān)控工具和監(jiān)控API接口進(jìn)行監(jiān)控?cái)?shù)據(jù)的采集。采集的數(shù)據(jù)經(jīng)過數(shù)據(jù)處理和分析后傳輸?shù)浇y(tǒng)一的存儲(chǔ)中心[8]。
構(gòu)建云平臺(tái)數(shù)據(jù)存儲(chǔ)中心,實(shí)現(xiàn)監(jiān)測(cè)數(shù)據(jù)和應(yīng)用數(shù)據(jù)的統(tǒng)一存儲(chǔ)。云平臺(tái)數(shù)據(jù)存儲(chǔ)中心根據(jù)業(yè)務(wù)監(jiān)測(cè)、數(shù)據(jù)分析場(chǎng)景,采用多項(xiàng)數(shù)據(jù)存儲(chǔ)方式組合,依據(jù)時(shí)序分庫的方案進(jìn)行數(shù)據(jù)存儲(chǔ)設(shè)計(jì)。根據(jù)使用場(chǎng)景,將數(shù)據(jù)庫存儲(chǔ)庫分為:實(shí)時(shí)庫、歷史庫、歸檔庫。實(shí)時(shí)庫支撐系統(tǒng)運(yùn)行實(shí)時(shí)監(jiān)測(cè)、系統(tǒng)異常及業(yè)務(wù)異常實(shí)時(shí)告警、系統(tǒng)問題及業(yè)務(wù)問題快速定位等高時(shí)效性平臺(tái)能力運(yùn)行;歷史庫主要支撐經(jīng)驗(yàn)分析、趨勢(shì)分析、預(yù)測(cè)分析等離線分析能力;歸檔庫主要用于歷史問題溯源、人工智能數(shù)據(jù)模型訓(xùn)練等業(yè)務(wù)功能。
(1)監(jiān)測(cè)數(shù)據(jù)包括:業(yè)務(wù)監(jiān)測(cè)數(shù)據(jù)、應(yīng)用監(jiān)測(cè)數(shù)據(jù)、租戶監(jiān)測(cè)數(shù)據(jù)、云平臺(tái)監(jiān)測(cè)數(shù)據(jù)、物理監(jiān)測(cè)數(shù)據(jù)。
(2)應(yīng)用數(shù)據(jù)包括:監(jiān)測(cè)分析數(shù)據(jù)、配置數(shù)據(jù)。
(3)存儲(chǔ)的數(shù)據(jù)格式包括:結(jié)構(gòu)化數(shù)據(jù)、非結(jié)構(gòu)化數(shù)據(jù)、鏈路拓?fù)鋽?shù)據(jù)、實(shí)時(shí)流數(shù)據(jù)等,因此數(shù)據(jù)存儲(chǔ)中心使用多種數(shù)據(jù)庫來滿足不同格式數(shù)據(jù)的存儲(chǔ),比如:GDB、ES、TSDB、RDS、flume、Redis等[9-10]。
多云平臺(tái)監(jiān)控體系將不同云平臺(tái)的監(jiān)控告警工具統(tǒng)一集成,構(gòu)建統(tǒng)一的展示平臺(tái),實(shí)現(xiàn)監(jiān)控、告警等數(shù)據(jù)的統(tǒng)一展現(xiàn),將離散的組件監(jiān)控?cái)?shù)據(jù)按照邏輯組織起來,結(jié)合報(bào)表和圖標(biāo)組件,以折線圖、柱狀圖等圖表形式,提供指標(biāo)可視化展現(xiàn)[11]。
針對(duì)項(xiàng)目云平臺(tái)告警等信息推送功能缺失和告警項(xiàng)可讀性差的問題,建立統(tǒng)一的告警中心,將告警數(shù)據(jù)進(jìn)行統(tǒng)一采集、分析、收斂和展示,實(shí)現(xiàn)告警的標(biāo)準(zhǔn)化與實(shí)時(shí)通知能力,優(yōu)化處理效率,減少服務(wù)不可用時(shí)間。支持Email或者短信、微信等多種方式的告警實(shí)時(shí)通知。
圖3 云平臺(tái)數(shù)據(jù)存儲(chǔ)圖
3.5.1 告警定級(jí)
根據(jù)物理設(shè)備層、云平臺(tái)組件層、云產(chǎn)品層、業(yè)務(wù)系統(tǒng)層進(jìn)行分類,對(duì)不同告警對(duì)象,結(jié)合告警內(nèi)容和觸發(fā)條件、閥值對(duì)告警進(jìn)行分級(jí),分為故障告警、嚴(yán)重告警和一般告警。
(1)故障告警表示出現(xiàn)該告警即可視為已發(fā)生故障。
(2)嚴(yán)重告警表示該告警不引發(fā)故障,主要對(duì)核心組件或業(yè)務(wù)可用性造成隱患,如核心組件資源水位過高、平臺(tái)底座節(jié)點(diǎn)宕機(jī)等,若不及時(shí)處置將引發(fā)故障。
(3)一般告警表示不對(duì)平臺(tái)或業(yè)務(wù)可用性造成影響,或僅對(duì)非核心組件可用性產(chǎn)生隱患,如非核心組件的單臺(tái)物理服務(wù)器硬件故障等。
3.5.2 告警規(guī)則
告警規(guī)則配置包含單指標(biāo)告警規(guī)則配置、多指標(biāo)告警規(guī)則配置、告警抑制、告警屏蔽等策略。
(1)單指標(biāo)告警規(guī)則配置:?jiǎn)沃笜?biāo)告警規(guī)則配置主要對(duì)監(jiān)控對(duì)象單一監(jiān)控指標(biāo)進(jìn)行告警規(guī)則設(shè)置,用于簡(jiǎn)單場(chǎng)景下監(jiān)控告警。
(2)多指標(biāo)告警規(guī)則配置:多指標(biāo)告警規(guī)則配置主要針對(duì)復(fù)雜場(chǎng)景,需對(duì)多監(jiān)控對(duì)象多監(jiān)控指標(biāo)進(jìn)行關(guān)系分析和影響分析后制定的復(fù)雜告警規(guī)則。
(3)告警抑制:告警抑制策略是為了防止故障期間,產(chǎn)生告警風(fēng)暴,郵箱、短信等通知被海量告警淹沒,運(yùn)維人員很難從海量告警中篩選出重要告警,容易忽略重要告警。為了讓運(yùn)維人員更專注于重要告警,可通過四種方式實(shí)現(xiàn)告警的壓縮合并,分別為自動(dòng)去重壓縮、自定義壓縮、時(shí)間窗口智能降噪和實(shí)時(shí)智能降噪。
自動(dòng)去重壓縮:系統(tǒng)內(nèi)置去重策略,基于時(shí)間序列將相同告警根據(jù)告警ID和告警標(biāo)題去除重復(fù)告警。例如:系統(tǒng)中有未關(guān)閉的告警,若告警ID或告警標(biāo)題相同,則自動(dòng)合并告警;
自定義壓縮:在面臨具有可預(yù)測(cè)、同質(zhì)化告警數(shù)據(jù)的組件上,可以通過自定義配置壓縮規(guī)則來合并該組件的告警數(shù)據(jù)。在啟用自定義壓縮時(shí),符合規(guī)則的同質(zhì)類告警會(huì)被壓縮至第一條告警下,直至該條告警被關(guān)閉;
時(shí)間窗口智能降噪:面臨規(guī)律性地在短時(shí)間內(nèi)產(chǎn)生海量告警的組件時(shí),可采用時(shí)間窗口智能降噪,將所設(shè)置時(shí)間窗口內(nèi)發(fā)生的海量告警根據(jù)所配置規(guī)則壓縮后,再進(jìn)行分派通知;
實(shí)時(shí)智能降噪:面臨具有海量數(shù)據(jù),告警數(shù)據(jù)無明顯規(guī)則且不可預(yù)測(cè)時(shí),可采用實(shí)時(shí)智能降噪,智能算法會(huì)根據(jù)標(biāo)題內(nèi)容/告警標(biāo)題等指標(biāo)對(duì)告警進(jìn)行智能壓縮,大幅度提高告警數(shù)據(jù)的有效性。
(4)告警屏蔽:當(dāng)涉及云平臺(tái)組件檢修升級(jí)時(shí),需提前對(duì)相關(guān)組件設(shè)置告警屏蔽,防止告警誤報(bào)。
告警中心統(tǒng)一處理云平臺(tái)各層的監(jiān)控告警數(shù)據(jù),針對(duì)云平臺(tái)故障、告警進(jìn)一步精細(xì)劃分,通過云管平臺(tái)實(shí)現(xiàn)告警的分級(jí)、轉(zhuǎn)譯,實(shí)現(xiàn)故障、嚴(yán)重、一般三級(jí)監(jiān)控,形成高效的兩級(jí)協(xié)同告警及故障處置機(jī)制[12-13]。
在數(shù)字化轉(zhuǎn)型的背景下,電力行業(yè)混合云穩(wěn)定快速的發(fā)展對(duì)云平臺(tái)的監(jiān)控提出了更高要求。混合云平臺(tái)架構(gòu)復(fù)雜,阿里云、華為云架構(gòu)共存,網(wǎng)絡(luò)設(shè)備、存儲(chǔ)設(shè)備、安全設(shè)備、云平臺(tái)基礎(chǔ)軟件、云產(chǎn)品等監(jiān)控對(duì)象繁多,監(jiān)控?cái)?shù)據(jù)分散,多個(gè)監(jiān)控平臺(tái)并行,監(jiān)控對(duì)象缺乏統(tǒng)一定義。本文針對(duì)這些問題,對(duì)多平臺(tái)環(huán)境下的監(jiān)控體系進(jìn)行深入研究和剖析,提出了建立多云平臺(tái)下統(tǒng)一監(jiān)控的必要性,以及對(duì)多云平臺(tái)監(jiān)控體系進(jìn)行功能和架構(gòu)設(shè)計(jì),希望能夠?yàn)槿蘸蠖嘣破脚_(tái)監(jiān)控體系的實(shí)現(xiàn)提供技術(shù)依據(jù)。