天天看點

實戰 | 多雲模式下智能化運維體系建設實踐

作者:金融電子化

在全球範圍内,數字經濟正在迅猛發展,黨的二十大已明确提出要“加速發展數字經濟”的戰略方針。作為中國保險行業的領軍企業,中國太平洋保險公司一直緻力于數字化轉型的推進。随着公司業務的持續高速發展,我們的資料中心運作模式也在不斷地進行優化和更新。為了保障業務連續性、降低運維成本和提高服務品質,資料中心的運維工作也面臨着前所未有的挑戰,大緻分為以下幾點。首先,運維規模在不斷擴大,特别是在實施私有雲和系統信創改造的背景下,機房、機櫃、裝置和軟體的規模都在迅速增長。多中心協作的問題也變得越來越突出。其次,業務系統的形态正在向多樣化發展,分布式和雲原生架構的應用逐漸推廣,同時傳統架構的應用仍需長期存在,多态化的應用間均會存在關聯關系,這導緻了運維複雜度的幾何級增長。此外,運維成本與業務連續性保障之間存在一定的沖突。随着運維規模的擴大和系統形态的多樣化,運維人員數量和技能不足的問題逐漸凸顯出來。在人員數量不增加的情況下,及時發現和高效處理故障的難度也在不斷加大。

在目前的複雜環境中,為應對多重挑戰,我們必須建構一套全面且高效的監控系統,以實作全方位的監控覆寫,確定無死角。同時,我們還應建構高效的自動化運維體系,以提升運維效率,降低人工幹預的成本和風險。此外,建立一個智能化的分析決策中心至關重要,它能夠實作手眼關聯,輔助決策,進一步增強運維的智能化水準。通過這套可全域掌控的智能化運維體系,我們将能夠顯著降低資料中心運維成本、提升運維效率,并賦予運維更多價值。這不僅有助于確定業務的穩定運作,更能為其提供堅實的支撐和保障。

實戰 | 多雲模式下智能化運維體系建設實踐

太保科技有限公司雲服務事業群 自動化工具研發團隊負責人 杜穎君

建設方案

1.太平洋保險運維工具體系建設曆程

自2016年起,太平洋保險資料中心開始系統地建構一系列運維工具,包括自動化運維、配置管理資料庫(CMDB)、統一監控等。這一轉變标志着我們的資料中心運維模式從背景腳本執行向前台界面操作的重大轉型。

至2020年,我們已經基本建成了相對完善的工具體系,包括統一監控、自動化運維、日志平台、容器平台和配置管理資料庫(CMDB)。此外,我們的首套私有雲也同期建構完畢。

這些工具的運用,使得運維的變更、釋出、應急處置等正常作業基本實作前台化操作。部分标準的恢複措施也實作了由監控系統告警自動觸發,進而在一定程度上實作了資料驅動的故障自愈。大緻能力架構如圖1所示。借助圖中的工具體系,我們得以在操作層面有效應對大批量重複性作業的處理時效問題,同時避免了因人員疏忽而導緻的誤操作。在問題發現方面,基礎類告警已實作全覆寫,并建立了統一的告警和派單機制。這一系列的優化措施配合24小時的值班管理制度,確定故障能夠及時被發現,提升了整體服務的穩定性和可靠性。

實戰 | 多雲模式下智能化運維體系建設實踐

圖1 運維工具體系架構圖

2.從自動化向智能化發展的驅動因素

随着公司業務的迅猛發展,保險行業的市場競争日趨激烈,業務連續性的保障需求持續增強。傳統的監控和自動化作業模式已無法充分滿足高效保障業務穩定性的需求。其主要問題表現在如下幾個方面:首先,随着資料中心裝置數量的不斷增長,以及信創、雲原生環境下的應用架構日趨複雜,我們需要對更多的裝置和對象進行監控。然而,這導緻了監控盲點和無效告警的問題愈發突出。其次,早期各類系統都是獨立建設的,導緻監控、日志和資料等資訊無法快速地統一分析和展示。這無疑提高了故障排查的難度,排障速度對人員的技能和經驗有較高的依賴性。最後,在資料中心以及各個專業團隊中,日常問題處置、故障排查和重點保障等場景下的資訊傳遞存在諸多壁壘,導緻溝通成本高昂,嚴重影響工作效率。

3.智能運維體系建設的整體規劃

為了解決目前運維工作中所面臨的問題,基于現有平台能力進行了反複探讨論證,形成了一套以資料為驅動、算法為引擎的智能運維體系建設規劃。這一規劃旨在通過資料分析和算法優化,實作故障發現時間提前、故障定位速度提升,以及智能推薦處置方案的目标。

首先,智能監控體系的建設是整個規劃的核心。通過實時監測各項名額,收集資料并進行分析,可以及時發現潛在的故障征兆,進而提前預警,避免故障的發生或減輕其影響。這不僅提高了系統的穩定性和可靠性,也大大減少了因故障導緻的停機時間。

