一、环境准备

             1、安装epel扩展源


[root@cacti ~] # yum install -y epel-release

             2、搭建lamp环境

3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
[root@cacti ~] # yum install -y  httpd php php-mysql mysql mysql-server mysql-devel php-gd  libjpeg libjpeg-devel libpng-devel
[root@cacti ~] # /etc/init.d/httpd start
正在启动 httpd:                                           [确定]
[root@cacti ~] # /etc/init.d/mysqld start
初始化 MySQL 数据库: Installing MySQL system tables...
OK
Filling help tables...
OK
 
To start mysqld at boot  time  you have to copy
support-files /mysql .server to the right place  for  your system
 
PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To  do  so, start the server,  then  issue the following commands:
 
/usr/bin/mysqladmin  -u root password  'new-password'
/usr/bin/mysqladmin  -u root -h cacti password  'new-password'
 
Alternatively you can run:
/usr/bin/mysql_secure_installation
 
which  will also give you the option of removing the  test
databases and anonymous user created by default.  This is
strongly recommended  for  production servers.
 
See the manual  for  more  instructions.
 
You can start the MySQL daemon with:
cd  /usr  /usr/bin/mysqld_safe  &
 
You can  test  the MySQL daemon with mysql- test -run.pl
cd  /usr/mysql-test  ; perl mysql- test -run.pl
 
Please report any problems with the  /usr/bin/mysqlbug  script!
 
                                                            [确定]
正在启动 mysqld:                                          [确定]


3、安装cacti监控主机

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
[root@cacti ~] # yum install -y cacti  net-snmp  net-snmp-utils  rrdtool net-snmp-devel net-snmp-libs lm-sensors php-xml zlib libpng freetype cairo-devel pango-devel gd
 
[root@cacti ~] # /etc/init.d/snmpd start
正在启动 snmpd:                                           [确定]
[root@cacti ~] # mysql -u root
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection  id  is 4
Server version: 5.1.73 Source distribution
 
Copyright (c) 2000, 2013, Oracle and /or  its affiliates. All rights reserved.
 
Oracle is a registered trademark of Oracle Corporation and /or  its
affiliates. Other names may be trademarks of their respective
owners.
 
Type  'help;'  or  '\h'  for  help. Type  '\c'  to  clear  the current input statement.
mysql> create database cacti;
 
mysql> grant all on cacti.* to  'cactiuser' @ 'localhost'  identified by  'cactiuser' ;
Query OK, 0 rows affected (0.00 sec)
 
mysql>  exit
Bye
[root@cacti ~] # mysql -u root cacti < /usr/share/doc/cacti-0.8.8b/cacti.sql
[root@cacti ~] # vim /usr/share/cacti/include/config.php
$database_type =  "mysql" ;
$database_default =  "cacti" ;
$database_hostname =  "localhost" ;
$database_username =  "cactiuser" ;
$database_password =  "cactiuser" ;
$database_port =  "3306" ;
$database_ssl =  false ;
 
[root@cacti ~] # vim /etc/httpd/conf.d/cacti.conf
Deny from all 修改为 Allow from all
[root@cacti ~] # /etc/init.d/httpd restart
停止 httpd:                                               [确定]
正在启动 httpd:                                           [确定]

     

4、通过浏览器访问

               如果访问不了,请检查主机的iptables和selinux

wKiom1V8MzeiPSGSAAPeoggd1E4262.jpg

                                         图:一

wKioL1V8NVGhFx3aAAHTyQpC2Tk897.jpg

图:二

wKioL1V8NYugxMJzAATOjCCu5jE500.jpg

图:三

              到了登陆,默认的账号为admin,密码为admin

wKioL1V8NjHi1b0yAAFLckhZxvo091.jpg

图:四

              登陆之后,系统会强制用户更改密码

wKiom1V8NN3gaoNVAAGA7v5oHr0897.jpg

图:五

wKioL1V8Nt_SRyb9AALBUZ5FwYI217.jpg

图:六

             点击graphs-Default Tree-Host Localhost,进入系统监控界面

wKioL1V8N5mzFt3uAAMwQcF4P44338.jpg

图:七

              我们看到监控界面,没有出图,设置一下出图

1
2
3
4
5
6
7
8
9
10
[root@cacti ~] # /usr/bin/php /usr/share/cacti/poller.php 
OK u:0.00 s:0.00 r:0.00
OK u:0.00 s:0.00 r:0.01
OK u:0.00 s:0.00 r:0.03
OK u:0.00 s:0.00 r:0.05
OK u:0.00 s:0.00 r:0.08
06 /13/2015  09:59:49 PM - SYSTEM STATS: Time:0.1974 Method:cmd.php Processes:1 Threads:N /A  Hosts:2 HostsPerProcess:2 DataSources:5 RRDsProcessed:5
[root@cacti ~] # crontab -e
# 让命令每5分钟执行一次
* /5  * * * *  /usr/bin/php  /usr/share/cacti/poller .php >  /dev/null  2>&1

              我们在刷新一下,图就出来了

