一 、查看已安装的nginx是否包含stub_status模块
/usr/local/nginx/sbin/nginx -V nginx version: Nginx/1.2.0 configure arguments: --with-http_stub_status_module
确定支持stub_status模块后编辑修改nginx.conf
location /nginx_status {
stub_status on; //这个选项参数就是在编译时对stub_status模块的支持,如果不编译加入则会在启动nginx时有警告信息
access_log off;
}
注意, nginx.conf虚拟主机 server{} 中,
也需要已经加入:
location /nginx_status {
stub_status on;
access_log off;
}
二、重启Nginx服务器
/usr/local/nginx/sbin/nginx -s reload 设置定时收集数据
测试访问路径:http://ip/nginx_status/ #注意此处的 nginx_status 需要与配置文件中的一致。
三、安装nginx-rrd
下载nginx-rrd
yum install perl rrdtool perl-libwww-perl libwww-perl perl-rrdtool
确保rrdtool和相应的perl被安装上。
wget http://wcoserver.googlecode.com/files/nginx-rrd-0.1.4.tgz
tar zxvf nginx-rrd-0.1..tgz
cd nginx-rrd-0.1.
cp cp usr/sbin/* /usr/sbin #复制主程序文件到 /usr/sbin 下
cp etc/nginx-rrd.conf /etc #复制配置文件到 /etc 下
创建Nginx-rrd生成目录
#这是一个web站点 具有外部访问功能 mkdir /data/wwwroot/nginx && mkdir /data/wwwroot/nginx/rrd
cp html/index.php /data/wwwroot/nginx
vi /etc/nginx-rrd.conf 编辑配置文件,修改完成后如下: #####################################################
#
# dir where rrd databases are stored
RRD_DIR="/home/wwwroot/nginx/rrd";
# dir where png images are presented
WWW_DIR="/home/wwwroot/nginx";
# process nice level
NICE_LEVEL="-19";
# bin dir
BIN_DIR="/usr/sbin";
# servers to test
# server_utl;server_name
SERVERS_URL="http://www.vpser.net/nginx_status;www.vpser.net" 多个server,可以SERVERS_URL中空格分开,前部分为nginx_status的地址,后面为被监控主机的域名。 SEVERS_URL 格式 http://domain1/nginx_status;domain1 http://domain2/nginx_status;domain2:注意此处的格式
注意编辑 nginx-rrd-0.1.4.tgz 包中的index.php的文件,图片-路径等。
设置定时收集数据:
vim /etc/crontab
* * * * * root /usr/sbin/nginx-collect
*/15 * * * * root /usr/sbin/nginx-graph
重启crondtab后生效。