Cacti是一套基於PHP,MySQL,SNMP及RRDTool開發的網絡流量監測圖形分析工具。它經過snmpget來獲取數據,使用RRDtool繪畫圖形,並且你徹底能夠不須要了解RRDtool複雜的參數。
php
它提供了很是強大的數據和用戶管理功能,能夠指定每個用戶能查看樹狀結構、host以及任何一張圖,還能夠與LDAP結合進行用戶驗證,同時也能本身增長模板,功能很是強大完善,界面友好。數據庫
Cacti架構圖瀏覽器
Cacti工做原理緩存
開始安裝服務器
在Ubuntu 12.04 LTS Server 上經過 apt-get 方式安裝:網絡
sudo apt-get update sudo apt-get install snmpd cacti cacti-spine rrdtool
配置MySQL數據庫,輸入用戶密碼,再次確認後選擇繼續:架構
接下來,按「返回」或「Enter」鍵確認PHP的配置改變:dom
從Web服務器列表中選擇「Apache2」:ide
Cacti 配置Apache後,安裝了MySQL帳戶的應用程序。選擇「是」,容許通用的數據庫配置:工具
爲 Cacti 提供數據庫管理密碼:
接着,會詢問 Cacti 使用的數據庫的密碼,這是一個內部的密碼,輸入新密碼,選擇OK,這裏若是按「Enter」會建立一個隨機的密碼:
安裝應該按預期完成。
SNMPD 的配置
配置 SNMPD 與 Cacti 協同工做,它的配置文件位置在/etc/snmp/snmpd.conf, 請確保你的編輯的是snmpd.conf文件而不是snmp.conf文件:
sudo nano /etc/snmp/snmpd.conf
首先編輯代理行爲(Agent Behavio),在文件的開頭部分,註釋掉 agentAddress udp:127.0.0.1:161 行,並取消 #agentAddress udp:161,udp6:[::1]:161 行的註釋:
# Listen for connections from the local system only #agentAddress udp:127.0.0.1:161 # Listen for connections on all interfaces (both IPv4 *and* IPv6) agentAddress udp:161,udp6:[::1]:161
而後找到 訪問控制 (ACCESS CONTROL) 部分,去掉 #rocommunity secret 10.0.0.0/16 前面的#號,並修改爲您的域名或者IP地址:
rocommunity secret CactiServerIpAddress
您能夠經過這條命令來查看IP地址:
ifconfig eth0 | grep inet | awk'{ print $2 }'
您可能還須要編輯系統信息將與你的數據在系統信息部分。你能夠添加你的服務器的物理位置和聯繫人的電子郵件。若是您正在監視大量的雲服務器,這會幫助您區分那些主機:
sysLocation Your System Location sysContact contact@email.com
修改 Cacti config 文件, password 部分修改爲您先前設置的密碼:
sudo nano /usr/share/cacti/site/include/config.php $database_password = "password";
當您完成了這些修改,須要從新啓動 SNMPD 服務:
sudo service snmpd restart
Web配置
【一次性安裝】經過Web瀏覽器完成其他的配置。打開Web瀏覽器,訪問你的服務器IP地址或域名,後面加上「/cacti」便可進入配置頁面:
mydomain.com/cacti
一開始你會看到一些關於 Cacti 的介紹信息,點擊下一步(NETX),再一次點擊下一步(NETX),會出現以下界面
這裏顯示了「指南」應用,Cacti 所使用操做的應用程序路徑。全部應用程序都應該是綠色的,並標有「[FOUND]」,點擊「完成(Finish)」繼續
接下來登錄管理系統,默認用戶名和密碼都是 admin,在您第一次輸入完成後,會提示修改並確認默認密碼,輸入完成後點擊保存「Save」便可進入管理界面
好,如今你已經進入了 Cacti 的管理界面:
常規配置
有幾個選項須要改變,以確保 Cacti 產生的數據正確。在左側導航面板中,點擊「設置(Setting)」下的配置標題。
在「常規(General)」選項卡中,咱們要像下面這樣改變一些參數,完成後,點擊「保存(Save)」。
SNMP Version: Version 2 SNMP Community: secret
而後選擇 Poller 選項卡,修改以下配置,再保存:
Poller Type: spine Poller Interval: Every Minute
每當輪詢時間間隔發生變化,則必須清空緩存。要清空緩存,點擊左側「系統工具(System Utilities)」下 Rebuild poller cache 以清除緩存。
創建設備和圖
設備設置
要開始繪圖,咱們須要創建設備配置文件,並告訴 Cacti 繪製什麼。在左側導航面板的標題下點擊「設備(Devices)」
首先,刪除 localhost 設備。點擊右側的複選框,確保已經勾選一個項目後,選擇「刪除(Delete)」,而後單擊「Go」。確認下面的頁面上刪除。在頁面的右上角,點擊「添加」按鈕來添加一個新的設備
如今,你須要填寫一些信息,描述你的設備。填寫如下字段。完成時,點擊「建立(Create)」
Description: Ubuntu Cacti Server Hostname: YourIPAddress Host Template: Local Linux Machine SNMP Version: Version 2 SNMP Community: secret
若是在頁面頂部有一個呈現紅色的SNMP錯誤,在服務器上打開一個終端,並從新啓動 snmpd 進程,再次點擊「保存」,它如今應該顯示正常了:
sudo service snmpd restart
圖形設置
接下來,向下滾動並建立一些相關的圖形模板和相關的數據查詢。根據相關的圖形模板,從下拉菜單中選擇「Unix – Ping Latency」,並單擊「添加(Add)」。您的選擇應符合以下圖所示
在相關的數據查詢部分(Associated Data Queries)完成相同的步驟,添加「SNMP – Get Mounted Partitions」, 「SNMP – Get Processor Information」,和 「SNMP – Interface Statistics」.。所有添加完成後點擊保存。
而後在界面的右上角點擊 「爲主機建立圖像 (Create Graphs for this Host)」,選擇右側窗口中的淡藍色的副標題上選擇全部圖形。在頁面底部,點擊「建立 (Create)」。
在接下來的頁面中,你能夠改變一些圖形選擇的顏色,而後單擊「建立 (Create)」,在頁面的頂部,單擊「圖形」選項卡。點擊最後一個標籤頁的右上角。
你的VPS將須要一段時間才能產生這些圖表中的值,直到有足夠的數據圖。這可能須要5分鐘到10分鐘,一開始你可能會看到一個空圖,有時,它會呈現一個破碎的圖像,這是正常的,你會在幾個小時以後得到一些五光十色的曲線圖:
點擊每一個圖像,會顯示這個設備天天,每週,每個月,每一年的圖形: