(馬世龍)Linux下CACTI完全搭建技術文件二

技術小胖子發表於2017-11-09

續(馬世龍)Linux下CACTI完全搭建技術文件一

6.完成cacti的安裝
1. 首先檢查一下rra/下面,有沒有資料

2. snmpwalk -v 2c -c public ServerIP if 用來測試被控物件(serverIP)是否開啟了SNMP服務

3. snmpwalk -v 2c ServerIP -c public .1.3.6.1.4.1.2021.10.1.3 檢視被控端是否有CPU負載的資料返回

4. /usr/local/bin/php /usr/local/apche2/htdocs/cacti/poller.php 用來測試PHP是否可以採集到資料。如果上面的都正確,但這步出錯,很有可能是PHP配置的問題,或開啟了SuLinux。

5. 如果按第2步snmpwalk能採集到資料,但第3步無法採集,可能是PHP設定的問題,修改PHP.ini,很有可能是PHP許可權問題。


 
開啟瀏覽器 http://本機IP地址/cacti
進入 cacti 的初始設定頁面

第一次預設登陸賬號:admin 密碼 admin

登陸後它就會讓你立即修改新密碼
說一下 cacti 設定頁中各項“零件”的路徑。
當修改好新密碼進入,第一個顯示出的頁面就是讓你設定 rrdtool,snmp 等工具的路徑。這是個很重要的環節,必須無誤,要不然 cacti 將無法生成出統計圖。

snmpwalk Binary Path : /usr/bin/snmpwalk
 snmpget Binary Path: /usr/bin/snmpget
 RRDTool Binary Path: /usr/local/rrdtool/bin/rrdtool
 PHP Binary Path: /usr/local/php/bin/php
 Cacti Log File Path: /data/web_server/admin/cacti/log/cacti.log
 Cactid Poller File Path: /data/web_server/admin/cacti/poller.php



預設的配置中會出現許多“ NotFound ”
按照上邊的路徑把“ NotFound ”的項都重新填上。
手動執行一次
/usr/local/php/bin/php /data/web_server/admin/cacti/poller.php > /dev/null 2>&1
你就能在頂上 graphs 中 localhost 裡頭看到本機的記憶體,CPU,登陸使用者等的統計圖 .

 1. Cacti 統計圖

 
但預設 Cacti 是沒有建立網路卡流量的監控圖的。要我們自己來加。
回到 console 選單
選擇 Devices 監控裝置。

 2. 裝置監控


 3. 新增裝置

 
然後點選右上角的 Add 進行新增
Description 裝置名稱 ( 可隨意輸入 )
Hostname 裝置地址 ( 如果是本機就填 127.0.0.1 )
Host Template 裝置的型別 ( 選擇 ucd/net SNMP Host )
然後其他按照預設即可,如下圖

 4. 新增的新裝置

 
點 create 建立。
如果剛才填寫的地址無誤,建立成功後,會在該頁面左上方出現所新建裝置的 SNMP Information
然後點選隔壁醒目的 * Create Graphs for this Host 即開始建立監控圖表

 5. 建立圖表-1


 6. 建立圖表-2

 
如圖 6,溝選你所要監控的網路卡以及 IP,點 create 。
這樣就完成了你所指定裝置統計圖的建立。

 7. 新增的裝置統計圖

 

 8. 統計圖表

 
有一個小技巧,初次要求 cacti 建立指定裝置的統計圖表,通過 Graph Management 進入圖 8 所示頁面時,統計表圖片會是一個 X ( 叉 ) 。這是因為在配置初期指定系統中每 5 分鐘執所行的 php 語句還沒到點運作。要麼你就等 5 分鐘,要麼你就直接進入系統手動執行:

 
 /usr/local/php/bin/php /data/web_server/admin/cacti/poller.php > /dev/null 2>&

 
然後曲線表中就能出現第一個峰值,每 5 分鐘自動更新。 24 小時後,曲線圖就能完整地出現在你眼前。
Choose an action 框中選擇 Place on a Tree(default Tree)
就能把該圖表類似快捷方式的樣子張貼到本文圖 1 所示的 Graphs,Default tree 欄目中。然而你也能自己在選單欄的 Graph Trees中新建定製欄目,然後用相同的方法把新建的統計圖往你所定製的欄目中放。
Cacti 的強大功能不單止可以通過 snmp 獲取裝有 Linux,Unix 作業系統伺服器的執行狀態,還能監控 Windows 系統伺服器。跟諸如 Cisco,Linksys, 路由器,交換機,無線 AP 。或者其他支援 snmp 管理協議的網路裝置。
 



 

 
下邊我們舉出實應用的例子。

裝置結構:
網路入口路由器 Linksys RV042。

Linksys 的一款路由器,主要負責,外網接入路由,防火牆,以及埠對映。
server1 WEB 應用伺服器

作業系統: Linux RedHat As4

Eth0,Eth1 雙網路卡工作。前者接入路由器對映至外網。後者直連至 server2

進行反向代理 ( proxy ) 以及資料備份以及同步等功能。

IP 分別為 192.168.3.2 以及 192.168.10.2
server2儲存,FTP與WEB 應用伺服器

作業系統: Windows2003 r2

與 server1 網路環境相仿,雙網路卡工作。

IP 分別為 192.168.3.3 以及 192.168.10.3
Cacti 已經配置完成,安裝在 server1 上。第一臺新增到監控表裡邊的是路由器 RV042 。開啟路由器的 WEB 設定頁面,勾選並啟用 SNMP 功能。如圖 9
Send SNMP Trap to: 192.168.3.2( server1 的 IP )
然後其他輸入框按照預設留空即可,但需留意 Get Community Name: 所填寫的組名: public 。儲存設定。

 9. 儲存設定

 