wKioL1V8OjTQRs83AAWnKWuHCdM963.jpg

图:八

             数据需要等待一会儿,才能出来

wKiom1V8OpPRL2inAASVMdQMKto471.jpg




            接下来我们添加被监控的主机

1
2
3
4
5
6
7
8
9
10
11
12
13
# 在被监控的主机上安装
[root@rsa ~] # yum install -y net-snmp lm_sensors
[root@rsa ~] # vim /etc/snmp/snmpd.conf
 
#syslocation Unknown (edit /etc/snmp/snmpd.conf)
syslocation 192.168.1.118
 
#       group          context sec.model sec.level prefix read   write  notif
access  notConfigGroup  ""       any       noauth    exact  all none none
 
view all    included  .1                               80    去掉注释符“ #”
[root@rsa ~] # /etc/init.d/snmpd start
正在启动 snmpd:                                           [确定]

           依次点击console -> Devices -> add,添加主机

wKioL1V8PnzgxYrwAAPqpjMlnrk408.jpg


               开始添加被监控主机的信息,填写完毕,点击Create

wKioL1V8ZCvQcUXcAAdoOgWakeg875.jpg

              

              创建完毕,看是否通信正常,创建完主机,创建要监控的项目点击 Create Graphs for this Host,

wKioL1V8ZM-gh-q9AAgmwloP-0E215.jpg



              根据需要,去选择要监控的项目

wKiom1V8Y5DjCHuqAAYpa7QzyvE198.jpg


              监控项目添加完毕,将主机添加到监控主干线上,点击左侧Graph Trees

wKiom1V8Y-zSqBcEAAXZg1tgOhs039.jpg


               点击Add,添加被监控的主机

wKioL1V8Zo7h-UX9AANenuKwZ4E322.jpg



              类型选择Host,再选择要添加的主机

wKiom1V8ZQ7QZAziAAP2FZOJDnE426.jpg


             添加完毕,点击Save

wKioL1V8ZwbQjS8DAANMx1asnV0862.jpg


              到主界面查看,是否添加成功,最好在监控服务器上刷新一下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
[root@cacti ~] # /usr/bin/php /usr/share/cacti/poller.php --force
OK u:0.00 s:0.00 r:0.00
OK u:0.00 s:0.00 r:0.01
OK u:0.00 s:0.00 r:0.03
OK u:0.00 s:0.00 r:0.05
OK u:0.00 s:0.00 r:0.08
OK u:0.00 s:0.00 r:0.09
OK u:0.00 s:0.00 r:0.09
OK u:0.00 s:0.00 r:0.09
OK u:0.00 s:0.00 r:0.09
OK u:0.00 s:0.00 r:0.09
OK u:0.00 s:0.00 r:0.09
OK u:0.00 s:0.00 r:0.09
OK u:0.00 s:0.00 r:0.09
OK u:0.00 s:0.00 r:0.09
OK u:0.00 s:0.00 r:0.09
OK u:0.00 s:0.00 r:0.09
OK u:0.00 s:0.00 r:0.10
06 /13/2015  05:16:53 PM - SYSTEM STATS: Time:0.2109 Method:cmd.php Processes:1 Threads:N /A  Hosts:3 HostsPerProcess:3 DataSources:20 RRDsProcessed:17


wKiom1V8ZdnS8_09AAXT9mV_92I511.jpg




cacti监控主机执行/usr/bin/php /usr/share/cacti/poller.php --force报错解决

wKioL1Zz0G6g4iXTAABIvZPtDzo585.png


解决方法:

wKiom1Zz0NqRm6P2AAAnpC0hU1k251.png

现在再次执行就不会报错了

wKiom1Zz0TKDv2zGAAAqgUDUp8s280.png


如果报这个错

wKioL1Zz0dfjbaHXAACeuIbpXr8161.png

解决方法:wKioL1Zz0huxfgKqAAAvb0kmT_w385.png


cacti检测找不到网卡解决方法:wKiom1Zz0oHCTr1bAABSFyZ5uSM472.png

功夫不负有心人,终于各种测试,找到了昨晚试验没出现的网卡;
方法如下:
前面的所有步骤和铭哥论坛帖子一样。web里面的配置也一样。后面找到的配置不需要修改;(按照配置修改后会提示snmp error错误)
只需要在客户机(你要监控的机器)修改配置文件:
[root@localhost ~]# vi /etc/snmp/snmpd.conf 


view    systemview    included   .1.3.6.1.2.1.1
修改为:
view    systemview    included   .1.3.6.1.2.1

然后重启snmpd服务;
[root@localhost ~]# /etc/init.d/snmpd restart

在web监控里面添加
113315lz2z2ezplwf2805m.jpg 


类型选择Graph Types: SNMP - Interface Statistics 就看到你客户机的网卡了。点击create。保存。
113415c55ce9l7x1xx79nl.jpg 



Graphs中就可以看到添加的网卡流量信息了;
113539mrbbj5vkyzggnbvh.jpg