Nginx均衡TCP协议服务器案例

Posted linux博客

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Nginx均衡TCP协议服务器案例相关的知识,希望对你有一定的参考价值。

nginx在企业运维中通常用来均衡HTTP协议,例如我们熟知的80、8080、8081等服务。因为大部分的服务都是http请求访问协议,那有时候需要用到TCP协议,如果来实现均衡呢?

默认nginx不支持tcp的负载均衡,需要打补丁,(连接方式:从客户端收到一个连接,将从本地新建一个连接发起到后端服务器。)

接下来正式配置Nginx均衡TCP:

wget http://nginx.org/download/nginx-1.6.2.tar.gz

wget https://github.com/yaoweibin/nginx_tcp_proxy_module/archive/master.zip

源码主页: https://github.com/yaoweibin/nginx_tcp_proxy_module

分别下载两个软件包,然后unzip master.zip解压后如下图:

 

tar xvf nginx-1.6.2.tar.gz

cd nginx-1.6.2

patch -p1 </root/nginx_tcp_proxy_module-master/tcp.patch

./configure  --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --add-module=/root/nginx_tcp_proxy_module-master

 make

 make install

编译完成后,如下图:(有TCP模块参数)

 

在nginx.conf配置http段之前添加:

tcp {

        upstream cluster {

            #simple round-robin

            server 192.168.33.10:1234;

            server 192.168.33.10:2345;

            check  interval=3000  rise=2  fall=5  timeout=1000;

        }

        server {

            listen 8888;

            proxy_pass cluster;

        }

    }

如上配置之后,访问nginx 8888端口,默认会将请求转发到后端1234 和2345请求。

以上是关于Nginx均衡TCP协议服务器案例的主要内容,如果未能解决你的问题,请参考以下文章

11.负载均衡nginx

Nginx作为负载均衡服务介绍

nginx如何做到TCP的负载均衡

Nginx四层负载均衡实践

nginx如何做到TCP的负载均衡

Consul-template, Nginx实现Thrift Consul负载均衡