1、cacti數據收集方法、三種模板介紹
在上一博文中我們部署好了cacti環境,並讓cacti運行起來了。今天在這裡介紹一下在cacti的“consolle”控制台中的 “Collection Methods”、"Templates"、“Import/Export”三個部件,即在下圖中標明的三個部件。
在"Collection Methods"(收集方法)中有兩類,一類是"Data Queries"(數據查詢),另一類是“Data Input Methods”(數據輸入方法)。Data Queries是定義好的cacti怎樣獲取到監控數據的xml文件,即定義了數據是怎麼收集到的,xml文件中一般是定義了獲取到數據的命令或腳 本;Data Input Methods也是描述cacti獲取數據的方法,常見是用perl腳本、php腳本、shell腳本把獲取數據的命令組織成的腳本。
1.1、Collection Methods介紹
在cacti安裝好後,默認時cacti就提供了一些收集方法,我們挑選一個來看一下,選擇“Data Queries”後,我們可以看到系統自帶的幾個數據查詢方法,在“Data Input Method”列上也可以看出各個數據查詢大概是使用使用工具來獲取到數據的,有用snmp的,也有用腳本來收集數據的,如下圖:
點擊上圖中的第一個數據查詢,可得到這個數據查詢的一些詳細信息,如下圖:
如果你對xml這樣的文件非常熟悉,你可以去cacti的站點目錄下去查看一下這個xml文件詳細的定義,上圖的“<path_cacti>”表示的是cacti的主目錄,即是你站點的主目錄。
接著來看一下“Data Inpuet Methods”,默認時cacti也提供了一些數據輸入方法,這裡面定義的就是利用各種腳本來獲取監控數據的,如下圖:
點開一個數據輸入方法也可查看其詳細的信息,如下圖:
1.2、Templates介紹
1.2.1、圖形模板
在cacti中模板有三類:一是圖形模板,用於定義cacti利用“收集方法”把數據收集後在,當需要繪圖時把數據取出給予展示時的圖形屬性,比如:所要 繪制圖形是表示某段時間內的最大值、最小值還是平均值,繪制圖時是用線條繪制還是用區域圖,線條的顏色是什麼,圖形的是PNG的還是GIF的,圖形的長 度、寬度是多少等等,我們打開“Linux - Memory Usage”這個圖形模板來看一看,點擊“Graph Templates”,再找到“Linux - Memory Usage”,打開後如下圖:
上邊這個圖形模板的定義,在cacti安裝後就被調用到了監控本機上的,你點擊主頁面的“graphs”,再默認的圖形樹下就有本機的監控圖形,如下圖:
1.2.2、主機模板
主機模板我認為是一個比較特殊的模板,它包含了圖形模板(Graph Templates)和數據查詢(Data Queries)兩個部份,我們打開默認時監制本機的“Local Linux Machine”這個主機模板來看一看:
1.2.3、數據模板
數據模板定義了cacti對收集到的數據應該怎樣進行歸檔形成RRA,並創建一個rrd文件,即是用"rrdtool create"命令創建一個數據源的常用選項或參數,如下圖:
如果你熟悉rrdtool create這個命令,那上邊這個圖表達的意思就能輕松看懂。
2、模板的使用介紹
雖然安裝完cacti後默認提供了一些模板,但這些模板往往不適合在你的環境中所使用,這時我們可以到“http://forums.cacti.net/viewforum.php?f=12&sid=0a97a0d56050d4fc88b158aab6c91512” 這裡去尋找適合你的模板,每個模板中的安裝使用方法都會有所不同,你得仔細去閱讀作者寫的“INSTALL”文件,裡面都會介紹此模板如何安裝。下邊就以 導入一個主機模板為例來說明一個模板的導入方法,我這裡用到的模板文件 是"cacti_host_template__linux_generic.xml"。
打開cacti的控制台,按照下邊操作把模板文件導入:
點擊“Import”按鈕後會顯示此模板的詳細信息,如下圖:
再點擊“Import”後就把這個主機模板導入到cacti了。
導入模板後現在去驗證一下這個主機模板是否真正被導入到cacti中,在控制台點擊“Host Templates”,就可以發現多了一個“* Linux Generic”,點擊後可查看其詳細信息,如下圖:
模板已被正確的導入,接下來我們為一台遠程主機創建一個“Devices”,把我們導入的主機模板應用到此設備上,我這裡再啟動了一台IP為192.168.0.202的linux主機,此主機做了如下配置:
[root@nod2 ~]# yum -y install net-snmp #安裝snmp [root@nod2 ~]# cp /etc/snmp/snmpd.conf{,back} #備份配置文件 [root@nod2 ~]# vim /etc/snmp/snmpd.conf .... view systemview included .1.3.6.1.2.1 #新建了一個view view systemview included .1.3.6.1.2.1.1 view systemview included .1.3.6.1.2.1.25.1.1 .... [root@nod2 ~]# service snmpd start #啟動snmpd服務
再回到nod1上用測試一下通過snmp能否獲取到nod2的數據:
[root@nod1 ~]# snmpnetstat -v 2c -c public -Can -Cp tcp 192.168.0.202 Active Internet (tcp) Connections (including servers) Proto Local Address Remote Address (state) tcp *.22 *.* LISTEN tcp 127.0.0.1.25 *.* LISTEN tcp 127.0.0.1.199 *.* LISTEN tcp 127.0.0.1.6010 *.* LISTEN tcp 127.0.0.1.6011 *.* LISTEN tcp 192.168.0.202.22 192.168.0.102.50742 ESTABLISHED tcp 192.168.0.202.22 192.168.0.102.50761 ESTABLISHED #有狀態信息輸出,證明nod1與nod2能通過snmp進行通信
接下在cacti控制台上增加對nod2的監控,點擊“Devices”,可以看到默認時cacti已為本機建好了一個設備
這裡我們再點擊右上角的“Add”後,出現下圖:
最後點擊“Create”,就創建了一個監控設備,接著為此監控設備建立圖形,點擊右上角的“Create Graphs for this Host”,如下圖:
如上圖,選擇圖形模板中我們要創建的圖形,數據查詢又分了兩類,一類是關於分區的,一類是關於網卡接口的,二者都是定義獲取數據的方法,最後點擊“Create”後圖形就創建好了。
最後把這個遠程主機組織在圖形樹中展示出來,點擊“Graph Trees”,再點擊“Add”,如下圖:
接著為圖形樹輸入一個名稱,如下圖:
點擊“Create”,一個圖形樹就生成了,再在此圖形樹上創建項目,在下圖中點擊"Add",就可以在圖形樹上創建一個項目:
再點擊上圖中的“Create”後,跳轉到下圖:
再點擊“Save”保存我們創建的圖形樹。
要想查看我們對遠程主機的監控圖像,我們點擊主頁上的“graphs”,就可以看到圖形樹,一個是默認的圖形樹,裡面有本地主機的監控圖形,另一個是我們自己定義的,只要過一會,圖形裡就會有數據生成了,如下圖:
這個主機模板能夠監控的項目有許多,看上圖中的最下方還有第二頁。
好了,寫到這裡我們就完成了對cacti模板的介紹,並舉例說明了怎樣導入一個模板,並使用其運用到一個遠程主機上。