李大瑋 王璐 劉鵬


【摘要】? ? 隨著血站業務的不斷發展,信息化水平不斷提高,血站網絡拓撲和血站管理信息系統越來越復雜,傳統的人工運維巡檢方式由于故障發現滯后性已經難以滿足血站業務發展對于系統穩定性和可靠性的需求。青島市中心血站基于多年運維管理經驗,基于Zabbix開源平臺配合二次開發建立了自動化運維監控平臺,整合并關聯所有報警事件,實現了對全網的一體化監控,并通過企業微信實時推送重要告警信息,有效提升運維效率。
【關鍵詞】? ? Zabbix? ? 運維? ? 監控? ? 血站? ? 報警
一、背景分析
隨著血站業務的快速發展,支撐業務的血站網絡拓撲和血站管理信息系統越來越復雜。信息管理部門擔負著對IT基礎設施運維的重要使命,核心任務是保障采供血業務的正常運行,并提高軟硬件環境的交付質量。血站業務的特殊性對業務系統的實時性要求高,但IT運維人員在監控機制、服務理念等幾個方面,仍然存在不少問題,加之人員匱乏、缺少運維監控機制等,這些都有可能影響采供血業務的穩定運行。
二、血站IT運維現狀
青島市中心血站現有物理服務器18臺,實際運行服務器數量42臺(含虛擬機),安全產品14臺,各類網絡設備40余臺,業務系統及各類支撐系統22個,有業務網、省市兩級衛生健康專網、獻血車移動互聯VPDN、互聯網、虛擬化環境等,網絡環境極為復雜。雖然實施了一些網絡管理軟件,但是缺乏有效的手段和工具對系統運行情況進行監督和預警,同時無法提供服務及應用層面的故障信息,也無法提供及時準確的信息預警。很多情況下,只能等到事件已經發生并已造成業務影響時才能發現并著手處理,延誤了隱患的最佳處理時間,同時也使運維工作處于被動的狀態。
為解決目前IT運維的困境,青島市中心血站基于開源監控軟件Zabbix并配合二次開發,建立了血站自動化運維監控平臺,整合企業微信實現報警信息實時推送,實現對服務器、網絡及安全設備、操作系統、數據庫、應用狀態以及關鍵進程進行報警推送,取得了較好的成效。
三、基于Zabbix的自動化運維管理平臺
3.1 Zabbix簡介
Zabbix是一個基于Web界面的提供分布式系統監視以及網絡監視功能的企業級的開源解決方案。能監視各種網絡參數,保證服務器系統的安全運營;并提供靈活的通知機制以讓系統管理員快速定位并解決存在的各種問題。Zabbix主要有ZabbixServer和ZabbixAgent組成,除此之外還支持基于ZabbixProxy的擴展(Zabbix體系結構見圖1)。Zabbix支持基于Agent,SNMP,IPMI等多種形式實現對服務器、網絡設備、安全設備、數據庫、Web應用乃至系統進程的監控,可以靈活設置監控閾值,Zabbix提供了強大的二次開發能力,用戶可以根據自己的需要靈活設置監控項目。Zabbix還提供了第三方報警平臺的對接,支持通過郵件、短信以及釘釘、企業微信等第三方應用的關聯報警。
3.2 Zabbix相比商業監控系統的優勢
同傳統商業監控系統相比,Zabbix具有以下顯著優勢:
1.商業監控軟件,產品費用和維護成本高,存在license限制,Zabbix是一款完全開源的監控軟件,可以從網絡自行下載,沒有license限制。
2.商業監控軟件原生無法監控各種新型應用組件,需要廠家重新定制,使用和維護難度高,Zabbix提供了大量的通用模板提供了對于設備的支持,官方提供了模板銀行供使用者下載,對于個性化的需求,可以根據使用者需求自行定制模板。
3.商業軟件原廠的技術支持力度會因為原廠戰略轉型等原因越來越弱,Zabbix作為一款開源軟件,網上有大量的使用分享可供參考。
綜合上述原因,經過長期的調研和測試,青島市中心血站決定采用Zabbix開源監控系統來構建新一代運維監控平臺。
3.3 自動化運維監控系統設計
基于Zabbix監控系統的特點和血站工作實際,我們采用了ZabbixServer-Agent模式實現了對網絡的全面監控,具體功能實現如下:
1.網絡監控:對于交換機、路由器、防火墻等網絡設備,主要采用SNMP協議進行監控,主要監控其可用性、流量、CPU內存使用率等。對于核心交換機、匯聚交換機、防火墻、路由器等核心網絡設備監控期端口狀態和流量,對于接入層交換機由于終端運行狀態差異性較大,不再監控其端口狀態。
2.服務器監控:對于服務器監控,我們主要采用了Agent方式進行監控,在每臺服務器部署ZabbixAgent實現對服務器信息的采集,監控項包括CPU負載、磁盤空間、網絡流量、內存使用情況等系統正常運行的基本指標。
3. Web應用監控:對于Web應用監控只要采用http連接方式監控其狀態,監控項包括程序啟動時間、網站訪問速度、是否可用、服務狀態等。
4.數據庫監控:針對數據庫的監控我們主要采用了使用腳本監控的方式。通過自行編制腳本實現對數據庫的查詢,實現對數據庫可用性、狀態鎖、表空間使用情況的狀態監控。
5.個性化監控:Zabbix為我們提供了強大的二次開發能力,我們可以根據自己實際工作需要定制監控項目,滿足工作需求。青島市中心血站目前使用的業務系統為唐山啟奧科技股份有限公司開發的ShinowV9.5系統,該系統提供了一個任務計劃服務運行每天的定時任務,一旦該服務停止定時任務將無法執行,通過Zabbix的個性化定制,實現了對該服務運行狀態的監控,一旦服務退出可立即觸發報警。除此之外,還通過個性化定制實現了對96606服務熱線主服務進程、國家衛健委采供血信息采集軟件的實時監控,確保96606服務熱線的平穩運行和國家衛健委采供血信息日報的按時上報。
6.實時報警推送:設置觸發器,通過腳本直接調用企業微信API,將報警信息實時推送給相關人員,并按照各人分工不同實現差異化推送。
四、應用效果
目前自動化運維監控系統已接入服務器42臺,網絡及安全設備51臺,支持SNMP協議的網絡設備55臺,監控操作系統42臺,數據庫7個,Web應用10余個,總監控項達17801項,取得了較為理想的應用效果。系統整合并關聯所有事件,將機房環境、網絡、服務器、數據庫、應用系統都納入了IT運行監控體系,及時推送報警信息,幫助運維人員跟蹤并響應報警事件(圖2報警事件示例),避免其影響業務的正常運轉。
五、結束語
Zabbix是一種可以對各種數據中心監控對象進行狀態數據收集的監控平臺,實現了對機房環境、網絡、服務器、數據庫、應用系統等內容的統一監控和管理,具有分布式、自動化、全方位監控的特點,讓運維人員能夠快速定位并解決系統問題,降低運維的難度和風險,提升IT運維服務質量和效率,為血站提供效率高、低成本的自動化運維監控平臺。Zabbix也存在圖形界面比較簡單可視化程度差,報表功能薄弱等缺點,今后工作中還需不斷完善,建設更加全面、高效、智能、高度可視化的自動化運維平臺。
參? 考? 文? 獻
[1]程雪松.基于Zabbix的醫院自動化運維監控平臺的設計與應用[J].福建電腦,2018,34(9):126-127.
[2]劉遠超,李樹彬.基于Zabbix和微信企業號實現網絡監控的研究[J],山東科學,2017,30(4):124-130
[3]龍煒.自動化運維工具在企業信息系統管理中的應用[J].微型機與應用,2017,36(5):102-104
[4]肖海琴.Zabbix性能監控軟件在高性能集群上的應用[J].中國管理信息化,2017,20(3):139
[5]郭曉慧,李潤知,張茜,等.基于Zabbix的分布式服務器監控應用研究[J].通信學報,2013(S2):94-98.
[6]楊磊.基于Zabbix的云監控系統的設計與實現[D].成都:電子科技大學,2017.
[7]吳兆松.Zabbix企業級分布式監控系統[M].北京:電子工業出版社,2014.
[8]劉思堯.基于ZABBIX的自動化巡檢系統的研究與實現[J].電力信息與通信技術,2014(12):111-115.
[9]周萌,林國策,楊厚云.CentOS下ZABBIX的配置與使用[J].北京信息科技大學學報(自然科學版),2015(1):90-94.
[10]王紹成,史磊.公安網絡智能巡檢系統的研究與思考[J].科技展望,2016(10):302.
[11]周昊.利用Zabbix和企業微信實現公安監控網絡的自動化運維.中國有線電視,2017(11):1324-1325