其次,利用高效的算法對海量資料進行處理,能夠迅速定位故障發生的具體位置和原因。與傳統的故障排除方法相比,算法的介入顯著提高了故障定位的速度和準确性。這不僅減少了運維人員的工作量,也縮短了故障恢複的時間,提高了整個系統的運作效率。

此外,智能監控體系還能根據曆史資料和算法分析,為運維人員提供智能推薦的處置方案。這些方案基于大量的實踐經驗和資料支撐,能夠快速有效地解決故障問題。這不僅提高了運維工作的專業性和準确性,也進一步提升了系統的穩定性和可靠性。

總之,通過建設以資料為驅動、算法為引擎的智能運維體系,我們可以更好地應對目前運維工作中所面臨的挑戰。這一規劃的實施将有助于提高系統的穩定性、可靠性和運作效率,降低故障發生的機率和影響,為企業的穩定發展提供有力保障(如圖2所示)。

實戰 | 多雲模式下智能化運維體系建設實踐

圖2 資料驅動能力模型圖

4.智能監控體系建設方案

在設計智能監控體系時,我們重點考慮了故障預防、故障發現及故障定位三個關鍵階段。相較于傳統的監控體系,其設計主要集中在故障發現階段,盡管監控名額對故障定位具有一定的輔助作用,但由于資料分散等因素,其實際效果有限。為確定從傳統監控向智能化順利過渡,我們需要通過整合多種管道的監控資料,以全面提升這三個階段的功能與性能。為此,我們需要打破舊有的模式,真正從業務的角度出發,建構一套一體化的智能監控體系(如圖3所示)。

實戰 | 多雲模式下智能化運維體系建設實踐

圖3 監控能力示意圖

(1)故障預防階段。根據“海恩法則”原理,為降低業務受影響事件的發生率,我們需在故障處于隐患階段即發現并采取幹預措施。為此,在監控體系設計過程中,我們特别增設了智能風險提示子產品。該子產品在每次運維作業(如變更、釋出)完成後,會根據預設的比對模型,對作業涉及對象的運作狀況進行前後趨勢比對。例如,在應用釋出後,該子產品會對涉及資料庫的低效SQL、執行計劃以及CPU使用率等進行比對分析。一旦發現資料超出預設基線,系統将立即發出風險提示,同時在系統中記錄問題并進行跟蹤管理,確定問題得到妥善處理并形成閉環管理。責任人、處理人及處理方案等資訊也将一并記錄,以實作全程可追溯。

(2)故障發現階段。為了盡可能早于使用者發現故障,我們認為必須将監控視角從僅僅關注“應用可用性”提升至更全面的“服務可達性”。這一轉變旨在更早地發現潛在故障,為後續的故障處置工作赢取寶貴時間,進而優化使用者的體驗。單純依賴基礎設施層面的監控名額,已無法滿足目前的監控需求。我們需要擴充并引入更多關鍵的名額,尤其是關于使用者體驗的名額,如響應時間、錯誤率以及錯誤的分布等。同時,還需納入網絡流量和使用者通路區域等多個監控次元,以提供更全面的故障描述。

考慮到現有告警模式存在的不足,如過度依賴單一名額和固定門檻值,無法全面反映複雜的故障狀況,并可能産生大量無效告警。為了解決這些問題,我們采取了多項改進措施。首先,我們引入了智能告警中心,該中心具備豐富的告警資訊處理能力,能夠合并同類告警、智能配置設定工單、抑制時間範圍内的告警等。此外,我們還增強了告警形式的多樣性,包括基于算法的制表基線運算與動态門檻值告警、運作趨勢(陡增、陡降)告警以及心跳檢測告警。最重要的是,我們實作了多元門檻值設定功能,可以更加精準地配置告警條件。

同時,為了進一步提升告警的有效性,我們建立了預警名額體系和使用者影響評估機制。通過與故障定位能力的結合,我們能夠更加準确地識别和過濾無效告警。這些改進措施旨在提高告警的準确性和實用性,為使用者提供更加優質的服務體驗。

(3)故障定位階段。在解決故障定位問題時,我們重點考慮了如何迅速準确地找出故障的根本原因。為此,我們精心設計了系統智能診斷和全域觀測兩大子產品。智能診斷子產品運用預設算法進行初步篩選,對應用自生部署架構的基礎元件以及應用間的互動關系進行深入分析。結合CMDB的資料關聯和應用互動請求資料,我們成功建立了兩類拓撲的關聯關系。

在每個節點上,我們都預設了一系列排障名額因素,這些因素通常以基線門檻值和短期波動等作為判斷依據,進而形成決策樹模型。當檢測到異常節點時,我們會根據異常出現時間、節點在拓撲中的層級以及曆史故障情況等多種因素為疑似故障節點賦予權重,最終推薦出故障根因可能性最高的節點,完成一次精準分析。

