cacti
使用persona for cacti插件监控mysql
需要mysql调优,安装了一个cacti监控插件 Percona Monitoring Plugins ,
官方地址:http://www.percona.com/software/percona-monitoring-plugins/
1 下载 percona-monitoring-plugins-1.0.0.tar.gz
2 上传 ss_get_mysql_stats.php 到cacti的scripts目录/usr/share/cacti/site/scripts
3 进入cacti的web页面import 数据模版cacti_host_template_percona_mysql_server_ht_0.8.6i-sver1.0.0.xml
4 设置ss_get_mysql_stats.php里的mysql账号链接
5 Percona Monitoring Plugins参考文档:http://form.percona.com/rs/percona/images/Percona_Monitoring_Plugins_100_Operations_Manual.pdf
cacti的rrdtool画不出图来的问题
1 习惯性的把rrd的文件rm -rf *掉了,发现cron过了好多次都没画出图来
2 检查权限,权限ok的,cron的执行用户和/var/www/cacti/rra目录的拥有者是同一个用户
bear@njava:/var/www/cacti/rra$ sudo vi /etc/crontab # /etc/crontab: system-wide crontab # Unlike any other crontab you don't have to run the `crontab' # command to install the new version when you edit this file # and files in /etc/cron.d. These files also have username fields, # that none of the other crontabs do. SHELL=/bin/sh PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin # m h dom mon dow user command 17 * * * * root cd / && run-parts --report /etc/cron.hourly 25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily ) 47 6 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly ) 52 6 1 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly ) */5 * * * * www-data php /var/www/cacti/poller.php > /dev/null 2>&1
3 把Poller Type由spine改成cmd.php,奇迹发生了,图被画出来了,之后再改回spine,运转正常
cacti通过snmp监控ubuntu9.10网卡流量遇到的问题
折腾无线,snmp总是链接不上,debug报如下错误;
+ Running data query [1]. + Found type = '3' [snmp query]. + Found data query XML file at '/var/www/cacti/resource/snmp_queries/interface.xml' + XML file parsed ok. + Executing SNMP walk for list of indexes @ '.1.3.6.1.2.1.2.2.1.1' + No SNMP data returned + Found data query XML file at '/var/www/cacti/resource/snmp_queries/interface.xml' + Found data query XML file at '/var/www/cacti/resource/snmp_queries/interface.xml' + Found data query XML file at '/var/www/cacti/resource/snmp_queries/interface.xml'
谷歌百度,终于找到解决办法,记录之。。。
bear@njava:/var/www/njava$ sudo vi /etc/snmp/snmpd.conf # First, map the community name (COMMUNITY) into a security name # (local and mynetwork, depending on where the request is coming # from): # sec.name source community #com2sec paranoid default public #com2sec paranoid default njava com2sec readonly default public bear@njava:/var/www/njava$ sudo /etc/init.d/snmpd restart
获取到后的数据源
+ Running data query [1]. + Found type = '3' [snmp query]. + Found data query XML file at '/var/www/cacti/resource/snmp_queries/interface.xml' + XML file parsed ok. + Executing SNMP walk for list of indexes @ '.1.3.6.1.2.1.2.2.1.1' + Index found at OID: '1.3.6.1.2.1.2.2.1.1.1' value: '1' + Index found at OID: '1.3.6.1.2.1.2.2.1.1.2' value: '2' + Index found at OID: '1.3.6.1.2.1.2.2.1.1.3' value: '3' + Located input field 'ifIndex' [walk] + Executing SNMP walk for data @ '.1.3.6.1.2.1.2.2.1.1' + Found item [ifIndex='1'] index: 1 [from value] + Found item [ifIndex='2'] index: 2 [from value] + Found item [ifIndex='3'] index: 3 [from value] + Located input field 'ifOperStatus' [walk] + Executing SNMP walk for data @ '.1.3.6.1.2.1.2.2.1.8' + Found item [ifOperStatus='Up'] index: 1 [from value] + Found item [ifOperStatus='Up'] index: 2 [from value] + Found item [ifOperStatus='Down'] index: 3 [from value] + Located input field 'ifDescr' [walk] + Executing SNMP walk for data @ '.1.3.6.1.2.1.2.2.1.2' + Found item [ifDescr='lo'] index: 1 [from value] + Found item [ifDescr='eth0'] index: 2 [from value] + Found item [ifDescr='eth1'] index: 3 [from value] + Located input field 'ifName' [walk] + Executing SNMP walk for data @ '.1.3.6.1.2.1.31.1.1.1.1' + Found item [ifName='lo'] index: 1 [from value] + Found item [ifName='eth0'] index: 2 [from value] + Found item [ifName='eth1'] index: 3 [from value] + Located input field 'ifAlias' [walk] + Executing SNMP walk for data @ '.1.3.6.1.2.1.31.1.1.1.18' + Found item [ifAlias=''] index: 1 [from value] + Found item [ifAlias=''] index: 2 [from value] + Found item [ifAlias=''] index: 3 [from value] + Located input field 'ifType' [walk] + Executing SNMP walk for data @ '.1.3.6.1.2.1.2.2.1.3' + Found item [ifType='softwareLoopback(24)'] index: 1 [from value] + Found item [ifType='ethernetCsmacd(6)'] index: 2 [from value] + Found item [ifType='ethernetCsmacd(6)'] index: 3 [from value] + Located input field 'ifSpeed' [walk] + Executing SNMP walk for data @ '.1.3.6.1.2.1.2.2.1.5' + Found item [ifSpeed='10000000'] index: 1 [from value] + Found item [ifSpeed='100000000'] index: 2 [from value] + Found item [ifSpeed='0'] index: 3 [from value] + Located input field 'ifHwAddr' [walk] + Executing SNMP walk for data @ '.1.3.6.1.2.1.2.2.1.6' + Found item [ifHwAddr=''] index: 1 [from value] + Found item [ifHwAddr='00:0D:60:D4:BC:04'] index: 2 [from value] + Found item [ifHwAddr='00:0D:60:D4:BC:05'] index: 3 [from value] + Located input field 'ifIP' [walk] + Executing SNMP walk for data @ '.1.3.6.1.2.1.4.20.1.2' + Found item [ifIP='127.0.0.1'] index: 1 [from regexp oid parse] + Found item [ifIP='8.8.8.8'] index: 2 [from regexp oid parse] + Found data query XML file at '/var/www/cacti/resource/snmp_queries/interface.xml' + Found data query XML file at '/var/www/cacti/resource/snmp_queries/interface.xml' + Found data query XML file at '/var/www/cacti/resource/snmp_queries/interface.xml' + Found data query XML file at '/var/www/cacti/resource/snmp_queries/interface.xml' + Found data query XML file at '/var/www/cacti/resource/snmp_queries/interface.xml' + Found data query XML file at '/var/www/cacti/resource/snmp_queries/interface.xml'
参考:http://www.linuxquestions.org/questions/linux-networking-3/cacti-traffic-stats-snmp-config-prob-378983/
在ubuntu9.10下用cacti监控nginx运行
Cacti 在英文中的意思是仙人掌的意思,Cacti是一套基于PHP,MySQL,SNMP及RRDTool开发的网络流量监测图形分析工具。它通过snmpget来获取数据,使用 RRDtool绘画图形,而且你完全可以不需要了解RRDtool复杂的参数。它提供了非常强大的数据和用户管理功能,可以指定每一个用户能查看树状结 构、host以及任何一张图,还可以与LDAP结合进行用户验证,同时也能自己增加模板,功能非常强大完善。http://www.cacti.net/
1 安装cacti
bear@njava:/$ sudo apt-get install cacti-cactid
2 下载cacti-nginx脚本
bear@njava:/$ wget http://forums.cacti.net/download.php?id=12676 bear@njava:/$ tar -xzvf cacti-nginx.tar.gz bear@njava:/$ sudo cp cacti-nginx/get_nginx_socket_status.pl /usr/share/cacti/site/scripts bear@njava:/$ sudo cp cacti-nginx/get_nginx_clients_status.pl /usr/share/cacti/site/scripts bear@njava:/$ sudo chmod 755 /usr/share/cacti/site/scripts/get_nginx*
3 检查脚本
bear@njava:/$ /usr/share/cacti/site/scripts/get_nginx_socket_status.pl http://www.njava.com/nginx_status
4 配置cacti的nginx虚拟主机
bear@njava:$ sudo vi /etc/nginx/sites-available/cacti server { listen 80; server_name cacti.njava.com; access_log /var/log/nginx/cacti.access.log; location / { root /usr/share/cacti/site; index index.html index.htm index.php; } location ~ \.php$ { fastcgi_pass unix:/tmp/php-cgi.njava.sock; fastcgi_index index.php; set $path_info "/"; set $real_script_name $fastcgi_script_name; if ($fastcgi_script_name ~ "^(.+?\.php)(/.+)$") { set $real_script_name $1; set $path_info $2; } fastcgi_param SCRIPT_FILENAME /usr/share/cacti/site/$real_script_name; fastcgi_param script_name $real_script_name; fastcgi_param path_info $path_info; include /etc/nginx/fastcgi_params; } } bear@njava:$ sudo ln -s /etc/nginx/sites-available/cacti /etc/nginx/sites-enable/cacti bear@njava:$ sudo /etc/init.d/nginx reload
5 从cacti的UI上传cacti模板
cacti_graph_template_nginx_clients_stat.xml cacti_graph_template_nginx_sockets_stat.xml