一、环境准备
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
图:一
图:二
图:三
到了登陆,默认的账号为admin,密码为admin
图:四
登陆之后,系统会强制用户更改密码
图:五
图:六
点击graphs-Default Tree-Host Localhost,进入系统监控界面
我们看到监控界面,没有出图,设置一下出图
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 |
我们在刷新一下,图就出来了
图:八
数据需要等待一会儿,才能出来
接下来我们添加被监控的主机
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,添加主机
开始添加被监控主机的信息,填写完毕,点击Create
创建完毕,看是否通信正常,创建完主机,创建要监控的项目点击 Create Graphs for this Host,
根据需要,去选择要监控的项目
监控项目添加完毕,将主机添加到监控主干线上,点击左侧Graph Trees
到主界面查看,是否添加成功,最好在监控服务器上刷新一下
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 |
cacti监控主机执行/usr/bin/php /usr/share/cacti/poller.php --force报错解决
解决方法:
现在再次执行就不会报错了
如果报这个错
功夫不负有心人,终于各种测试,找到了昨晚试验没出现的网卡;
方法如下:
前面的所有步骤和铭哥论坛帖子一样。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监控里面添加
类型选择Graph Types: SNMP - Interface Statistics 就看到你客户机的网卡了。点击create。保存。
在Graphs中就可以看到添加的网卡流量信息了;