以產(chǎn)品設(shè)計理念剖析企業(yè)建設(shè)故障自動化處理方案的思路
人工處理告警,一直是運維心中的痛。大年初一拜年、結(jié)婚、和老婆孩子外出過周末等美好時光,作為運維的你,好像一直心系IT系統(tǒng),保持與筆記本的安全距離。
為什么這么多年過去了,還是這么苦逼,不是說運維行業(yè)轉(zhuǎn) AIOps了,我竟然還在手工處理告警,我該怎么辦?
今天就和大家聊聊實現(xiàn)故障自愈要攻克的3個問題,以及獻(xiàn)上開箱即用的方案。
1. 故障自愈的基本流程
自動化的要點是什么?把人的經(jīng)驗抽象、固化為程序處理,工業(yè)(第3次工業(yè)革命)或互聯(lián)網(wǎng)都是如此。
舉個例子,磁盤出現(xiàn)告警,運維首先想到的是登陸服務(wù)器清理磁盤。
(人工處理告警的流程)
接下來,我們拆解背后的邏輯。
1.1 抽象告警處理流程
1)拉取磁盤告警
2) 編寫磁盤清理的腳本或作業(yè)任務(wù)
3) 設(shè)計模塊:把拉取到的磁盤告警,與調(diào)用腳本的模塊串起來
(故障自愈流程 簡化版V1)
1.2 通過CMDB做資源清洗
不同模塊的磁盤清理方案不一樣,如何解決呢?
這時需要引入CMDB(設(shè)備、人、業(yè)務(wù)的映射關(guān)系),通過CMDB把IP清洗為模塊,這樣就解決了接入層 和 邏輯層、存儲層的告警使用對應(yīng)的磁盤清理方案。
(故障自愈流程 簡化版V2)
1.3 對接企業(yè)內(nèi)部網(wǎng)關(guān)
故障自愈可能會處理失敗,這時需要通知用戶。故障自愈的處理方式除了調(diào)用作業(yè)外,還可能需要調(diào)用企業(yè)內(nèi)部的網(wǎng)關(guān),比如服務(wù)器重啟、申請服務(wù)器等。
使用PaaS層的ESB是一種解決思路,通過ESB封裝企業(yè)內(nèi)部網(wǎng)關(guān),解決權(quán)限校驗、頻率控制、訪問統(tǒng)計、路由分發(fā)以及自助接入等功能,不要直接調(diào)用裸接口了。
(故障自愈的通知方案)
經(jīng)過這一輪的探索,故障自愈的架構(gòu)就是下面這個樣子。
(故障自愈的流程)
1.4 對接企業(yè)內(nèi)部監(jiān)控產(chǎn)品
等等,好像還沒說如何對接企業(yè)內(nèi)部的監(jiān)控產(chǎn)品,以Zabbix、Open-Falcon為例。
1.4.1 對接Zabbix
《當(dāng)Zabbix遇見故障自愈》介紹了拉取Zabbix告警的方案,通過 ActionScript 調(diào)用腳本,把 Zabbix 告警推送至自愈的告警拉取模塊。
推送(或叫回調(diào))可以保證告警拉取的實時性。
(Zabbix推送告警示例)
(Zabbix調(diào)用推送告警的腳本)
對接Zabbix 的落地案例可以參考陳亮撰寫的那些年我們想做的無人值守。
除Zabbix外,Open-Falcon在國內(nèi)的社區(qū)熱度也不錯,所以也介紹拉取其告警的方案。
1.4.2 對接Open-falcon
方案類似Zabbix,不過Open-falcon 直接提供了callback功能,簡化了流程。
(Open-Falcon配置Callback地址)
收到了Open-Falcon 推送的告警后,解析對應(yīng)的字段即可。
如果企業(yè)內(nèi)部的CMDB以IP來標(biāo)識主機,需要再做一層轉(zhuǎn)換,因為Open-Falcon 的資源標(biāo)識endpoint默認(rèn)是主機名,那么就需要使用CMDB的自動發(fā)現(xiàn)功能自動上報主機名,同時提供把主機名清洗為IP的功能。
下面是Nginx模塊磁盤告警的自愈示例,匹配Nginx模塊的磁盤清理套餐,清理Nginx模塊的日志文件,整個過程不到30秒。
(磁盤告警的自愈示例)
2. 故障自愈的兩面性
故障自動處理就像一把刀,有其兩面性。
因為要確保告警的真實性,一旦把假告警也自動處理了,就很悲催了…
舉個例子。網(wǎng)絡(luò)波動,批量出現(xiàn)PING告警。實際上服務(wù)器運行正常,這時你把服務(wù)器都重啟了,那就GG了。
如何解決呢?分析事物的規(guī)律。
批量出現(xiàn)告警,那可以在告警拉取模塊后面,增加一個收斂模塊。
比如,在X時間內(nèi)出現(xiàn)Y個告警,打電話給運維審批。
X時間內(nèi)同一主機出現(xiàn)使用相同套餐的告警,則收斂時間窗口中后面的告警則跳過,比如同時收到進(jìn)程告警 和 端口告警,就不用拉2次進(jìn)程了。
還有就是,原有監(jiān)控系統(tǒng)沒有收斂能力,那么可以借用這個功能來做告警匯總,因為收斂邏輯一樣,只是收斂的處理方式有差異。
3. 復(fù)雜告警的處理方案 - 組合套餐
上面提到的技術(shù)方案是用來處理邏輯簡單的告警,那么故障替換這種復(fù)雜的場景如何解決呢?
舉個例子,A模塊是重要模塊,出現(xiàn)PING不可達(dá)告警,首先要校驗A模塊是否真的故障,如果真的故障,接下來是從資源池中獲取備機 … 故障替換等等,期間每個環(huán)節(jié)都有可能出錯,那就要考慮異常分支的場景。
樹結(jié)構(gòu)可以解決該問題,二叉樹足以滿足大部分場景(成功、失敗兩種分支)。
( 組合套餐的示例)
上面這張圖,是一個自愈處理方案,可以稱之為組合套餐。
這里同時引入了原子的概念,通過組裝原子來滿足各種需求場景, 和資源編排說的是同一個理兒。
注:如果你想使用三叉樹,其實可以把組合套餐也作為一個原子套餐(節(jié)點)。
4. 故障自愈的技術(shù)架構(gòu)
經(jīng)過前面對故障自愈的基本流程、故障自愈的兩面性、復(fù)雜的故障處理方案的層層梳理,我們有了一張故障自愈的技術(shù)架構(gòu)圖。
相信這次以經(jīng)行業(yè)驗證的故障自愈做技術(shù)剖析,能對大家建設(shè)企業(yè)內(nèi)部的故障自動處理方案提供參考思路。
5. 收尾
當(dāng) AIOps大行其道的時候,我們需要克制,優(yōu)先解決主要矛盾,而不是構(gòu)建高大上的空中樓閣。
如同產(chǎn)品路線圖,優(yōu)先解決可用性,接下來是體驗,最后才是可擴(kuò)展性和生態(tài),依次落地。
最后,希望廣大的運維兄弟姐妹能盡早脫離原始運維的苦海,抓住行業(yè)發(fā)展趨勢,掌握核心技術(shù),在變革中實現(xiàn)自身價值!
-
故障處理
+關(guān)注
關(guān)注
2文章
21瀏覽量
9550 -
CMDB
+關(guān)注
關(guān)注
0文章
7瀏覽量
6746
原文標(biāo)題:故障自愈:解決運維的主要矛盾才能AIOps
文章出處:【微信號:magedu-Linux,微信公眾號:馬哥Linux運維】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
簡單便捷、開箱即用的IoT連接方案——意法半導(dǎo)體STM32蜂窩-云端探索套件經(jīng)銷商到貨
自愈式電容器的使用誤區(qū)總結(jié)
計算機網(wǎng)絡(luò)E1鏈路接口自愈保護(hù)解決方案
當(dāng)智能配電網(wǎng)發(fā)生故障時是如何進(jìn)行自愈控制的?
ABC一體機3.0:AI開箱即用即開發(fā)
阿里如何做到百萬量級硬件故障自愈?
![阿里如何做到百萬量級硬件<b class='flag-5'>故障</b><b class='flag-5'>自愈</b>?](https://file.elecfans.com/web1/M00/7A/ED/o4YBAFwA7QKAPQ_rAAHgrksdIYQ668.png)
華為開發(fā)者大會2021智能硬件開發(fā)—開箱即用的解決方案
![華為開發(fā)者大會2021智能硬件開發(fā)—<b class='flag-5'>開箱</b><b class='flag-5'>即用</b>的解決<b class='flag-5'>方案</b>](https://file.elecfans.com/web2/M00/19/1A/poYBAGFzb1WADccmAAT3tNPWB2g167.png)
開箱即用的物聯(lián)網(wǎng):構(gòu)建一個無縫、安全的智能家庭網(wǎng)絡(luò)
![<b class='flag-5'>開箱</b><b class='flag-5'>即用</b>的物聯(lián)網(wǎng):構(gòu)建一<b class='flag-5'>個</b>無縫、安全的智能家庭網(wǎng)絡(luò)](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
開箱即用!教你如何正確使用華為云CodeArts IDE Online!
![<b class='flag-5'>開箱</b><b class='flag-5'>即用</b>!教你如何正確使用華為云CodeArts IDE Online!](https://file1.elecfans.com/web2/M00/8C/53/wKgaomSqElKAfiTvAABmHtX4RNs006.png)
配網(wǎng)調(diào)度自動化自愈系統(tǒng)的設(shè)計與實現(xiàn)
![配網(wǎng)調(diào)度自動化<b class='flag-5'>自愈</b>系統(tǒng)的設(shè)計與<b class='flag-5'>實現(xiàn)</b>](https://file1.elecfans.com/web2/M00/BC/C8/wKgZomWmHbCAEqhzAAA1N4cqqlI185.png)
[技術(shù)干貨]?AI 助手全套開源解決方案,自帶運營管理后臺,開箱即用
![[技術(shù)干貨]?AI 助手全套開源解決<b class='flag-5'>方案</b>,自帶運營管理后臺,<b class='flag-5'>開箱</b><b class='flag-5'>即用</b>](https://file1.elecfans.com//web2/M00/C7/0F/wKgZomYQF2iAKeWuAAEJ7QHGrZY892.png)
自愈式電容器型號含義
自愈式電容器容易壞是不是容量小的問題
![<b class='flag-5'>自愈</b>式電容器容易壞是不是容量小的問題](https://file1.elecfans.com/web1/M00/F4/BB/wKgZoWcxnr-AWUrJAALenTrD9Tw277.jpg)
評論