引言:為了解決校園網絡管理所遭遇的網絡設備的多樣性問題,使校園網絡管理能適應豐富的信息化發(fā)展趨勢,需定制開發(fā)出適合學校網絡運維的統(tǒng)一平臺,以方便網絡運維人員應對日益復雜增多的網管工作,統(tǒng)一監(jiān)控管理,提高工作效率。
網絡運維,是指為保障電信網絡與業(yè)務正常、安全、有效運行而采取的生產組織管理活動,簡稱運維管理或OAM(Operation Administration and Maintenance)。網絡運維需要對網絡中防火墻、路由器、交換機、服務器、存儲設備、電力系統(tǒng)、空調系統(tǒng)等設備進行實時監(jiān)測。
由于學校網絡建設時,大多采購多種品牌網絡設備進行組合,以兼顧網絡性能和資金投入,但同時也帶進來網絡運維工作的復雜性。雖然各種網絡設備都自帶管理平臺,沒有形成一個統(tǒng)一的整體,特別是數(shù)量眾多的接入交換機和服務器,需要網絡運維人員逐個登錄查看的話,是比較繁雜瑣碎的工作。
由于商業(yè)軟件的定制化成本比較高,建議有一定研發(fā)能力的單位都采用功能類似的開源網絡運維軟件進行整合和定制,以滿足單位的個性化需求。
目前流行的開源網絡運維軟件主要有:
Cacti是非常廣泛的性能圖形和趨勢分析工具,可以用來追蹤任何檢測指標,并繪制在圖表上。Cacti是用PHP語言實現(xiàn)的一個軟件,它的主要功能是用SNMP服務獲取數(shù)據(jù),然后用RRDtool儲存和更新數(shù)據(jù),當用戶需要查看數(shù)據(jù)的時候用RRDtool生成圖表呈現(xiàn)給用戶。因此,SNMP和RRDtool是Cacti的關鍵。Snmp關系著數(shù)據(jù)的收集,RRDtool關系著數(shù)據(jù)存儲和圖表的生成。
Nagios能有效監(jiān)控網絡服務(SMTP、POP3、HTTP、NNTP、Ping等)、監(jiān)控主機資源(處理器負荷、磁盤利用率等)、主機狀態(tài)等。在系統(tǒng)或服務狀態(tài)異常時發(fā)出郵件或短信報警第一時間通知網站運維人員,在狀態(tài)恢復后發(fā)出正常的郵件或短信通知。
Icinga是Nagios的分支,是一個介于Nagios社區(qū)版和企業(yè)版間的產品,完全兼容以前的Nagios應用程序及擴展功能。特別將致力于解決Nagios項目現(xiàn)在的問題,比如不能及時處理 Nagios項 目 的 bug、新功能不能及時添加等。還有在新的ICINGA項目中,將 更好的實現(xiàn)數(shù)據(jù)庫集成方面的功能,標準化第三發(fā)應用程序的接口等。中文化項目是由Icinga中文化項目組,基于Icinga(http://www.icinga.com)基礎上,并在此基礎上針對中文需求進行優(yōu)化及修改,同時集成nagiosgraph或pnp4nagios繪圖,包括簡體中文、繁體中文(計劃),界面以及生成的圖像都已中文化。
NeDi是一款網絡發(fā)現(xiàn)與配置工具,它省去了逐個telnet接入交換機,連續(xù)不斷地掃描交換機上MAC地址表來執(zhí)行MAC地址查找的麻煩,它可以發(fā)現(xiàn)編目設備,然后會將數(shù)據(jù)轉移到一個本地數(shù)據(jù)庫內??赡軟]有其他工具那么出名,但這是追蹤網絡內設備的很棒的解決方案,它可以持續(xù)追蹤網絡基礎設施和目錄設備,監(jiān)控其發(fā)現(xiàn)的一切東西。它可以提供所有設備的當前位置以及歷史信息??梢杂糜诙ㄎ槐槐I或丟失的設備,當這些設備重新出現(xiàn)在網絡時它會提醒你。它甚至可以在地圖上顯示所有已知和發(fā)現(xiàn)的鏈接,顯示每個網絡互連的情況,到物理端口的情況。
Observium是一個網絡和主機監(jiān)控器,它可以掃描地址范圍使用通用SNMP登錄憑證來監(jiān)控系統(tǒng)。結合了系統(tǒng)和網絡監(jiān)控與性能趨勢,它使用靜態(tài)和自動發(fā)現(xiàn)來發(fā)現(xiàn)服務器和網絡設備,利用各種監(jiān)控方法,并可以用于配置來追蹤任何可用的指標。Web UI非常干凈,并且易于使用。
Zabbix是全面的網絡和系統(tǒng)監(jiān)控工具,它集成了多個功能到單個基于web的控制臺。它可以配置為監(jiān)控和收集來自各種服務器和網絡設備的數(shù)據(jù),對每個對象提供服務和性能監(jiān)控。通過廣泛的工具監(jiān)控服務器和網絡。它的Zabbix代理可用于大多數(shù)操作系統(tǒng),或者你可以使用被動或外部檢查,包括SNMP到監(jiān)控主機和網絡設備。你還會找到大量警報和通知功能,以及高度可定制Web用戶界面,可以適應各種顯示器的高度。此外,Zabbix具有特定工具來監(jiān)測web應用程序堆棧和虛擬化管理程序。
Ntop(現(xiàn)在的“下一代”被稱為Ntopng)是數(shù)據(jù)包嗅探工具,其Web用戶界面顯示網絡流量的實時數(shù)據(jù)。它使用C語言編寫,完全獨立,可以幫助你監(jiān)控網絡流量,并連接到快速簡單的Web圖形用戶界面。你運行配置為觀察特定網絡接口的單個程序,就可以監(jiān)控了。網絡流量的實時數(shù)據(jù)可以在高級實時圖形功能中查看。主機數(shù)據(jù)流和主機通信對信息同樣也可以實時查看。
根據(jù)學校的網絡運維的實際需求和開源工具的比較選擇平臺建設方案如下:
LAMP(Linux-Apache-MySQL-PHP)網站架構是目前國際流行的Web框架,該框架包括:Linux操作系統(tǒng),Apache網絡服務器,MySQL數(shù)據(jù) 庫,Perl、PHP 或 者 Python編程語言,所有組成產品均是開源軟件,是國際上成熟的架構框架,很多流行的商業(yè)應用都是采取這個架構,和 Java/J2EE架構相比,LAMP具有Web資源豐富、輕量、快速開發(fā)等特點,微軟的.NET架構相比,LAMP具有通用、跨平臺、高性能、低價格的 優(yōu)勢,因此LAMP無論是性能、質量還是價格都是企業(yè)搭建網站的首選平臺。
通過安裝Npc插件整合 Icin、ga,并按需安裝 Weathermap、Monitor、Threshold、Syslog等插件,以實現(xiàn)網絡設備、鏈路流量、服務器狀態(tài)、應用狀態(tài)等等的實時圖形化監(jiān)控和異常觸發(fā)郵件報警以及日志收集分析。
利用開源的系統(tǒng),整合定制成符合我校需求的網絡服務平臺,包括用戶故障報修、故障工單指派、處理進度跟進、處理結果確認、故障處理知識歸檔等等。
比如可以通過php的socket網絡編程把telnet命令編寫到網頁程序中,并根據(jù)不同類型設備定制相應的登錄腳本,實現(xiàn)通過執(zhí)行相應的命令對網絡設備進行根據(jù)權限修改配置、定時批量備份配置文件等等常用的網絡運維操作,并可針對不同級別用戶授予不同的執(zhí)行命令的權限。
亦可以整合dhcpstatus開源軟件,通過Web頁面展示出來,并設置閾值進行預警。