Springcloud连接nacos集群,nacos地址配置为nginx,报错:requst nacos server failed

先说下版本:
Spring cloud: Hoxton.SR12
spring.cloud.alibaba: 2.2.9.RELEASE
spring.boot: 2.3.12.RELEASE
Linux Centos7
nacos-server:2.1.0
nginx: 1.20.2

环境说明:
nacos正常搭建三个集群 8849,8851,8853,能正常启动和访问,
nginx 做反向代理端口8002:浏览器访问nginx端口能正常转发nacos,一切都没有问题;
在这里插入图片描述

当通过Springboot配置文件连接nacos 地址更改为nginx时,项目启动报错,连接不上ngxin。
在这里插入图片描述
反复的查阅资料:最终可信的说法是nacos 2.X版本有端口偏移量,这个我信,因为在搭建nacos集群时,碰到了这个问题,当时端口定义为8849,8850,8851,最后启动后8849和8851能正常启动,8850报地址被占用。随后将8850改为8853,才得以解决。

nginx在浏览器上能正常转发到nacos节点,但是项目里连接不上nacos服务,警过一个星期的摸索,最终解决方案如下:

  1. 将linux 关机,然后依次启动nacos集群,保证nacos集群浏览器能正常访问。

  2. 编辑nginx.conf,在http 同级下新增stream 模块,其中所有端口都和你原来定义的端口加1000
    在这里插入图片描述

  3. 启动nginx,如果报stream的错,可能是你在安装ngxin是没有安装stream模块。
    nginx: [emerg] “stream“ directive is not allowed here in
    解决:找到你之前解压的nginx的包,文件名为nginx带版本号那个,然后进入
    在这里插入图片描述
    执行如下指令:./configure --with-stream 等待安装
    安装完后:执行make && make install
    重点:将虚拟机关机重启 重启nacos,重启nginx

  4. 浏览器访问nginx能正常转发到nacos页面。

  5. springboot部署如下,没什么特别之处,nacos的地址端口为nginx
    在这里插入图片描述

  6. 启动项目:
    在这里插入图片描述

  7. 访问nacos注册中心:服务成功注册上去了
    在这里插入图片描述

  • 4
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 8
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值