數(shù)據(jù)中心如何面對日志海洋

責(zé)任編輯:cres

作者:harbor

2019-03-14 11:29:33

來源:企業(yè)網(wǎng)D1Net

原創(chuàng)

數(shù)據(jù)中心里有成千上萬臺設(shè)備,每臺設(shè)備在運行過程中都會產(chǎn)生這樣那樣的日志信息,有些是無關(guān)緊要的,而有些則是發(fā)生故障的預(yù)警,及時發(fā)現(xiàn)異常日志,可減少故障發(fā)生,保證業(yè)務(wù)平穩(wěn)運行。

數(shù)據(jù)中心里有成千上萬臺設(shè)備,每臺設(shè)備在運行過程中都會產(chǎn)生這樣那樣的日志信息,有些是無關(guān)緊要的,而有些則是發(fā)生故障的預(yù)警,及時發(fā)現(xiàn)異常日志,可減少故障發(fā)生,保證業(yè)務(wù)平穩(wěn)運行。一方面數(shù)據(jù)中心要求設(shè)備商將設(shè)備運行的故障信息一定要通過日志打印出來,以便數(shù)據(jù)中心運維的人員通過日志就可以知道設(shè)備發(fā)生了故障,提前做準(zhǔn)備;另一方面數(shù)據(jù)中心都要對日志進行甄別,哪些需要關(guān)注,哪些不用關(guān)心,哪些需要立即進行處理。然而,由于數(shù)據(jù)中心里設(shè)備數(shù)量非常多,如果每臺設(shè)備輸出一條日志信息,一萬臺設(shè)備就是一萬條,靠人工去查看,是根本不可能的事兒。那么數(shù)據(jù)中心該如何高效處理這些海量日志信息呢。
 
數(shù)據(jù)中心的日志主要來自三個方面:一是設(shè)備層,對數(shù)據(jù)中心內(nèi)的各種設(shè)備進行監(jiān)控,如:交換機、路由器、安全設(shè)備、服務(wù)器、UPS、精密空調(diào)等,實現(xiàn)物理層實時監(jiān)控和數(shù)據(jù)采集;二是系統(tǒng)層,對數(shù)據(jù)中心主機(Linux主機和x86服務(wù)器)、操作系統(tǒng) (Linux/Winwdos)、數(shù)據(jù)庫(Oracle、Mysql等主流)、中間件、存儲系統(tǒng)、應(yīng)用軟件API、HTTP端口、備份系統(tǒng)、容災(zāi)系統(tǒng)、數(shù)據(jù)同步系統(tǒng)、虛擬化系統(tǒng),云平臺等進行實時監(jiān)控、預(yù)警分析和故障定位;三是業(yè)務(wù)層,采集一定的業(yè)務(wù)數(shù)據(jù),如用戶數(shù)、連接數(shù)、業(yè)務(wù)并發(fā)量、日志量等等,通過多維關(guān)聯(lián)和分析,對未來的業(yè)務(wù)運行進行分析和預(yù)測。這些日志有些是設(shè)備運行中主動輸出的,有些則是運維的人員通過特定命令到設(shè)備上采集到的,通過對這些日志進行分析,從而對設(shè)備、系統(tǒng)以及業(yè)務(wù)的運行情況進行評估,一旦發(fā)現(xiàn)異常,立即采取處理。
 
