官术网_书友最值得收藏!

1.2 為什么要使用Cacti

在IT行業,任何產品或者解決方案都不可能適用于所有的用戶和場景,針對Cacti自身的特點,本節首先介紹它比較合適的使用場景。接著介紹目前市面上常用的同類產品,Cacti的優勢和劣勢,最后總結歸納出使用Cacti的理由。

1.2.1 Cacti的使用場景

通過筆者這些年的考察,會發現在如下幾個場景中,Cacti具有得天獨厚的優勢。

1.中小型企業

通常情況下,企業,特別是中小型的企業,對于IT信息系統的建設成本比較敏感,通常這樣的企業又不乏有技術、有想法的工程師,利用開源軟件既可以得到符合自己情況的系統,又能節省一大筆系統建設成本,所以在中小型企業的機房,經常會看到Cacti的身影。

2.大型數據中心

大型數據中心的監控系統往往非常復雜,并不是某一家就可以提供End-To-End的解決方案,在這種情況下,Cacti可以肩負起整體監控系統的網絡流量、單臺主機工作負載以及非IT化的生僻設備的監控任務,并通過開放的API接口接受其他監控系統的整合,協同工作。

3.緊急的項目搶險

不同于常用的使用場景,Cacti不僅可以作為一般企業IT系統監控和數據中心的日常運行維護管理,在某些特殊場景中,它還可以發揮獨特的作用。緊急的項目搶險就是一個非常好的例子,筆者在項目的運行維護中,經常會接到這樣的電話:

“我的數據庫系統怎么從今天早上起變得這么慢?!”

“先別急,這之前的幾天你們對數據庫系統做過什么沒有?”

“沒有啊……什么都沒做啊……好好的就突然慢下來了!”(通常我們的客戶都是這樣回答的……)

“系統日志和監控數據發給我看一下吧,我來試著定位問題。”

“系統日志怎么導出來啊?監控系統前幾天消防演習,機柜關機的時候給停掉了,趕緊過來,別那么多廢話了!”(客戶暴怒了……)

通常這種情況下,我們都會再帶著一套Cacti系統,接駁目標設備,Cacti系統會自動展現監控設備的情況,沒準兒我們會發現網絡的傳輸速度正常,數據庫主機的計算壓力也不大,內存也沒有吃滿到交換文件的地步,存儲性能也OK,就是語句執行起來時間很長,試著查看了一下計劃任務,發現問題:不知哪路“神仙”把Rebuild Index的維護計劃給刪掉了,導致大量的新增記錄沒有索引,聯合查詢的時候非常慢。問題得到準確定位!

通過Cacti采集數據,對數據可視化來定位問題,既快速,又簡單明了。

Cacti,挺好的,我們一直用它,倍兒有面子!

總結起來,Cacti對于1000臺服務器以下的數據中心監控,具有廣泛的普適性,它良好的界面設計、開放的系統架構,可以承擔起監控的重任。目前筆者看到Cacti已經在電信、石油、政府、教育、醫療等多個行業的客戶機房使用。相信大家在日常的工作中也會經常看到,Cacti默默地為我們工作。

1.2.2 Cacti與同類運維工具的對比

目前在業內,有非常多的同類軟件,針對商用產品,不做太多評價,畢竟開源項目的高度可定制化,隨心所欲地按照用戶需求修改功能,這一點是商業產品不具備的。單純從開源項目來看,與Cacti在同一水平線上的產品有如下幾個:

1.Nagios

Nagios是一款開源的免費網絡監視工具,能有效監控Windows、Linux和UNIX的主機狀態,交換機、路由器等的網絡設置,以及監控打印機的什么等。在系統或服務狀態異常時,發出郵件或短信報警,第一時間通知技術人員,在狀態恢復后,發出正常的郵件或短信通知。

Nagios的優勢在于可以對數據中心中大量的服務器,以及在其上運行的數據服務進行監控,以快速定位問題,進行報警。

相比Cacti,Nagios在網絡流量、實時監控以及數據可視化方面的功能很弱。

2.Zabbix

Zabbix是一個基于Web界面的、提供分布式系統監視以及網絡監視功能的企業級開源解決方案。Zabbix的界面如圖1-3所示。

圖1-3 Zabbix的界面

Zabbix能監視各種網絡參數,保證服務器系統的安全運營,并提供靈活的通知機制,使系統管理員快速定位和解決存在的各種問題。Zabbix由兩部分構成:Zabbix Server與可選組件Zabbix Agent。

Zabbix Server可以通過SNMP、Zabbix Agent、Ping、端口監視等方法提供對網絡狀態的監視,數據收集等功能,它可以運行在Linux、Solaris、HP-UX、AIX、Free BSD、Open BSD、OS X等平臺上。