此外,該診斷模型具備預警、告警功能,并支援人工或定時觸發。這不僅有助于快速定位故障位置,還能有效減少無效告警。每一次診斷的結果都會被詳細記錄,成為故障畫像的重要參考依據。這一系列措施共同確定了我們的故障定位解決方案既高效又準确。

目前,上述診斷模型尚處于試用和調優階段,日常的故障排查和定位工作仍需依賴運維專家的支援。為了解決各專業團隊之間資訊傳遞的壁壘問題,我們特别設計了專屬的資料分析頁面,涵蓋了系統、網絡、資料庫、應用等多個領域。這些頁面不僅展示了各層元件的依賴關系和運作名額,還通過資料處理引擎将不同來源的資料整合至資料觀測子產品中。我們的目标是通過智能與人工相結合的方式,打造高效的故障定位工具,進而提高故障排查的效率和準确性。

(4)資料處理引擎與資料治理工作。在預防、發現、定位三個階段的能力建設中,我們以高效且靈活的資料處理引擎為核心,輔以長期以來的資料治理工作。為了實作這一目标,我們基于Clickhouse和MongoDB等相對輕量級的資料庫,結合自主研發的流批一體處理引擎,推出了低代碼的輸出處理功能。這一功能對各類資料來源的名額和日志類資料能夠迅速進行處理,降低了資料分析的技術門檻。是以,我們吸引了更多專業團隊的運維人員參與到智能分析模式的開發中,形成了部門内部的生态機制。

此外,資料處理引擎固然重要,但是資料品質也是智能分析的另一個關鍵因素。為此,我們建立了資料準入标準,不斷加強CMDB資訊的自動采集,為每類資料指定責任團隊,并實施自動資料完整性校驗等措施。通過技術手段與管理的有機結合,我們持續地提升運維資料品質,確定智能分析的準确性和可靠性。

建設成效

經過這幾年的持續努力,我們的智能監控體系已經形成了一定的規模,尤其在預防和提前發現故障方面取得了顯著的成效。具體來說,這些成效主要展現在以下幾個方面。一是在運維作業執行後,我們能夠及時發現潛在的性能隐患,并采取措施進行提前幹預,有效降低了故障的發生率。二是通過預警和診斷相結合的監控模式,我們能夠更早地發現故障,并同步分析受影響的使用者範圍。這為處置決策和故障恢複提供了有力的依據。三是故障分析排查方案已在系統中得到有效沉澱,提高了初級運維人員處理故障的效率。同時,也解決了跨團隊資訊傳遞的障礙,進一步提升了故障排查的效率。四是運維人員的工作形态發生了積極的變化,更多的運維人員願意投入到運維工具的建設中來,使人員的工作效率與積極性得到顯著提升。五是運維資料的品質得到了保證,資料維護方和使用方的職責明确。所有的運維作業都依賴于統一的資料進行高效運作。六是對于每起故障發生時的運作情況,我們都進行了詳細的記錄。這些資料可以随時用于故障複盤,對整改任務制定及優化診斷模型具有重要的指導意義。

後續的工作與展望

基于數字化轉型的大背景,智能運維已經成為企業穩定、高效營運的關鍵。經過一段時間的建設,智能運維體系已經取得了初步的成功,基本符合預期效果。然而,正如任何一個複雜的系統工程都會面臨諸多挑戰,智能運維體系在實踐中仍需不斷優化和完善。

首先,動态基線的準确度是智能運維體系中的重要一環。在實際應用中,我們發現基線的準确度仍有待提高。為了解決這一問題,我們需要對智能故障診斷模型進行持續的優化和改進,以提升其在複雜環境下的分析和定位能力。

其次,目前的故障分析與定位主要依賴于人工經驗和曆史故障資料。在未來,為了更加高效地應對未知異常,我們将引入更多的名額資料和日志資訊,通過機器學習技術實作自動識别和分類。這将極大地提高故障處理的響應速度和準确性。

此外,針對複雜故障的處理也是智能運維體系面臨的一大挑戰。目前,對于一些複雜的系統故障,出于安全性方面的考慮,我們尚未直接調用自動化的處置功能。随着技術的不斷進步,我們将不斷優化診斷模型的準确度,進而将更多的處置動作與診斷模型相融合,我們期望在未來能夠擴充更多故障自愈的應用場景,進一步提高系統的穩定性和可靠性。

最後,結合發現、診斷、處置等多階段能力與大模型技術,我們将逐漸實作“運維大腦”的願景。通過與大模型技術的融合,我們将建構更加智能化的運維平台,為使用者提供更加全面、高效的服務。

總結來說,雖然智能運維體系的建設已經取得了一定的成果,但仍需不斷努力和改進。在未來,我們将繼續深化對智能運維的研究和應用,為實作更加穩定、高效的資訊化營運做出更大的貢獻。

(此文刊發于《金融電子化》2024年2月下半月刊)