nginx负载均衡集群配置

举例环境:
转发服务:Nginx 1台。 IP地址为 192.168.1.20
应用服务:两台物理主机,每台配置两个Tomcat应用,共4个Tomcat应用。假定两台物理主机IP地址分别 192.168.1.21 和 192.168.1.22。四个Tomcat的http监听端口分别为: 8080和 9080

Tomcat服务配置:
关于Tomcat的启动配置略。
4个Tomcat启动之后,对应的Http请求的端口分别如下:
192.168.1.21:8080
192.168.1.21:9080
192.168.1.22:8080
192.168.1.22:9080

Nginx服务配置:
1、配置服务转发upstream。该配置是nginx的集群配置。将四个tomcat的节点组成一个集群
配置内容如下

    upstream fuzai_server {
        server 192.168.1.21:8080;
        server 192.168.1.21:9080; 
        server 192.168.1.22:8080;
        server 192.168.1.22:9080;
        ip_hash;
    }

其中paper_server为配置的集群名称,该名称任意。
Server后面对应的四个IP : port 的配置就是对应的四个Tomcat节点。
ip_hash表示采用针对访问IP的Hash算法进行转发。该配置的作用是,当客户端来自相同的一个IP,采用同一个节点进行转发的配置。如果想要采用四个Tomcat节点依次轮询的方式,将该配置去掉即可。

2、集群转发配置
配置内容如下:

server {
    listen       90;
    server_name   域名或ip;
    client_max_body_size 10240M;
    location / {
        proxy_pass          http://fuzai_server;
        proxy_set_header    X-Real-IP $remote_addr;
        proxy_set_header    X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header    Host $http_host;
    }
}

listen配置监听的端口为90
server_name配置访问服务器的域名,当同一个端口对应对个域名的情况下,该配置有用。
proxy_pass配置后面的 paper_server就是之前配置的upstream名称

猜你喜欢

转载自blog.csdn.net/weixin_36914964/article/details/81777271