Cacti监控Nginx运行状态的方法


Cacti或者是Cactiez监控主机:192.168.1.200


Nginx服务器:192.168.1.200


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


2、编辑配置文件


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

location /NginxStatus/ {  

stub_status on;  

access_log off;  

allow 192.168.1.0/24;#意思是只允许1段IP能看到监控信息  

deny all;  

}  

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


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

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


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

# tar xvfz cacti-nginx.tar.gz  

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

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

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

5、检测插件


# /data/cacti/scripts/get_nginx_clients_status.pl http://192.168.1.200/NginxStatus/  

输出信息:nginx_active:1 nginx_reading:0 nginx_writing:1 nginx_waiting:0


#/data/cacti/scripts/get_nginx_socket_status.pl http://192.168.1.200/NginxStatus/  

输出信息:nnginx_accepts:583 nginx_handled:583 nginx_requests:6061


6、在cacti管理面板导入

导入的方式是 Import Templates  >  Import Template from Local File (浏览导入插件包另外2个文件)

cacti_graph_template_nginx_clients_stat.xml  

cacti_graph_template_nginx_sockets_stat.xml  


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


8、缺少组件解决方法:


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


# perl -MCPAN -e shell  

# cpan> install LWP::UserAgent  

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


如果遇到错误

1、执行perl -MCPAN -e shell出错,提示如下:


[root@localhost]# perl -MCPAN -e shell

Can't locate CPAN.pm in @INC


2、到cpan的官方站点下载CPAN模块


#wget http://www.cpan.org/authors/id/A/AN/ANDK/CPAN-2.00.tar.gz

3、解压,编绎,安装


[root@localhost]# tar -zxvf CPAN-2.00.tar.gz

[root@localhost]# cd CPAN-2.00


[root@localhost CPAN-2.00]# perl Makefile.PL


[root@localhost CPAN-2.00]# make


[root@localhost CPAN-2.00]# make install


4、成功进入CPAN的shell模式


[root@localhost CPAN-2.00]# perl -MCPAN -e shell

输入两个yes后提示错误

Can't locate Time/HiRes.pm in @INC

安装 #yum -y install perl-Time-HiRes

然后无此错误,再输入上面命令后perl会自动下载安装