Nacos笔记(五):Nacos集群整合Nginx

前言

  Nginx搭建,参考:Linux安装Nginx

1、Nginx配置

  添加nacos集群,调整端口与服务名,并设置代理,详情如下:

  

   配置详情如下

http {
    include       mime.types;
    default_type  application/octet-stream;

    sendfile        on;

    keepalive_timeout  65;

    upstream nacos {
        server 192.168.33.55:8848;
        server 192.168.33.55:8868;
        server 192.168.33.55:8898;
     }

    server {
        listen       85;
        server_name  192.168.33.55;


        location / {
            root   html;
            index  index.html index.htm;
            proxy_pass   http://nacos;
        }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }

2、启动nginx

  在sbin目录下,执行nginx启动命令:

./nginx

3、验证

1、Nacos控制台

  

2、Nacos集群配置持久化

  添加配置,详情如下:

  

  已持久化至数据库。

  

3、服务注册

  上述Nginx的配置,无法集成到SpringBoot的项目中,演示详情如下:  

  

  项目启动报错如下:

  

3.1、集成项目中的Nginx配置

  可集成到SpringBoot项目的Nginx配置如下:

  

   配置详情如下:

worker_processes  1;

events {
    worker_connections  1024;
}

http {
    # 负载均衡配置
    upstream nacos {
        server 192.168.33.55:8848;
        server 192.168.33.55:8868;
        server 192.168.33.55:8898;
    }
    # nacos服务配置
    server {
        listen       8085;
        server_name  192.168.33.55;
        location / {
            # 反向代理
            proxy_pass http://nacos;
        }
    }
}

# nacos的grpc协议配置
stream {
   # 负载均衡配置(TCP长连接配置),端口号在前面的端口号前要进行偏置1000
   upstream nacos-tcp {
     server 192.168.33.55:9848;
     server 192.168.33.55:9868;
     server 192.168.33.55:9898;
   }

   # 监听端口号在前面的端口号前要进行偏置1000
    server {
      listen 9085;
      proxy_pass nacos-tcp;
    }
}

3.2、验证如下

    

  SpringBoot启动日志输出详情如下:

  

  注册详情如下:

  

4、搭建集群中使用Nginx遇到的问题

1、has suspicious symbols

  

   原因:nginx要求 server_name 不能包含“/” ,将server_name 调整为 192.168.33.55即可。

2、Nginx做Naocs的代理服务器,SpringBoot连接异常

  nacos2.x版本新增了grpc通信端口,需要在nginx中进行相关配置配置,才能在SpringBoot项目中正常使用。  

 

 

 

posted @ 2023-04-20 10:03  无虑的小猪  阅读(1686)  评论(0编辑  收藏  举报