rhel6.cacti的安裝與配置


rhel6.cacti的安裝與配置

1.實驗環境:

cacti主機:192.168.122.32desk32 desk32.example.com

被監控主機:192.168.122.32、

192.168.122.82desk82

192.168.122.3Desk3

軟件下載地址:http://yunpan.cn/QbFvm626bWrVQ

這裏有關於cacti配置所需要的所有各種版本的軟件資源;


Required Packages

httpd

php

php-mysql

php-snmp

mysql

mysql-server

net-snmp

2.httpd的安裝

yum-yinstall httpd


3.Install and Configure mysql

yum -y install mysql mysql-server php php-mysql net-snmp*

[root@desk32 cacti]# /etc/init.d/mysqld start

[root@desk32 cacti]# mysql_secure_installation

[root@desk32 cacti]# mysql -uroot -pwestos

mysql> create database cacti;

mysql> grant all on cacti.* to cacti@localhost identified by 'cacti';

#用於認證登錄與查找cacti庫的用戶

mysql> flush privileges; #刷新數據庫

4.snmp的安裝與配置

yum -y install net-snmp*

具體的配置方法參見以下地址:

http://www.cyberciti.biz/nixcraft/linux/docs/uniqlinuxfeatures/mrtg/mrtg_config_step_3.php


[root@desk32 cacti]# vim /etc/snmp/snmpd.conf

[root@desk32 cacti]# grep ^# /etc/snmp/snmpd.conf -v | grep " "

com2sec locallocalhostpublic

com2sec mynetwork192.168.122.0/24public

groupMyRWGroup v1local

groupMyRWGroup v2clocal

groupMyRWGroup usmlocal

groupMyROGroup v1mynetwork

groupMyROGroup v50pxynetwork

groupMyROGroup usmmynetwork

viewsystemviewincluded.1.3.6.1.2.1.1

viewsystemviewincluded.1.3.6.1.2.1.25.1.1

accessMyROGroup ""anynoauthexactall none none

accessMyRWGroup ""anynoauthexactall all none

syslocation desk32.example.com

syscontact desk32.example.com <[email protected]> (configure /etc/snmp/snmp.local.conf)

dontLogTCPWrappersConnects yes


[root@desk32 cacti]# /etc/init.d/snmpd restart

[root@desk32 cacti]# snmpwalk -v 1 -c public localhost IP-MIB::ipAdEntIfIndex

IP-MIB::ipAdEntIfIndex.127.0.0.1 = INTEGER: 1

IP-MIB::ipAdEntIfIndex.192.168.122.32 = INTEGER: 2


5.cacti的安裝:

依賴性包:

yum -y install make gcc libxml2-devel pango-devel perl-ExtUtils-MakeMaker

tar zxf rrdtool-1.4.4.tar.gz

cd rrdtool-1.4.4

./configure&& make && make install

[root@desk32 ~]# ln -s /opt/rrdtool-1.4.4/bin/rrdtool /usr/local/bin/

[root@desk32 ~]# tar zxf cacti-0.8.7h.tar.gz-C /var/www/html/

[root@desk32 ~]# mv /var/www/html/cacti-0.8.7h/ /var/www/html/cacti

[root@desk32 ~]# cd /var/www/html/cacti/

[root@desk32 cacti]# useradd cacti

[root@desk32 cacti]# chown cacti rra log -R

[root@desk32 cacti]# vim include/config.php

/* make sure these values refect your actual database/host/user/password */

$database_type = "mysql";

$database_default = "cacti";

$database_hostname = "localhost";

$database_username = "cacti";

$database_password = "cacti";

$database_port = "3306";

$database_ssl = false;

[root@desk32 cacti]# mysql -pwestos cacti < cacti.sql


Add a line to your /etc/crontab file similar to:

###the crontab must run by user of cacti#####

[root@desk32 cacti]# crontab -u cacti -e

*/5 * * * *php /var/www/html/cacti/poller.php > /dev/null 2>&1

[root@desk32 cacti]# /etc/init.d/crond status

crond (pid1476) is running...


[root@desk32 cacti]# /etc/init.d/httpd start


Point your web browser to:

http://your-server/cacti/(user:admin passwd: admin)進入後強制修改密碼

http://desk32/cacti


