李兆康
本文從運維痛點和需求入手,提出建設運維監控、日志分析、應用性能及RPA自動巡檢與處置等,全面實現自動化運維的經驗分享。
隨著公司信息化建設和數字化轉型不斷深化,數字科技的投入逐年增加,IT系統架構轉型為云化、容器化、微服務化,動態伸縮,關系復雜。當故障出現后,運維團隊花費大量精力聯合分析處理,不能快速和準確定位問題根源,無法有效診斷和預防故障,需要從網絡流量、主機性能、應用性能、日志報文等層面進行精細化的監控預警。
當今世界,科技創新已經成為產業變革的重要動力,在“新基建”政策和數字化轉型浪潮的推動下,云計算、大數據、物聯網、移動互聯網、人工智能等新一代信息技術的快速發展,敏捷開發與運維一體化時代到來,產業應用場景日趨多樣,企業的業務架構和網絡環境也隨之發生了重大的變化,業務系統的邏輯結構正變得越來越復雜,這給企業的運維管理帶來了新的挑戰。
(一)設備種類繁多
隨著公司業務發展,業務系統越來越多,配套支撐的網絡、服務器、存儲、主機、中間件、數據庫、虛擬化、云平臺等基礎軟硬件規模呈指數增長,IT環境異構,軟硬件種類繁多,日常運維工作量巨大,運維監控不全面,無法持續實時監控IT系統。當系統出現故障后,運維團隊花費大量精力排查和解決,不能快速、準確定位問題根源,無法有效預防故障,造成故障處理效率偏低。
(二)日志分析量大
現代信息技術帶來了IT系統日志數據的爆發式增長,數據量大、多樣化、快速化給日志的分析挖掘帶來了很大的挑戰,實時性要求也對計算性能提出了很高要求:當前各系統產生大量的運行和業務日志,無法跨系統共享,實際問題處理聯合分析耗費人力較多、時間長,缺少聯動分析預警能力。
(三)系統復雜度高
業務系統之間的關聯性逐漸增加,IT系統的規模及架構也會隨之變得越來越復雜。導致運維團隊對于系統維護難度增加,往往需要投入更多的人力,來保障整個 IT系統的穩定運行,從而避免對業務產生影響。然而更多的人力投入,不但增加了運維的成本,而且對運維管理工作造成影響的風險也隨之增加。
(四)新技術管理難
隨著敏捷開發與運維一體化時代的發展,越來越多的企業采用容器化部署,龐大的應用分布式服務集群包含了成百上千個實例,且這些實例都是隨時進行彈性伸縮,云化和微服務化的高速發展、以及網絡接入方式的多樣化等趨勢,使得運維在面對逐漸流行的容器化或其他高復雜度服務架構等監控時,成為各大企業運營人員關心的問題。
(一)基礎軟硬件監控。
實現IT系統的基礎軟硬件性能監控、網絡監控、故障分析及定位、資產及配置文件的管理等功能,保障了日常運維工作的順利開展,提升了運維團隊的管控水平。通過SNMP、IPMI、SMI-S等協議添加網絡安全、服務器及存儲等硬件設備節點,通過WMI、SSH、Telnet添加主機、中間件、數據庫等軟件資源節點,通過Ping、Port、URL等協議添加應用服務,形成數據中心統一拓撲圖,展示節點及鏈路狀態,以及形成業務管理視圖,展示業務系統的運行狀態、響應速度、網絡、計算、數據庫、存儲容量及整體健康度等。資源監控指標需要重點關注,針對業務和資源情況進行個性化梳理、設置,確保監控的準確性及實用性。例如:專線監控應考慮專線帶寬大小、本端業務節點到對端業務節點的連通性情況;數據庫監控應考慮業務占用表空間大小的情況。告警管理至關重要,告警閾值設置高了,容易遺漏系統運行故障;告警閾值設置低了,又會帶來大量的無效告警,影響運維團隊的工作效率。同樣,告警檢查的周期設置長短也存在類似的問題。往往運維團隊為了不遺漏告警,而提升告警的靈敏度,導致告警重復率很高。傳統告警提醒方式為郵件、短信,目前主流產品已經支持與企業微信、釘釘等集成,通過團隊協作的方式快速處理問題,極大地提升故障的處理效率。一般系統還支持設備配置備份及巡檢功能,針對不同廠商的設備型號,分類批量設置備份或巡檢腳本,實現常規任務自動化處理。
(二)日志分析監控。
實現日志跨系統集中存儲、索引、分析與歸檔,可視化展示及全庫檢索,實時監控、深度分析,加速故障分析、追蹤和定位。同時建立指標歷史基線,分析變化趨勢,及時預警。通過文件、數據庫、執行腳本讀取等采集方法將日志統一收集到系統集中管理,對日志進行切分、識別時間戳及實時索引和存儲,使用解析功能將日志中的字段提取出來,使用SPL對日志進行更多地聚合和關聯分析。搜索分析是日志價值探索的核心能力,搜索模塊由搜索欄、時間范圍、操作選項組成,在搜索框輸入搜索分析語句、選擇時間范圍和操作過濾出對應數據,或者通過劃詞過濾搜索結果??梢暬梢杂行腋玫剡M行分析,以圖表形式展示多維度的日志信息,揭示日志模式和趨勢,幫助我們更好更容易地理解日志或提取日志信息,提高效率。告警提供從規則配置、事件觸發、發送通知、事件分析的一站式管理。系統還可作為日志服務器供應用運維團隊使用,不再需要登錄應用生產節點獲取日志,還提供將采集到的原始日志進行加密以及對敏感日志脫敏;日志保存時間需要滿足至少存儲180天的要求。
(三)應用性能監控。
實現對應用系統代碼執行效率等逐層進行深入分析,對業務調用的全面感知,加速故障分析、追蹤、定位和修復,開發測試階段及時預警,優化迭代,對系統進行量化、可視化和精細化管理。通過探針對應用或進程進行監控,以業務透視IT系統架構,對用戶事務請求進行完整地堆棧追蹤,對用戶級代碼進行分析,呈現每一個業務調用、每一個類、每一個方法的執行效率,展示業務在各個環節的性能表現,透析各個節點的調用拓撲,全維度展現業務調用流程。用戶的每一次請求到達服務端時,標記特定ID,實現服務端調用全鏈路的級級透傳,實現全鏈路調用追蹤,便于故障的快速定位。以機器學習知識為基礎,結合歷史數據集,使用異常檢測算法,對實時數據進行高密度分類匹配,檢測事件異常。
(四)RPA自動巡檢處置。
RPA(Robotic Process Automation)是指使用軟件自動化來實現原本由用戶計算機完成的操作,這些軟件機器人自動處理大量重復的、基于規則的工作流程任務,準確快速地完成,減少人為錯誤,提高效率,大大降低運營成本。通過RPA技術與運維管理工作結合,巡檢機器人實時采集巡檢目標的運行信息,判斷運行狀態、是否報錯、是否需要進行相應處理,并發送至管理中心,進而能夠實時監測巡檢目標狀況,提高巡檢的效率與質量。機器人每天實時模擬運維團隊對業務系統及管理節點進行信息采集,對自動任務等進行實時性及關鍵字進行判斷,一旦匹配設置的規則,則會通知運維團隊,并觸發預置的處置方案,快速恢復系統業務;還可以實現系統更新后的功能模塊及業務驗證。
通過自動化運維應用實踐實現了對業務流程的有效梳理,全局掌握IT資源和資產的詳細信息,提高了運維工作效率,有利于故障的快速恢復。近年來,在自動化運維的基礎上,提出了AIOps(智能運維),將AI應用于運維領域,基于已有的運維數據(日志、監控信息、應用信息等),加上基于機器學習的大腦,做出分析決策,并執行自動化腳本,從而達到運維管理的整體目標。AIOps是運維的發展趨勢,是自動化運維的下一個發展階段。同時匹配相應的制度流程、組織人員以及資金保障,全面提升運維能力,助力公司高質量發展。
作者單位:中國建材集團財務有限公司