Cacti监控Nginx运行状态的方法

Cacti或者是Cactiez监控主机:192.168.12.5

Nginx服务器:192.168.9.25

1、 首先nginx编译时允许http_stub_status_module,不然是监控不到nginx的运行状态的

2、编辑配置文件

 
  
  1. # vi /usr/local/nginx/conf/nginx.conf  


  2. location /NginxStatus/ {  


  3. stub_status on;  


  4. access_log off;  


  5. allow 192.168.0.0/16;#意思是只允许内网能看到监控信息  


  6. deny all;  


  7. }  


3、重新加载nginx的配置文件

 
  
  1. # kill -HUP `cat /usr/local/nginx/logs/nginx.pid`  


4、在Cacti主机上下载nginx监控模板

 
  
  1. # wget http://forums.cacti.net/download/file.php?id=12676


  2. # tar xvfz cacti-nginx.tar.gz  


  3. # cp cacti-nginx/get_nginx_socket_status.pl /data/cacti/scripts/  


  4. # cp cacti-nginx/get_nginx_clients_status.pl /data/cacti/scripts/  


  5. # chmod 755 /data/cacti/scripts/get_nginx*  


5、检测插件

 
  
  1. # /data/cacti/scripts/get_nginx_clients_status.pl http://192.168.9.25/NginxStatus/  


输出信息:nginx_active:245 nginx_reading:11 nginx_writing:4 nginx_waiting:230

 
  
  1. /data/cacti/scripts/get_nginx_socket_status.pl http://192.168.9.25/NginxStatus/  


输出信息:nginx_accepts:41377 nginx_handled:41377 nginx_requests:223307

6、在cacti管理面板导入

 
  
  1. cacti_graph_template_nginx_clients_stat.xml  


  2. cacti_graph_template_nginx_sockets_stat.xml  


7、添加主机,在创建图形的时候会提示你输入URL of nginx stub status,后面你所监控的页面额url,比如上面我们的http://192.168.9.25/NginxStatus/,然后稍等下数据就会出来了。

8、缺少组件解决方法:

如果你在测试第5步的过程中出现了以下信息:no (LWP::UserAgent not found),出现这个问题是perl里缺少组件,你可以按照下面的步骤解决:

 
  
  1. # perl -MCPAN -e shell  


  2. # cpan> install LWP::UserAgent  


如果perl组件安装成功,那么在此检测你就会得到正常的数据了。