160533597.jpg

160535461.jpg

今天在做的時候發現一個問題:

160537763.jpg

無法顯示字體:

經檢查是系統上沒有安裝字體:

最快的解決辦法就是從其他機子上覆制:

[root@desk82 mnt]# scp -r /usr/share/fonts/* desk32:/usr/share/fonts/

刷新後問題即解決

1).進入 cacti 後需確認更改以下位置:

Console>Settings>General

160657901.jpg

SNMP Community 後填的密鑰必須與/etc/snmp/snmpd.cond下的

com2sec locallocalhostpublic

com2sec mynetwork192.168.122.0/24public

後的public處的字段相同,否則信息將會採集不到

2)安裝cacti的加速插件:spine

選擇 spine 是爲了加快速度, cmd.php 是一個 php 寫的調度程序,而 spine

是 用 C 寫 的 , spine 的 性 能 遠 遠 優 於 cmd.php , 當 監 控 的 設 備 有 很 多 時 ,cmd.php 的性能就跟不上了,只能用 spine 來調度,因此選擇 spine。

需要一些包:

1.net-snmp-devel

2.mysql-devel

3.openssl-devel

and the toolchain

1.dos2unix

2.autoconf

3.automake

4.binutils

5.libtool

6.gcc

7.cpp

8.glibc-headers

9.kernel-headers

10.glibc-devel

patch

[root@desk32 ~]# tar zxf cacti-spine-0.8.7h.tar.gz

[root@desk32 ~]# cd cacti-spine-0.8.7h

[root@desk32 cacti-spine-0.8.7h]# ./configure && make && make install

[root@desk32 cacti-spine-0.8.7h]# cd /usr/local/spine/etc/

[root@desk32 etc]# cp spine.conf.dist spine.conf

[root@desk32 etc]# vim spine.

conf

DB_Hostlocalhost

DB_Databasecacti

DB_Usercacti

DB_Passcacti

DB_Port3306

DB_PreG1

啓動spine:

[root@desk32 cacti-spine-0.8.7h]# cd /usr/local/spine/bin

[root@desk32 bin]# ./spine

SPINE: Using spine config file [../etc/spine.conf]

SPINE: Version 0.8.7h starting

SPINE: Time: 0.1049 s, Threads: 5, Hosts:

2

設置:

Console > Settings > Paths > Alternate Poller Path > Spine Poller File Path ,將“/usr/local/spine/bin/spine”填入文本框,然後點擊“保存”按鈕。


160700466.jpg

3)cact的監控插件setting與monitor的安裝:

先安裝:cacti-plugin

[root@desk32 ~]# tar zxf cacti-plugin-0.8.7h-PA-v3.0.tar.gz

[root@desk32 ~]# cd cacti-plugin-arch/

[root@desk32 cacti-plugin-arch]# mysql -ucacti -pcacti cacti < pa.sql

[root@desk32 cacti-plugin-arch]# vim /v

ar/www/html/cacti/include/config.php

添加:

$url_path = "/cacti/";

[root@desk32 cacti-plugin-arch]# cp cacti-plugin-0.8.7h-PA-v3.0.diff /var/www/html/cacti/

[root@desk32 cacti-plugin-arch]# cd /var/www/html/cacti/

[root@desk32 cacti]# patch -p1 -N < cacti-plugin-0.8.7h-PA-v3.0.diff


安裝插件setting與monitor

[root@desk32 ~]# tar zxf settings-v0.71-1.tgz -C /var/www/html/cacti/plugins

[root@desk32 ~]# tar zxf monitor-v1.3-1.tgz -C /var/www/html/cacti/plugins

設置:

Consloe ->User Management -->admin -->Realm Permissions 選中Plugin Management 並保存,這樣在Utilities下就會多出一個Plugin Management選項:

選擇Plugin Management:

160702960.jpg

4)創建監控點:

目前cacti只監控localhost不會監控其他主機:

現在添加主機desk3.example.com 192.168.122.3與desk82.example.com 192.168.122.82

注意:

添加的兩個的主機上安裝snmpd服務/etc/snmp/snmpd.conf的配置與cacti主機的配置一樣:並啓動服務

在desk32上驗證:

