Nginx配置负载均衡到网关

Nginx配置负载均衡到网关

1.需求图示

前置准备工作

2.配置实现

1.在C:WindowsSystem32driversetc目录下修改hosts文件

#配置llpliving.com nginx虚拟机
192.168.56.100  www.llpliving.com

2.配置nginx负载均衡,这里网关服务只有一个因此只配置了一个,如果由多个可以添加多个,默认轮询方式

#修改配置文件,配置负载均衡
vi /mydata/nginx/conf/nginx.conf
#1.配置要进行负载均衡的服务器ip和端口 llpliving由可以根据实际情况命名
#2.注意upstream上游服务器配置在http全局块中
  upstream llpliving{
          
   
        server 192.168.79.1:5050;
        #...
   }

3.配置反向代理

# 1.拷贝default.conf 到 llpliving.conf文件
cp default.conf llpliving.conf
# 2.修改 llpliving.conf配置文件
vi llpliving.conf
或者
vi /mydata/nginx/conf/conf.d/llpliving.conf
#重启 nginx
sudo docker restart nginx

在前面配置了本机hosts解析www.llpliving.com 对应的ip 192.168.56.100(虚拟机nginx的ip)

这里为什么会失败?

4.配置网关

6.再次修改 vi /mydata/nginx/conf/conf.d/llpliving.conf

7.重启nginx

sudo docker restart nginx

3.访问测试

4.注意事项和细节

1、!!网关配置不要把 Host 路由配置到前面, 否则按照域名+api 方式的路由就不会成功了, 因为会优 先匹配到 Host

2、将路由配置放在其它路由配置后面, 再测试就 OK 了

# for nginx 增加一组路由
        - id: llpliving_host_route
          uri: lb://llpliving-commodity
          predicates:
            - Host=**.llpliving.com
经验分享 程序员 微信小程序 职场和发展