顯然,海量的日志如不經(jīng)過處理,直接輸出到監(jiān)控平臺,那將是非常多的。首先,做標(biāo)準(zhǔn)化處理。數(shù)據(jù)中心要有各種日志的采集系統(tǒng),將所有日志匯集起來,這些日志來自不同設(shè)備、不同系統(tǒng)、不同業(yè)務(wù),格式和含義都不一樣,數(shù)據(jù)中心要做標(biāo)準(zhǔn)化處理,轉(zhuǎn)換成統(tǒng)一識別的格式,這個格式完全由數(shù)據(jù)中心定義,由技術(shù)人員進行轉(zhuǎn)義,形成標(biāo)準(zhǔn)化的日志語言;第二,做日志過濾。日志經(jīng)過標(biāo)準(zhǔn)化處理,整齊劃一,格式統(tǒng)一,但數(shù)量仍沒有減少,所以需要做過濾。過濾的原則是將級別低的、操作類的、提示類的日志過濾掉,將級別高的、異常類的日志留下來。具體到各種設(shè)備的日志,要由設(shè)備商提供全系列的日志信息,并標(biāo)注優(yōu)先級和表達的含義,由數(shù)據(jù)中心將這些信息輸入到知識庫中,作為過濾判斷的條件,知識庫是一個逐漸積累的過程,不僅是日志的過濾,還包括各種故障的處理方法、經(jīng)典案例、解決方案等等,經(jīng)過知識庫的過濾,將大部分的無用日志排除掉;第三,做壓縮歸并,將過濾后的日志同類的要歸一化,尤其是在知識庫中已經(jīng)存在過的,這類日志如何處理,在知識庫中可以找到答案,這時可以直接按照知識庫的指導(dǎo)來做。如果沒有遇到過的日志,則要交給下一級繼續(xù)處理,通過壓縮歸并也可以將日志的數(shù)量再次減少;第四,做關(guān)聯(lián)分析,很多日志的來由都是有根源的,比如在一臺運行中的網(wǎng)絡(luò)設(shè)備上突然有一條OSPF鏈路震蕩了,那么可以檢查一下在同一時間,是否也有其它OSPF鄰居也震蕩了,如經(jīng)過日志檢查,在另外多臺設(shè)備上也有OSPF震蕩,并且都集中連接到一臺設(shè)備,而這臺設(shè)備再查日志原來有人正在做reset ospf主動運維的操作,當(dāng)通過這系列的關(guān)聯(lián)分析,就可以找到原因,及時將這種人為操作的原因告訴監(jiān)控中心,并不會作為一種異常的故障告警出現(xiàn);第五,做定位分析。將預(yù)期內(nèi)產(chǎn)生的日志消除后,來到第五步,這時的日志往往需要深入分析,如果在現(xiàn)有的知識庫里找不到解決方案,并且日志本身的告警級別還很高,這時就要輸出告警了,經(jīng)過這五步處理,能夠輸出告警的日志已經(jīng)很少了。
 
日志經(jīng)過以上五個步驟處理,能夠精簡多少,這取決于現(xiàn)有的知識庫,知識庫內(nèi)容越豐富,信息越準(zhǔn)確,精簡下來的日志就越少。試想哪個數(shù)據(jù)中心會天天發(fā)生故障,一個月發(fā)生一次都了不得,否則早就關(guān)門大吉了,所以數(shù)據(jù)中心里每天產(chǎn)生的日志很多很多,而絕大部分的日志都影響不大,甚至無影響。當(dāng)然,這種日志過濾也不排除將一些關(guān)鍵日志過濾掉了,導(dǎo)致出了問題,卻沒有告警,這是一個逐步完善的過程?,F(xiàn)在AI技術(shù)這么火,也火到了數(shù)據(jù)中心運維領(lǐng)域,其實就是利用AI技術(shù),對數(shù)據(jù)中心的知識庫進行學(xué)習(xí),以便可以對新增的日志進行準(zhǔn)確判斷,這個過程靠人工完成效率太低了,而利用機器學(xué)習(xí),則可以瞬間完成,這也是智能運維研究的一個重要方向,通過AI處理數(shù)據(jù)中心的海量日志。
 
數(shù)據(jù)中心如何面對日志海洋?歸納起來就三個字:“簡、智、深”,精簡日志數(shù)量,過濾無用或無害日志;利用現(xiàn)有知識庫學(xué)習(xí),智能分析日志產(chǎn)生的影響和后果;深度學(xué)習(xí)日志,輸出學(xué)習(xí)結(jié)果,根據(jù)日志做出判斷和自決,數(shù)據(jù)中心系統(tǒng)自動執(zhí)行解決方案:切流量或者隔離故障設(shè)備,也可能是調(diào)整配置等等,自動進行處理,這種情況只要將處理結(jié)果反饋到監(jiān)控平臺即可,甚至都可以不用給出日志告警,作為普通事件處理。只有AI不知如何處理時,再將告警日志交給監(jiān)控平臺,由人工干預(yù),處理完畢后再將本次的日志處理交給AI學(xué)習(xí),同類日志再次出現(xiàn)時,系統(tǒng)就可以自行處理,不再需要人工干預(yù),構(gòu)建這樣一個學(xué)習(xí)日志系統(tǒng),就是智能運維的開始。

鏈接已復(fù)制,快去分享吧

企業(yè)網(wǎng)版權(quán)所有?2010-2024 京ICP備09108050號-6京公網(wǎng)安備 11010502049343號