[root@desk32 cacti-plugin-arch]# snmpwalk -v 1 -c public 192.168.122.3 IP-MIB::ipAdEntIfIndex

IP-MIB::ipAdEntIfIndex.127.0.0.1 = INTEGER: 1

IP-MIB::ipAdEntIfIndex.192.168.122.3 = INTEGER: 2

[root@desk32 cacti-plugin-arch]# snmpwalk -v 1 -c public 192.168.122.82 IP-MIB::ipAdEntIfIndex

IP-MIB::ipAdEntIfIndex.127.0.0.1 = INTEGER: 1

IP-MIB::ipAdEntIfIndex.192.168.122.82 = INTEGER: 2

進入 Cacti 的 console 面板,點擊“Devices”進入設備面板,

160704559.jpg

Hostname上寫的主機名一定要有解析,保險期間填寫ip下的Monitor Host選中要不然在Monitor的頁面上沒有監控的主機圖標;


爲desk3創建圖片:

160706212.jpg

同樣的方法創建主機二desk82.example.com

5)將添加的主機添加到默認的Graph Trees中:

console— > Graph Trees add


同樣添加desk82.example.com

6)爲已有 host 添加新的監控圖

( 1 )在 console 控制檯下點擊 “ New Graphs”,選擇要添加監控圖的主機。在

GraphTemplates 中 選 擇 一 個 Graph 模 板 , 本 例 選 擇 SNMPCeneric OID Template,點擊 create 按鈕


(2)填寫信息,在“ Title”文本框中填寫 Graph 的名字,在“Vertical Lable”文框中填寫描述信息或是所繪圖片使用的單位等,顯示在所繪圖片的左側,在“ name”文本框中填寫此數據源的名字,在“ LegendColor”中選擇畫圖使用的顏色,在“Legend Text”填寫圖例的名字,在“OID”文本框中填寫要監控的主機的

160710198.jpg

完成後就會多一個監控圖像:

161618679.jpg

7)利用 CDEFs 創建函數

利用 CDEFs 創建一個名爲“Total Traffic”的函數。用以將一個圖片上的所有數據源由 bytes 轉換成 bits。

1 )點擊 console Graph ManagementCDEFsAdd ,在 name欄中填入你要創建的函數的名字“Total Traffic”,然後點擊 create。

(2)點擊“ Add”,依次添加三個 Item(如下圖),它們的意思是:將當前圖片上的所有數據源乘 8。


161714839.jpg

161717416.jpg

8) 創建流量彙總圖

要求:假設有兩臺交換機已經在 cacti 裏做了流量監控,現在要求做一個流量

彙總圖,能統計上聯端口的入口流量。

(1)在 console 控制檯下點擊“Graph Management”,然後點擊 Add 鏈接。

( 2 )在 “ Select Graph Template” 下拉框中選擇 None ,在 “ Host” 下拉框中選擇None,然後點擊 create 按鈕。

161802242.jpg

(3)在“Title”文本框中輸入 Graph 的名字“CN01_HZCNC Total Traffic In”,然後點擊[create]按鈕

161828882.jpg

4)點擊 Add 鏈接,添加 Graph Items。 “Host”下拉菜單中選擇第一臺交換機,

在在“Data Source”下拉菜單中選擇需要統計的上聯 In 端口,在“color”下拉菜單中選擇你要的圖形顏色,在 “ Graph Item Type” 下拉菜單中選擇繪圖類型,這裏選擇用區域繪圖(AREA),在“CDEF Function”的下拉菜單中選擇該數據

源套用的函數,這裏選擇 “ Total Traffic”(這個函數就是上面在 CDEFs 裏自定義的函數),在“Text Format”文本框中填入端口的描述信息,以便區別。然

後點擊“create”。

161855242.jpg

同樣創建desk82

161857351.jpg

5)點擊“Add ”,添加一個標籤“Traffic In”。在“color”下拉菜單中選擇你要的

標籤顏色,在 “ Graph Item Type” 下拉菜單中選擇 “ STACK” ,在 “ CDEF

Function” 的下拉菜單中選擇 “ Make Stack Negative” ,在 “ Text Format” 文本框中填入標籤名“Traffic In”,點擊“create”按鈕完成。如下圖左下角

161934395.jpg

161936487.jpg

161938971.jpg

161940694.jpg





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章