情景:最近本人给所在的准国企的一个项目搭建正式环境,遇到一个问题,问题是开发环境nacos地址为127.0.0.1,而正式环境中使用nacos集群的地址为192.168.0.1(编造,服务器真实涉密不方便透露原理一样)。这就造成bootstrap.yml中的nacos地址配置问题,到底配置哪个地址,项目才能正常启动?
首先来分析一下问题,开发环境nacos为单机版所以在本地服务器搭建了nacos单机版地址为127.0.0.1,这样没有什么问题。但是产品上线或者准上线时部署的环境通常为nacos集群(正式环境通常为了高可用,都会使用集群模式)。nacos集群官方推荐使用nginx负载均衡或者其他负载均衡方案,此时bootstrap.yml中nacos地址就会变成nacos.com或者nginx负载均衡地址192.168.0.1。所以会导致开发环境和正式环境nacos地址不一致的问题。有人就会说了?直接在负载均衡的nginx中部署然后nacos地址就可以填写127.0.0.1了,可以是可以,但是忽略了几个问题。 使用nacos的场景一般都为微服务或者分布式,都会部署应用集群,应用集群,项目启动本地服务器并没有nacos而地址配置的是127.0.0.1合适吗?
nacos集群方案:
域名+负载均衡

nginx负载均衡

解决方案:在配置文件配置域名
原理:为什么配置域名可以解决这个问题?原理是这样的,配置文件中配置域名比如a.com,然后在开发服务器和所有正式环境服务器的hosts文件中配置a.com的映射,映射到nacos集群地址。这样只要是本地hosts配置了a.com,服务器就会映射到nacos的集群地址。<
5359




被折叠的 条评论
为什么被折叠?



