cacti监控
环境:监控服务器192.168.1.254,被监控服务器(192.168.1.100),
一、监控服务器上环境是LAMP(192.168.1.254)
1、yum -y install gcc gcc-c++ php-*
cd /media/Packages/
rpm -ivh mysql-server mysql --nodeps(安装光盘自带的数据库软件包,把数据导入数据库时不会出错)
注释:提示错误解决办法:sed -i '/MyISAM/s/TYPE/engine/' pa.sql #数据库5.1包指定存储引擎关键字是TYPE,而数据库5.6包指定存储引擎关键字是engine
SNMP协议:(简单网络管理协议)
yum -y install net-snmp net-snmp-utils(这两个是主包)
yum -y install perl-SNMP_session libvirt-snmp cluster-snmp
yum -y install rrdtool #数据库软件,存储收集到的监控数据
service mysqld start ;chkconfig mysqld on
service httpd start ;chkconfig on
service snmpd start ;chkconfig cnmpd on
vim /var/www/html/test.php
<?php
phpinfo ();
?>
在浏览器中访问:http://localhost/test.php
vim /var/www/html/test1.php
<?php
$elink=mysql_connect("localhost","root","123");
if(elink) {
echo "ok";
}
else {
echo "error";
}
?>
在浏览器中测试:http://localhost/test1.php
2、安装cacti
#unzip cacti.zip
#cd cacti
#tar -zxvf cacti-0.8.7g.tar.gz -C /var/www/html/cacti/
#chown root:root -R /var/www/html/cacti/
#cd /var/www/html/cacti/
#useradd cactiuser
#ls -ld log rrd
#chown cactiuser:cactiuser -R log rrd
rrd目录是收集存储数据文件的
log目录时变化信息
修改rrd和log这两个目录的所有者和所属组(就是上方刚刚添加的用户cactiuser)
+++++++++++++++++++++++++++++++++++++++++++++++++++
在mysql数据库服务器上创建存放监控模板和监控服务器时配置信息的数据库
#mysql -uroot -p123
mysql>show create database mysql; #查看建库的过程和字符集的关键字
mysql>create database cactidb CHARACTER SET utf8; #建库并指定字符集
mysql>grant all cactidb.* to cactiuser@localhost identified by "123456";#授权用户和密码对cactidb库有权限,就是修改/var/www/html/cacti/include/config.php 文件配置
#vim /var/www/html/cacti/include/config.php #修改该配置文件,要不然浏览器页面显示错误
$database_type = "mysql";
$database_default = "cactidb";
$database_hostname = "localhost";
$database_username = "cactiuser";#授权用户不是上方创建用户和密码,是授权用户和密码
$database_password = "cactiuser";
$database_port = "3306";
浏览器页面开始访问:http://localhost/cacti/ 初始密码和用户名都是admin
二、修改被监控服务器
yum -y install net-snmp net-snmp-utils
vim /etc/snmp/snmpd.conf
41:com2sec notConfigUser 192.168.1.101 public #把default改为监控服务器IP地址
62:access notConfigGroup "" any noauth exact all none none #把systemview 改为 all
85:view all included .1 80 #去掉#
/etc/init.d/snmpd start
chkconfig snmpd on
三、在监控服务器上配置监控192.168.4.205的什么资源
1、定义自己监控那台服务器 console-》Device-》右上角add-》host(ser100)->IP(被监控端)-》host Template(选ucd/net SNMP host)->SNMP->ping->400—>version->161-》create
2、指定监控对象(图片模板和数据收集) console-》interface(网络接口状态)add mounted parttion 挂载点 linux memary usage 内存 ucd cpu 监控cpu
3、给监控对象创建图片 create graph-》all(全创建) 下方可以打勾 根 boot swap eth1 -》create
4、把监控对象放到图像树里 控制面板:Graph Trees->add->给图像树起个名字(ser100)-》存储类型(默认)-》add添加树项目->Type是Graph->一个个添加-save
5、在监控面板中查看监控信息
graphs 在监控服务器1.100上设置监控数据的监控时间
#su - cactiuser
#php /var/www/html/cacti/poller.php #生成图片
crontab -e
*/3 * * * * php /var/www/html/cacti/poller.php
service crond start; chkconfig crond on
五、指定阀值报警,报警邮件:安装插件才能实现邮件报警:(给cacti安装插件:当监控对象的监控数据达到指定阀值时给管理员(运维人员)发邮件)
1、配置cacti服务支持插件功能(插件在cacti文件夹下)
#tar -zxvf cacti-plugin-0.8.7g-PA-v2.9.tar.gz -C /var/www/html/cacti/
#cd /var/www/html/cacti/
#patch -N -p1 < cacti-plugin-arch/cacti-plugin-0.8.7g-PA-v2.9.diff #打补丁,-p指补丁程序和当前路径目录差的个数
ls /var/www/html/cacti/ #在cacti目录下多出个plugins目录,下面有个index.php文件,证明导入成功了
#cd /var/www/html/cacti/cacti-plugin-arch
#sed -i '/MyISAM/s/TYPE/engine/' pa.sql #该步骤是装系统光盘自带的数据库软件
#mysql -uroot -p123 cactidb < pa.sql
vim /var/www/html/cacti/include/config.php
42:$url_path = "/cacti/"; 把网页目录改为cacti目录下,不是根下 插件的配置文件:
#vim /var/www/html/cacti/include/global.php
34 $database_type = "mysql";
35 $database_default = "cactidb"; #创建的数据库目录
36 $database_hostname = "localhost"; #本机
37 $database_username = "cactiuser"; #授权用户
38 $database_password = "123456"; #授权密码
39 $database_port = "3306";
在监控页面上让该插件启动:
firefox http://localhost/cacti
user Management->admin->给Plugin Managerment(打上勾)->保存-》在控制面板上多出Plugin Management选项(双击打开)-》
支持插件功能配置完成
六、安装插件:
tar -zxvf monitor-v1.3-1.tgz -C /var/www/html/cacti/plugins/ #查看状态方式插件
tar -zxvf settings-v0.71-1.tgz -C /var/www/html/cacti/plugins/ #报警插件
tar -zxvf thold-v0.4.9-3.tgz -C /var/www/html/cacti/plugins/ #设置插件
注释:thold插件报数据库错误,登录数据库输入以下命令,再刷新监控页面
报错内容:You are running MySQL in Strict Mode, which is not supported by Thold.
j解决方法:mysql> set @@GLOBAL.sql_mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION";#修改全局变量的固定格式
七设置警报:
192.168.1.100 /boot used > 80% 报警并发送报警邮件 90% 严重错误
1、定义邮件用户 admins #组名 root@lcoalhost,cactiuser@localhost 收邮件 发邮件 Notification Lists-> 2、指定收发邮件的服务器 :192.168.1.101,搭建邮件服务 sendmail yum -y install sendmail dovecot #默认接受本地域的邮件
/etc/init.d/dovecot start /etc/init.d/sendmail start
测试收发邮件:mail -s "aaaa" cactiuser < /etc/hosts/ #给cactiuser发送邮件
NAME:主名 admin Description:描述信息 monitor administrator Email Addresses :
邮件地址列表 localhost,cactiuser@localhost
settings->mail/DNS->root@lcoalhost(测试邮件发送的目标邮件地址)->SMTP->cactiuser@localhost(发件人的email地址)->cactiuser(发件人的姓名)-》/var/sbin/sendmail(使用本机的邮件服务器发送)-》SMTP hostname(如果使用的是互联网的服务器,如网易,那么填写网易的邮件服务器地址、用户名、密码)
3、 对什么做报警:Thresholds->add