参考文档:https://www.cnblogs.com/kevingrace/p/6685698.html

  本次使用第三方模块nginx_upstream_check_module的,要使用这个第三方模块首先您需要进行下载,然后通过patch命令将补丁打入您原有的Nginx源码中,并且重新进行编译安装。

  下载nginx_upstream_check_module模块

wget https://codeload.github.com/yaoweibin/nginx_upstream_check_module/zip/master

  解压

 unzip master

  解压后的Nginx和nginx_upstream_check_module-master在同一目录下

  将补丁打入源码(没有patch命令使用yum -y install patch安装)

cd nginx-1.6.3
patch -p1 < ../nginx_upstream_check_module-master/check_1.5.12+.patch

  出现以下代表成功(根据nginx版本选择不同的check)

  编译安装nginx

./configure --prefix=/usr/local/nginx --add-module=../nginx_upstream_check_module-master --with-http_stub_status_module
make && make install

  通过以上的步骤,第三方的nginx_upstream_check_module模块就在Nginx中准备好了。接下来我们讲解一下如何使用这个模块。首先看一下upstream的配置信息

  interval:必要参数,检查请求的间隔时间。

  fall:当检查失败次数超过了fall,这个服务节点就变成down状态。

  rise:当检查成功的次数超过了rise,这个服务节点又会变成up状态。

  timeout:请求超时时间,超过等待时间后,这次检查就算失败。

  default_down:后端服务器的初始状态。默认情况下,检查功能在Nginx启动的时候将会把所有后端节点的状态置为down,检查成功后,在置为up。

  type:这是检查通信的协议类型,默认为http。以上类型是检查功能所支持的所有协议类型。

  一个完整的nginx配置信息如下nginx.conf

worker_processes  4;
error_log logs/error.log;
events {
worker_connections 10240;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
upstream ekp {
server 10.1.1.131:8080;
server 10.1.1.132:8080;
server 10.1.1.135:8080;
check interval=3000 rise=2 fall=5;
check_keepalive_requests 100;
check_http_send "HEAD / HTTP/1.1\r\nConnection: keep-alive\r\n\r\n";
check_http_expect_alive http_2xx http_3xx;
}
server {
listen 80;
server_name www.test.com;
access_log /usr/local/nginx/logs/access.log;
location / { root ekp;
index index.html index.htm index.jsp;
proxy_pass http://ekp;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size 200m;
proxy_connect_timeout 10;
proxy_read_timeout 300;
proxy_send_timeout 300;
}
location /nstatus {
check_status;
access_log on;
}
}
}

  PS:这里配置按照参考文档加timeout=1000 type=http 否则无法负载均衡

  访问测试 http://ip/nstatus

  

