聊聊 Aiops 的最后一公里
因為疫情管控的問題,從去年下半年開始和客戶的面對面交流就少了很多,做產品軟件的,如果脫離了客戶,那是要走彎路的。我們也是如此,原本D-SMART的產品定位是知識自動化,最初的設想是通過專家經驗的梳理和數字化,變成可自動執行的工具,不過隨著這些年AIOPS概念的興起,好像不沾點AIOPS的邊就不夠高大上似的。
在我們的產品設計中,利用專家經驗來解決80%甚至90%運維人員日常遇到的問題,如果發現新的未覆蓋的知識,通過快速梳理,更新知識庫,隨著用戶群體的擴大與用戶使用的日益廣泛,這個比例可以逐步提高。最近這幾年里,知識庫中已經積累了2000多個知識點和幾百個故障模型,在目前的客戶使用中,幾乎覆蓋了他們日常運維故障與診斷分析的所有場景。當然對于一個新用戶覆蓋率不可能那么高,有幾次用戶出現了專家未曾梳理到的問題的時候,智能診斷發揮了較好的作用,通過智能診斷很快確定了診斷方向,結合專家的經驗,我們很快就幫助用戶定位了問題。
有了幾次成功的應用,我迷戀上了這些智能化診斷工具,也不斷的在通過優化運維知識圖譜來獲得更為準確的診斷結果。甚至有一段時間我們甚至覺得以后不再需要花大力氣去編制專家知識點工具了,只需要不斷優化運維知識圖譜,利用低代碼的泛路由知識點就可以不斷優化診斷工具。
最近的幾次和高水平最終用戶的交流一巴掌把我打醒了。前幾天和一個客戶交流D-SMART產品的時候,我演示了某一個系統告警通過智能診斷工具和專家診斷工具的診斷效果。
針對這個系統隱患的告警,有三個工具可用,一個是通用的數據庫狀態巡檢工具“問題分析”,一個是智能化診斷工具“智能指標分析”,一個是專家知識點工具。我們先來看看智能指標分析工具的診斷結果:
智能指標分析發現系統存在的最主要的問題是高并發、應用存在TOP SQL、IO性能問題以及REDO/DB CACHE等的配置存在一些問題。大體的方向是準確的,不過還是有些籠統。對于我來說,這個分析結論十分有幫助,我可以根據這個去做下一步的判斷了。
智能診斷工具推薦的下鉆工具中,也有專家診斷路徑提供的那個知識點工具。如果我們不使用智能診斷工具,直接使用專家知識點工具會怎么樣呢?
專家知識點工具是由運維專家編制的,根據專家經驗對數據進行分析得到的分析結論。在這個分析中,給出了遠比智能分析工具更為明確的分析數據與診斷分析結論。提交過于頻繁,REDO量過大,LOG BUFFER配置不合理等問題都被直接的指出了。同時在分析中還發現數據庫IO存在性能問題,因此在最后給出了一個下鉆診斷的工具鏈接,點擊這個鏈接可以進行下鉆分析。
數據庫IO分析工具確認了IO存在問題的具體方面,同時給出了一個服務器IO分析的下鉆建議。
OS IO診斷工具確定了后端存儲的IO性能不足是引發數據庫IO問題的主因。至此這個診斷分析工作完成,基本上發現了引發該問題的主要因素。智能診斷工具發現的問題更為全面,基本方向也基本準確。而專家工具發現問題更為精準,也更為直接,可以直接用于運維人員進行系統優化??蛻糇詈蟾嬖V我,他們最需要的就是專家診斷工具給出的診斷結論。這些寶貴的專家經驗可以直接幫助他們解決一線生產中的問題。
第二天我和另外一個客戶交流,也演示了這個工具。那個客戶的數學功底很深,因此對智能診斷很感興趣,我們聊的也很不錯。只不過最后我問他專家工具和智能工具哪個對他們更有用時,他說專家工具是他們所需要的。因為雖然智能工具能夠給出很好的方向,但是他們的現場運維人員可能根本看不懂這些內容。雖然后面提供了那么多下鉆分析工具,總不如專家工具那么直接有效。
回來以后我思考了很長時間,也發現了最近這半年多時間里我的思維誤區。智能診斷工具對我來說是十分有效的,并不說明能夠對一線運維有很大的幫助,因為大多數一線運維人員的能力無法很好的理解診斷結論。目前絕大多數的AIOPS也都是如此,大致定位可能很準確,可以比較準確的發現問題出現在哪一方面,但是無法十分精準的描述問題和根因溯源。
這就是AIOPS的最后一公里問題。前幾天和客戶交流運維工具的時候,有個上過AIOPS系統的用戶說過一句話:“智能運維工具的結論是給專家看的,不是給一般運維人員看的“,當時我還沒有把這句話太當一回事。這些天又想起這句話,覺得十分有道理。
AIOPS的最后一公里是專家工具,這是我這些天思考后得到的一個結論。光有AIOPS的分析結論,對于一線運維來說還是不夠的,必須在AIOPS最終的分析中引入準確的專家知識點下鉆或者確認的能力,才能比較準確的定位問題,為一線運維提供幫助。
而智能診斷工具可以在專家分析問題的時候讓專家更專注于問題發現與總結分析,把大量的數據處理與計算的工作自動化了。
因此在知識發現與知識梳理上能發揮巨大的作用,作為一線運維工具來說,效果就不一定很好了。這也是很多用戶在使用了AIOPS工具后的普遍感受。堅持知識自動化的方向應該是為一線運維提供有力武器的正確方向,用專家知識解決80%的問題,用智能化工具為剩下的20%問題指明方向,這種組合可能是未來一段時間D-SMART發展的重要思路。2000多個知識點還是不夠的,我們需要更多更快的積累知識點工具,利用生態協作是個不錯的方法。隨著下個月社區版的發布,我們也會發布一個這方面的生態計劃。