登陸 Cacti ,console 選單欄中點選 Devices。跟前邊圖 1 至 8 新增新裝置以及建立統計圖表的步驟相同
Description 裝置名稱 ( 我們這裡自定為 Linksys RV042)
Hostname 裝置地址 ( 路由器的地址 192.168.3.1 )
Host Template 裝置的型別 ( 選擇 ucd/net SNMP Host 或者是 Cisco Router )
然後其他按照預設即可。
建立成功後,也會在該頁面左上方出現所新建裝置的 Linksys RV042 SNMP Information
點選隔壁 *Create Graphs for this Host 建立監控圖表

 10. 建立監控圖表

 
路由器 RV042 的埠以及 IP 等資料都取出來了。
勾選好所要監控的埠,點選 create 就能完成路由器監控圖表的建立。
Cacti 執行在 Server1 上,所以配置方式跟前邊所介紹是一樣的,這裡就掠過了。但順帶說一下,如果環境中還存在 Server3,而且跟 Server1 一樣都是 Linux 系統,需要新增到 cacti 裡頭。哪麼只需在該伺服器上修改 snmp 配置,修改的內容也跟 server1 上幾乎一樣,不同的是。
編輯 /etc/snmp/snmpd.conf 的時候,原來填 127.0.0.1 ( 本機地址 ) 的地方換成 Cacti 所在執行的伺服器 IP,即 server1: 192.168.3.2
com2secnotConfigUser default public

改為:com2secnotConfigUser 192.168.3.2(server1 地址) public
access  notConfigGroup “”  any   noauth    exact  systemview  none none
改為:accessnotConfigGroup””anynoauthexact all none none
#view all    included  .1         80

將前面的 # 註釋 去掉。
儲存退出 :wq
重新啟動 snmp 服務
# service snmpd restart
填寫 Server3 IP 地址,裝置型別: ucd/net SNMP Host , 建立圖表 , 完成。
到 Server2 的 win2003 系統了。
給 Windows 安裝 SNMP 協議支援
通常由於 SNMP 是一個建議關閉的協議 ( 因為有安全漏洞 ),所以 Windows 2003 不是預設安裝的。但 Cacti 用的就是 SNMP 協議,而且伺服器處於內網中,有路由器防火牆對外隔著,所以裝吧。
控制皮膚– > 新增或刪除程式– > 新增 / 刪除 Windows 元件– > 管理和監視工具– > 簡單網路管理協議 (SNMP)
修改 SNMP 的安全設定
 這臺服務是被監控方,所以需要像剛才舉例的 Server3 那樣修改 SNMP 的配置。否則在 server 1 裡頭的 Cacti 則永遠也收不到 SNMP 的訊息。開啟 Services 視窗並找到 SNMP 服務,開啟右鍵選單,選擇屬性。在開啟的視窗中找到“安全”選項頁。在選項頁中有兩部分設定,上半部分是指 SNMP 服務接受哪種 Community 指示字,預設情況下 Windows 2003 不對任何指示字反饋,我一般都新增設定為。
團體名稱:public, 許可權:只讀
下半部分新增可信任的主機名、IP 或是 IPX 名稱。這裡就也是新增 server1 的 IP 192.168.3.2 如圖 11


 11. 修改 SNMP 的安全設定

 
修改防火牆
如果你安裝了防火牆,還要記得開啟 UDP 161 埠。
完成後重新啟動 SNMP server 服務
登陸 Cacti 點 Devices建立新裝置。
填寫 Server2 IP 地址,裝置型別:Windows 2000/XP hosts
從 Windows 上獲取到的 SNMP 資訊也挺多,CPU,記憶體,虛擬記憶體,硬碟空間使用,網路卡流量,一應俱全。最後建立圖表 , 完成。
 七、rrdtool-1.2的安裝
如果 ./configure 時出現下面這個錯誤

configure: error: Please fix the library issues listed above and try again.

 
表明系統有功能缺失,需安裝 libart_lgpl-devel.rpm 這個包
如果還是提示聽樣的錯誤,有可能是找不到 FreeType
把 /usr/local/freetype2/lib/pkgconfig 下的 .pc 檔案拷貝到 /usr/lib/pkgconfig 下即可
如果 make install 時出現 [tclrrd.o] 錯誤
就安裝 tcl-8.4.7-2.i386.rpm 以及 tcl-devel-8.4.7-2.i386.rpm 這 2 個包


1.2版的rrdtool畫出的圖,比1.0的要漂亮些.1.0用的是GD畫圖,1.2用的是libart和freetype畫圖.1.2的畫圖會慢一點.

1.2版的安裝,可以見http://bbs.chinaunix.net/forum/viewtopic.php?t=552224

上面的安裝比較麻煩,需要裝不少庫,其實,可以,可以直接RPM安裝,RedHat的系統,直接從安裝光碟上找到這幾個庫,安裝就可.主要的包有:

libart_lgpl

libart_lgpl-devel

libpng

libpng-devel

zlib

zlib-devel

freetype

freetype-devel

找到上面這些包,直接rpm –ivh *.rpm

cgilib好象沒有,而且,從rrdtool官方網站下載的cgilib無法安裝.我們也不需要rrdcgi,所以,可以不考慮了.

安裝完後,解壓1.2版的rrdtool

./configure –prefix=/usr/local/rrdtool –disable-rrdcgi

make

make install

cp /usr/local/rrdtool/bin/* /usr/local/bin/
     本文轉自 wqmsl 51CTO部落格,原文連結:http://blog.51cto.com/wqmsl/309758,如需轉載請自行聯絡原作者


相關文章