王磊 劉晗 董珊
DOI:10.16660/j.cnki.1674-098X.2016.07.008
3.山東省青島市城陽區(qū)夏莊街道辦事處 山東青島 266109)
摘 要:長期以來,如山東大學齊魯醫(yī)院這般復(fù)雜環(huán)境下的IT運維管理一直是個難題。為此,使用Ubuntu與Zabbix搭建了分布式運維管理系統(tǒng)。通過該系統(tǒng),系統(tǒng)管理員能夠?qū)崟r獲取各類被監(jiān)控對象的相關(guān)數(shù)據(jù),掌握網(wǎng)絡(luò)、信息系統(tǒng)運行狀況,及時發(fā)現(xiàn)并解決問題,大大提高了IT運維效率,提高了各類信息系統(tǒng)運行的穩(wěn)定性和可靠性。
關(guān)鍵詞:Zabbix Ubuntu 運維管理 分布式
中圖分類號:TP319 文獻標識碼:A 文章編號:1674-098X(2016)03(a)-0008-02
山東大學齊魯醫(yī)院信息化建設(shè),歷經(jīng)近30年,已經(jīng)建成囊括多個院區(qū)的大型綜合信息系統(tǒng),包括各類子系統(tǒng)數(shù)十個,工作站幾千臺。龐大的設(shè)備數(shù)量和復(fù)雜的信息系統(tǒng)結(jié)構(gòu),使得保障信息系統(tǒng)運行的穩(wěn)定和可靠成為一大難題。傳統(tǒng)的人工、手動的系統(tǒng)管理及監(jiān)控早已不適應(yīng)現(xiàn)有的IT環(huán)境,高效可靠的運維管理系統(tǒng)[1]成為系統(tǒng)管理員必然的選擇。一款出色的運維管理系統(tǒng)可以給系統(tǒng)管理員提供方便、高效的管理方式,系統(tǒng)管理員可以通過它實時獲取各類被監(jiān)控對象的相關(guān)數(shù)據(jù),掌握網(wǎng)絡(luò)、信息系統(tǒng)運行狀況,及時發(fā)現(xiàn)并解決問題。
該文依托山東大學齊魯醫(yī)院IT環(huán)境,利用Ubuntu[2]與Zabbix[3]搭建了一套企業(yè)級的分布式[4]運維管理系統(tǒng)。該系統(tǒng)實現(xiàn)了對山東大學齊魯醫(yī)院網(wǎng)絡(luò)設(shè)備及部分信息系統(tǒng)的實時監(jiān)控,使系統(tǒng)管理員能夠隨時掌握網(wǎng)絡(luò)設(shè)備、信息系統(tǒng)的運行狀況,提高了醫(yī)院網(wǎng)絡(luò)和信息系統(tǒng)的穩(wěn)定性和可靠性。通過建立這樣一套運維管理系統(tǒng),解決了山東大學齊魯醫(yī)院系統(tǒng)運維中的重要難題,有效地推進了醫(yī)院信息化建設(shè)。
1 系統(tǒng)搭建
1.1 服務(wù)器系統(tǒng)安裝
服務(wù)器系統(tǒng)使用了Ubuntu 14.04LTS Server版,這是一個長效的服務(wù)器版本,官方提供高達5年的長期技術(shù)支持。使用安裝光盤將Ubuntu安裝到服務(wù)器中,在安裝臨近結(jié)束時,系統(tǒng)提示進行軟件選擇,用戶可以根據(jù)自己的需求自主選擇安裝哪些軟件包。因Zabbix的需要,需要選擇安裝LAMP server軟件包。安裝完成后重啟系統(tǒng),輸入用戶名密碼后即可進入系統(tǒng)。
1.2 Zabbix簡介
Zabbix是由Alexei Vladishev所開發(fā)的,是一種提供分布式系統(tǒng)監(jiān)控以及網(wǎng)絡(luò)管理服務(wù)的企業(yè)級開源[5]解決方案。Zabbix能監(jiān)視各種網(wǎng)絡(luò)及系統(tǒng)參數(shù),保證信息系統(tǒng)的安全運營;并提供靈活的通知機制以讓系統(tǒng)管理員快速定位并解決存在的各種問題。單機模式下Zabbix由兩部分構(gòu)成,Zabbix server與可選組件Zabbix agent。
Zabbix server可以通過SNMP,Zabbix agent,ping,端口監(jiān)視等方法提供對遠程服務(wù)器/網(wǎng)絡(luò)狀態(tài)的監(jiān)視,數(shù)據(jù)收集等功能,它可以運行在Linux,Solaris,HP-UX,AIX,F(xiàn)ree BSD,Open BSD,OS X等平臺上。Zabbix agent需要安裝在被監(jiān)視的目標服務(wù)器上,它主要完成對硬件信息或與操作系統(tǒng)有關(guān)的內(nèi)存,CPU等信息的收集。Zabbix agent可以運行在Linux,Solaris,HP-UX,AIX,F(xiàn)ree BSD,Open BSD,OS X,Tru64/OSF1, Windows NT4.0,Windows(2000/2003/XP/Vista)等系統(tǒng)之上。
2 Zabbix系統(tǒng)的使用
2.1 基本功能
系統(tǒng)主菜單有5項,分別是“Monitoring、Inventory、Reports、Configuration和Administration”。“Monitoring”項用來查看系統(tǒng)的各種狀態(tài);“Inventory”可查看錄入系統(tǒng)中的主機;“Reports”匯總了系統(tǒng)的各項狀態(tài);“Configuration”中可進行主機添加、監(jiān)控等最常用操作;“Administration”中可以對整個平臺進行管理。
2.2 特色功能
2.2.1 自動發(fā)現(xiàn)
由于醫(yī)院網(wǎng)絡(luò)中的設(shè)備數(shù)量巨大,若是每個待監(jiān)測的設(shè)備都需要手工添加,無疑是網(wǎng)絡(luò)管理員的噩夢,所幸Zabbix提供了自動發(fā)現(xiàn)功能,可以自動發(fā)現(xiàn)并添加主機。
進入Configuration>>Discovery,點擊右上角“Create discovery rule”按鈕,輸入自動發(fā)現(xiàn)的IP范圍,新建Checks,選擇Check類型,比如:ICMP ping、SNMP等,保存退出。進入Configuration>>Actions,在右上角“Event source”處選擇“Discovery”,再點擊“Create action”按鈕,在界面中輸入Action名稱,進入“Conditions”子菜單,下拉列表中選擇“Discovery check”,然后選擇剛才建好的“discovery rule”,點擊“add”,之后進入“Operations”子菜單,配置自動發(fā)現(xiàn)后的動作:選擇“New”,下拉菜單中選擇“Operation type”為“add to host group”,最后選擇“add”,此時選擇保存即可。
進行以上一系列操作之后,系統(tǒng)就可以自動發(fā)現(xiàn)主機并將其添加進指定的主機組,這樣就極大地方便了系統(tǒng)管理員的使用。
2.2.2 告警依賴及分時段告警
Zabbix系統(tǒng)具備強大的告警功能,其中告警依賴及分時段告警非常實用??梢栽诿總€告警項目添加依賴關(guān)系,若此情況存在,才進行告警。
由于醫(yī)院工作的特點,多數(shù)工作站都是定時開關(guān)機的,Zabbix支持持續(xù)檢測這些工作站的狀態(tài),但是只進行分時段告警:進入Configuration>>Actions>>Conditions,在“New condition”處添加動作條件,選擇Time Period,設(shè)置工作時段即可。
設(shè)置告警依賴及分時段告警,大大減少了無效告警數(shù)量,提高了告警的準確率,保證了系統(tǒng)的有效性和可用性。
2.2.3 IT服務(wù)監(jiān)控
Zabbix支持以服務(wù)為目標的監(jiān)控,可以允許我們從某項IT服務(wù)的宏觀視角來監(jiān)控系統(tǒng)運行。進入Configuration>>IT services新建某項服務(wù),將所關(guān)心的所有環(huán)節(jié)加入整個服務(wù)中去,任何一個環(huán)節(jié)發(fā)生問題影響到整個服務(wù)都會引發(fā)告警。
3 分布式部署
Zabbix使用server + proxy的方式實現(xiàn)分布式部署。Proxy即代理服務(wù)器[6],它是一種可以從監(jiān)控設(shè)備收集監(jiān)測數(shù)據(jù)并發(fā)送到Zabbix服務(wù)器的進程,它可被視為Zabbix服務(wù)器的擴展,它所收集到的數(shù)據(jù)被暫時存放在proxy上,之后統(tǒng)一轉(zhuǎn)發(fā)給它所屬的服務(wù)器。部署并在代理上收集數(shù)據(jù),將降低Zabbix服務(wù)器本身對cpu資源和磁盤I/O的消耗。
為保證安全性,醫(yī)院建立了物理隔離的內(nèi)外網(wǎng),可以將Zabbix服務(wù)器部署在內(nèi)網(wǎng)中,在外網(wǎng)部署一臺proxy進行數(shù)據(jù)采集,通過網(wǎng)絡(luò)技術(shù)禁止該proxy與外網(wǎng)的通信,proxy與服務(wù)器通過網(wǎng)閘進行通信;在內(nèi)網(wǎng)中,以主要樓宇為單位,分別部署一臺proxy。在Administration>>DM中,建立所用的proxy,并將待監(jiān)控的主機分配給各個proxy,完整的分布式系統(tǒng)結(jié)構(gòu)如圖1所示。
4 結(jié)語
在山東大學校齊魯醫(yī)院這樣復(fù)雜的信息化環(huán)境下,如何進行高效率的運行維護,是保障信息系統(tǒng)穩(wěn)定可靠的一大難題。該文基于Ubuntu操作系統(tǒng)和開源的Zabbix運維管理系統(tǒng),搭建了企業(yè)級的分布式運維管理系統(tǒng)。該系統(tǒng)實現(xiàn)了對山東大學齊魯醫(yī)院網(wǎng)絡(luò)設(shè)備及部分信息系統(tǒng)的實時監(jiān)控,取締了人工的、手動的監(jiān)控方式,提高了運維管理效率,取得了較好的效果,有力地支撐了醫(yī)院信息化建設(shè)。
參考文獻
[1] 萬天翼.基于ITIL的運維管理系統(tǒng)的設(shè)計[J].數(shù)字技術(shù)與應(yīng)用,2010(7):117-119.
[2] Hudson A,Hudson P,陳鋼,等.深入解析Ubuntu操作系統(tǒng)[M].北京:清華大學出版社,2008.
[3] 吳兆松.Zabbix企業(yè)級分布式監(jiān)控系統(tǒng)[M].北京:電子工業(yè)出版社,2014.
[4] George Coulouris,Jean DollimoreTim Kindberg,Gordon Blair.分布式系統(tǒng):概念與設(shè)計[M].北京:機械工業(yè)出版社,2013.
[5] 史蒂文.開源的成功之路[M].北京:外語教學與研究出版社,2007.
[6] Baidu.代理服務(wù)器[EB/OL].[2016-5-13]http://baike.baidu.com/view/751.htm.