以前一直用cacti或者mrtg来监控交换机流量,很少用来监控服务器,今天就让我们用cacti 监控linux 的具体实现步骤,今天先将下其基础安装snmp和rrdtool的编译安装和汉化
1、Cacti 监控Linux所需的snmpd的安装简单掠过
提示:由于硬件防火墙原因,可能导致异地的udp包有问题提供下修改snmp端口的方法:
snmpd tcp:端口或snmpd udp:端口
也可以直接在linux修改:/etc/rc.d/init.d/snmpd
例如更改为 tcp协议:100001端口
如下:
修改前
OPTIONS=" -s -l /dev/null -P /var/run/snmpd -a"
修改后
OPTIONS=" tcp:100001 -s -l /dev/null -P /var/run/snmpd -a"
然后
/etc/rc.d/init.d/snmpd restart 就ok了
2、Cacti 监控Linux所需的rrdtool安装
如果没有汉化的要求,***安装rpm包。
注意:安装时要一起安装,否则可能会出错:rpm -ivh perl-rrdtool-1.2.23-1.el5.rf.i386.rpm rrdtool-1.2.23-1.el5.rf.i386.rpm
要求支持mbstring,mbstring需要libmbfl库,Cacti使用了pcre,所以在自己编译的时候,一定要加入--with-pcre-regex --with-mbstring --with-libmbfl三项,都无需指定路径(
切记).
自己编译:
cp /usr/local/server/libpng/lib/pkgconfig/libpng12.pc /usr/local/server/libpng/lib/pkgconfig/libpng.pc /usr/local/server/freetype/lib/pkgconfig/freetype2.pc/usr/local/server/fontconfig/lib/pkgconfig/fontconfig.pc /usr/lib/pkgconfig/
3、Cacti 的安装和使用
基础应用:
解压到web目录下,执行 mysql -uroot -p cacti < cacti.sql vi include/config.php 更改数据库的连接信息
建议新建一个用户newuser,把cacti下rrd和log目录权限给新用户,新建任务 crontab -u newuser -e
添加下面这条 */5 * * * * /usr/local/server/php5/bin/php /usr/local/server/www/cacti/poller.php > /dev/null 2>&1
到此,基础应用已经可以了。
另外需要配置被监控主机的snmp 密码 等信息:
vi /etc/snmp/snmpd.conf
更改
1、com2sec notConfigUser default public
改为:com2sec notConfigUser 127.0.0.1(改成监控服务器的ip) public(改成自己的密码)
2、access notConfigGroup "" any noauth exact systemview none none
改为:access notConfigGroup "" any noauth exact all none none
3、#view all included .1 80
将前面的 # 注释 去掉。
【编辑推荐】