Nginx负载均衡后端健康检查的更多相关文章

  1. Nginx负载均衡后端健康检查(支持HTTP和TCP)

    之前有一篇文章记录nginx负载均衡后端检查,链接为 https://www.cnblogs.com/minseo/p/9511456.html 但是只包含http健康检查不包含tcp下面安装ngin ...

  2. nginx高性能WEB服务器系列之六--nginx负载均衡配置+健康检查

    nginx系列友情链接:nginx高性能WEB服务器系列之一简介及安装https://www.cnblogs.com/maxtgood/p/9597596.htmlnginx高性能WEB服务器系列之二 ...

  3. Nginx负载均衡之健康检查

    负载均衡实例 http{ upstream myserver { server 10.10.10.1 weight=3 max_fails=3 fail_timeout=20s; server 10. ...

  4. Nginx负载均衡 后端服务器怎么共享Session 问题

    Nginx负载均衡 Nginx负载均衡一些基础知识: nginx 的 upstream目前支持 4 种方式的分配 1).轮询(默认)       每个请求按时间顺序逐一分配到不同的后端服务器,如果后端 ...

  5. Nginx 负载均衡 后端服务器获取前端用户真实IP

    Nginx 后端 日志文件 获取的都是 前端 负载均衡器的IP 想要获取用户的真实IP 必须 使用Nginx 的模块  http_realip_module  才行!! 1. 编译 Nginx 的时候 ...

  6. Nginx 负载均衡 后端 监控检测 nginx_upstream_check_module 模块的使用

    在使用nginx 的负载均衡 中,我们通常会使用到 Nginx 自带的 ngx_http_proxy_module 健康检测模块. ngx_http_proxy_module 自带的 健康检测模块参数 ...

  7. nginx负载均衡后端tomcat无法加载js资源

    JS或css无法完全加载 nginx的代理缓存区,默认较小导致部分文件出现加载不全的问题,比较典型的如jQuery框架,可以通过配置调整nginx的缓存区即可.主要参考proxy参数 最终完整配置如下 ...

  8. Nginx负载均衡中后端节点服务器健康检查的操作梳理

    正常情况下,nginx做反向代理,如果后端节点服务器宕掉的话,nginx默认是不能把这台realserver踢出upstream负载集群的,所以还会有请求转发到后端的这台realserver上面,这样 ...

  9. Nginx负载均衡中后端节点服务器健康检查的一种简单方式

    摘自:https://cloud.tencent.com/developer/article/1027287 一.利用nginx自带模块ngx_http_proxy_module和ngx_http_u ...

随机推荐

  1. &lt;climits&gt;头文件定义的符号常量

    <climits>头文件定义的符号常量 CHAR_MIN  char的最小值 SCHAR_MAX  signed char 最大值 SCHAR_MIN   signed char 最小值 ...

  2. XCode各种问题

    2018.07.10 1.clang: warning: libstdc++ is deprecated; move to libc++ [-Wdeprecated] 2.2018.07.29  海康 ...

  3. [C#] .NET Core/Standard 1.X 项目中如何使用XmlIgnoreAttribute等标准范围外的内容,兼谈如何解决“violation of security transparency rules failed”(违反安全透明规则失败)异常

    作者: zyl910 一.缘由 XML序列化是一个很常用的功能,但对于.NET Core/Standard,其直到2.0版才内置支持XML序列化.具体来说, .NET Core 2.0 或 .NET ...

  4. 并行排序ShearSort ---[MPI , c++]

    思想: (1) 对于一个nxm的数组,使用N个work进行处理. (2) 先按行对数组进行升序和降序排序[由左至右],一般奇数序列work升序,偶数序号的work进行降序 (3)再按列对数组进行升序排 ...

  5. Effective Java 第三版——63. 注意字符串连接的性能

    Tips 书中的源代码地址:https://github.com/jbloch/effective-java-3e-source-code 注意,书中的有些代码里方法是基于Java 9 API中的,所 ...

  6. Apigee 简介与简单试用

     Apigee (国内访问需要***)是一家成立于2004年的API管理公司,于2016年9月被Google收购,作为Google云的服务之一.Apigee提供从API设计.开发.管理.门户.网关等 ...

  7. SQL Server 2016新特性:列存储索引新特性

    SQL Server 2016新特性:列存储索引新特性 行存储表可以有一个可更新的列存储索引,之前非聚集的列存储索引是只读的. 非聚集的列存储索引支持筛选条件. 在内存优化表中可以有一个列存储索引,可 ...

  8. Mina简单的入门示例

    Mina是Apache下的一个网络应用程序框架,用来帮助用户简单地开发高性能和高可扩展性的网络应用程序.它提供了一个通过Java NIO在不同的传输协议上抽象的事件驱动的异步API,例如TCP/IP和 ...

  9. mail 发送邮件

    (1) 直接使用shell当编辑器 # mail -s "Hello from linuxde.net by shell" admin@linuxde.net hello,this ...

  10. php 慢配置文件

    [root@localhost etc]# cat php-fpm.conf[global]pid = /usr/local/php/var/run/php-fpm.piderror_log = /u ...