历史版本11 :Nginx增加主动检查健康机制 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 下载主动健康检查模块编辑

请根据本文逻辑自行推断自己对应的安装路径

下载:主动健康检查模块  提取码: b6s2 ,放在 /usr/nginx 路径下

2. 下载nginx源码编辑

先看一下nginx版本

/usr/local/nginx/sbin/nginx -V

下载对应版本nginx源码,放在 /usr/nginx 路径下

wget http://nginx.org/download/nginx-1.x.x.tar.gz 

3. 应用健康检查补丁编辑


tar zxvf nginx-1.x.x.tar.gz #解压安装包
unzip ngx_healthcheck_module-master.zip #解压安装包
cd /usr/nginx/nginx-1.x.x #进入解压目录
patch -p1 < /usr/nginx/ngx_healthcheck_module-master/nginx_healthcheck_for_nginx_1.x+.patch 
#应用健康检查补丁,选择与nginx版本对应的补丁包,如nginx-1.15.0 则选nginx_healthcheck_for_nginx_1.14+.patch
# 1.12+ 对应 nginx-1.12.0 及以上版本,1.14+ 对应 nginx-1.14.0 及以上版本

4.编译安装编辑

./configure --prefix=/usr/nginx --with-http_stub_status_module --with-stream --add-module=/usr/nginx/ngx_healthcheck_module-master
# configure 参数与上一步中configure arguments一致,
# --with-stream --add-module=/usr/nginx/ngx_healthcheck_module-master 代表新增的模块
make #注意不要make install,不然就覆盖安装了
./objs/nginx -t # 测试是否编译成功
# 如果编译失败了,可以用make clean清除编译文件
cp /usr/nginx/sbin/nginx /usr/nginx/sbin/nginx_bak
cp /usr/nginx/nginx-1.15.6/objs/nginx /usr/nginx/sbin/
# 备份旧nginx,并用新的覆盖

覆盖时,部分操作系统 需要输入y 进行确认

image2019-7-3_17-20-2.png

5. Nginx配置编辑

下载地址  提取码: y1er ,修改文件内节点 IP 和端口,并将下图中被注释掉的主动健康检查相关代码释放出来

企业微信截图_15657663473831.png

重命名为 nginx.conf,然后替换原始的/usr/nginx/conf/nginx.conf

6. 检查页面编辑

访问 IP/status 查看检查页面,如图,192.168.5.46节点处于宕机状态

1565849742569732.png