Zabbix Agent需要安裝在被監控的目標服務器上,它主要收集硬件信息或與操作系統有關的內存、CPU等信息。它可以運行在Linux、Solaris、HP-UX、AIX、Free BSD、Open BSD、OS X、Tru64/OSF1、Windows NT 4.0、Windows 2000/2003/XP/Vista等操作系統之上。

Zabbix的優勢在于數據的輸入/輸出,但是在數據可視化方面做得不如Cacti。

3.Zenoss Core

Zenoss Core是開源企業級IT管理軟件,它允許IT管理員依靠單一的Web控制臺來監控網絡架構的狀態和健康度。

Zenoss Core來源于Zenoss開源項目,Zenoss的體系架構非常龐大,當然具備的功能也比較完善,這一點是相對于Cacti來說的,這是Cacti的弱點。

但是Zenoss的體系架構足夠復雜,也導致在二次開發和實際使用過程中,系統管理員必須花很長的時間,耗費很大的精力來學習,修改過后的Zenoss,由于功能模塊的強耦合性,導致系統在上線之前需要進行大量的測試與驗證,耗費人力、物力是在所難免的。

簡單易用是Cacti對比Zenoss最大的優勢。

4.OpenNMS

OpenNMS是一個企業級基于Java /XML的分布式網絡和系統運維管理平臺。它可以顯示網絡中各種終端和服務器的狀態和配置,為管理網絡提供有效的信息。OpenNMS的界面如圖1-4所示。

圖1-4 OpenNMS的界面

OpenNMS是用Java語言開發的,可以真正做到跨平臺。這個項目是由一群經驗豐富的網絡管理專家設計開發的,針對網絡管理員平時關注的對象建模,有很好的粒度把控和很好的擴展性。他們還借鑒了Linux系統設計的一些概念。它的系統開發、設計最大程度地遵循國際通信標準。OpenNMS從設計之初就被定義為一個分布式系統,可以通過配置來滿足各種復雜的網絡管理要求。

我們必須承認在現階段,OpenNMS是市場上占有率最高的開源系統運維軟件,跨平臺的設計、完善的設備庫、友好的界面都是它成功的因素。但是在實際使用過程中,我們發現針對OpenNMS的二次開發需要具備Java、JSP、Servlet、Spring、MVC等技術基礎,開發的難度比較大,并且安裝配置過程也非常麻煩。

幾款開源軟件的總體評估情況如表1-1所示。

表1-1 幾款開源軟件的總體評估

1.2.3 使用Cacti的理由

Cacti的外觀設計、架構設計很簡單,而且松散耦合,深究其內涵,我們發現它對高級功能的擴展支持也很到位,特別適合中小型企業、院校機構、政府機關等潛在用戶使用。通過一段時期的實際項目部署,也發現它確實簡化了用戶工作、增強了運維性能。總結起來,使用Cacti的理由也許會有以下幾點。

1.友好的體驗

Cacti的安裝和配置、數據組織、界面展現均通過Web來實現,通過鼠標點擊即可完成。 Cacti交互體驗非常友好,還有具有強大的數據管理功能。Cacti登錄之后的主界面如圖1-5所示。

圖1-5 Cacti的界面展示

因為Cacti基于RRDTool進行運維數據的管理,所以RRDTool天生的優勢(數據采集效率高、可以顯示負值、一個圖形中可以接駁多個數據源、數據的存儲方便,等等)能很好地繼承下來。

2.低負載的運行

Cacti的數據存儲與可視化是分開的,這樣可以有效降低Cacti服務器的負載,提高運維服務器的性能。

通常可以把Cacti需要的各個組件安裝在不同的服務器上來均衡Cacti系統的資源開銷。例如,數據中心本身就已經部署了MySQL服務器,那么新建一個Cacti數據庫即可,還可以將Cacti的主體程序與RRDTool圖像文件分開存放來降低系統的計算資源,等等。

3.高自由度的定制

Cacti調用的組件均為開源、高度的可定制化屬性,用戶可以根據自己的需要制作模板,不會遇到設備無法兼容的問題。

同時,Cacti加載擴展插件和模板的方法及其簡單,用戶能最快速地享受到擴展插件帶給系統的好處。水位線預警功能插件的配置界面如圖1-6所示。

圖1-6 Cacti擴展之后的水位線預警功能

主站蜘蛛池模板: 五常市| 天台县| 丰台区| 遂溪县| 黄石市| 崇礼县| 安国市| 新绛县| 安陆市| 策勒县| 志丹县| 息烽县| 东丽区| 石渠县| 上思县| 怀来县| 雷山县| 喀喇| 高邮市| 深州市| 鹤峰县| 克什克腾旗| 阜新市| 通州区| 商南县| 红原县| 桦川县| 托里县| 哈尔滨市| 阿拉善左旗| 阳朔县| 二连浩特市| 苏尼特右旗| 石柱| 濮阳市| 兰西县| 鹤山市| 江孜县| 张家港市| 承德县| 上栗县|