在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