WEB服务与NGINX(23)- nginx的四层负载均衡功能

时间:2021-07-02 00:32:07   收藏:0   阅读:30


1. nginx实现四层的负载均衡

nginx从1.9.0版本开始支持TCP模式的负载均衡,在1.9.13版本开始支持udp协议的负载均衡,udp主要用户DNS域名解析。

1.1 nginx四层负载配置参数

以下指令由ngx_stream_core_module模块提供,主要用于实现基于tcp或udp的反向代理。

? listen address:port [ssl] [udp] [proxy_protocol] [backlog=number] [bind]
? [ipv6only=on|off] [reuseport]
? [so_keepalive=on|off|[keepidle]:[keepintvl]:[keepcnt];

? 配置环境:server

以下指令由ngx_stream_proxy_module模块提供,主要用于实现基于tcp或udp的反向代理。

以下指令由ngx_stream_upstream_module模块提供,主要用于实现负载均衡功能。

以上指令的使用示例如下:

stream {
    upstream backend {
        hash $remote_addr consistent;
        server backend1.example.com:8888 weight=1; max_fails=3 fail_timeout=10s;
        server 127.0.0.1:8889 max_fails=3 fail_timeout=10s;
        server unix:/path;
    }
    
    upstream dns {
        server 1.1.1.1:8853;
        server 1.1.1.2:53;
    }
    
    server {
        listen 1.1.1.3:8888;
        proxy_pass backend;
        proxy_timeout 5s;
        proxy_connect_timeout 10s;
    }
    
    server {
        listen 53 udp reuseport;
        proxy_timeout 10s;
        proxy_pass dns;
    }
    
    server {
        listen [::1]:1111;
        proxy_pass unix:/path/abc.socket;
    }
}

1.2 负载均衡示例-mariadb

实验场景如下:

技术分享图片

原文:https://www.cnblogs.com/xuwymm/p/14961182.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!