Ubuntu Server 安裝部署 Cacti 服務器監控
Cacti是一套基于PHP,MySQL,SNMP及RRDTool開發的網絡流量監測圖形分析工具。它通過snmpget來獲取數據,使用RRDtool繪畫圖形,而且你完全可以不需要了解RRDtool復雜的參數。
它提供了非常強大的數據和用戶管理功能,可以指定每一個用戶能查看樹狀結構、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的配置改變:
從Web服務器列表中選擇“Apache2”:
Cacti 配置Apache后,安裝了MySQL賬戶的應用程序。選擇“是”,允許通用的數據庫配置:
為 Cacti 提供數據庫管理密碼:
接著,會詢問 Cacti 使用的數據庫的密碼,這是一個內部的密碼,輸入新密碼,選擇OK,這里如果按“Enter”會創建一個隨機的密碼:
安裝應該按預期完成。
#p#
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 以清除緩存。
#p#
建立設備和圖
- 設備設置
要開始繪圖,我們需要建立設備配置文件,并告訴 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分鐘,一開始你可能會看到一個空圖,有時,它會呈現一個破碎的圖像,這是正常的,你會在幾個小時之后獲得一些五顏六色的曲線圖:
點擊每個圖像,會顯示這個設備每天,每周,每月,每年的圖形:
好,現在 Ubuntu Server 上的 Cacti 服務器監控你已經部署好了,如果有哪里有誤,歡迎指正,這篇文章的英文版本在我的個人網站上,歡迎大家訪問。