nginx检测后台的webserver健康状态

让nginx在反向代理的时候能实现对后台的web server进行状态检测

1、编译安装nginx
 
检测状态补丁的软件包:healthcheck_nginx_upstreams.zip

unzip healthcheck_nginx_upstreams.zip

重命名文件
mv  cep21-healthcheck_nginx_upstreams-16d6ae7 healthcheck_nginx_upstreams

nginx的软件包:nginx-1.0.11.tar.gz
tar xf nginx-1.0.11.tar.gz
cd nginx-1.0.11

打补丁:
patch -p1 < ../healthcheck_nginx_upstreams/nginx.patch

编译安装nginx
./configure   --prefix=/usr   --sbin-path=/usr/sbin/nginx   --conf-path=/etc/nginx/nginx.conf   --error-log-path=/var/log/nginx/error.log   --http-log-path=/var/log/nginx/access.log   --pid-path=/var/run/nginx/nginx.pid    --lock-path=/var/lock/nginx.lock   --user=nginx   --group=nginx   --with-http_ssl_module   --with-http_flv_module   --with-http_stub_status_module   --with-http_gzip_static_module   --http-client-body-temp-path=/var/tmp/nginx/client/   --http-proxy-temp-path=/var/tmp/nginx/proxy/   --http-fastcgi-temp-path=/var/tmp/nginx/fcgi/   --with-pcre   --add-module=/root/healthcheck_nginx_upstrea
make && make install

2、为两台服务器配置测试页面

本机172.16.6.3有webserver工作在8080的端口
另外一台172.16.0.1的80端口

172.16.6.3的配置(既是webserver又是nginx)
yum install httpd
vim /etc/httpd/conf/httpd.conf
 Listen 8080

添加网页
cd /var/www/html
vim index.html
 <h1>
 172.16.6.3
 </h1>
vim health
 I_AM_ALIVE

启动服务service httpd start

为172.16.0.1配置同样的测试也即health

先保证正常提供服务
http://172.16.6.3
http://172.16.6.3/health
http://172.16.0.1/health

3、配置nginx,使用反向代理,并能检测后台服务

在http中添加如下:
upstream backend {
    server 127.0.0.1:8080;
    server 172.16.0.1:80;
    healthcheck_enabled;
    healthcheck_delay 1000;
    healthcheck_timeout 1000;
    healthcheck_failcount 1;
    healthcheck_send "GET /health HTTP/1.0";
   }

在server中添加如下:

location / {
         proxy_set_header Host $http_host;
         proxy_pass http://backend;
         proxy_connect_timeout 3;
        }
        location /stat {
        healthcheck_status;
       }


启动服务service nginx start

4、在客户端验证
http://172.16.6.3/statu
在打开的页面中显示Last health status为OK,Is down?为0表示两台服务器都正常。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(nginx,webserver,休闲,健康状态,检测后台)