在linux上配置Consul的遇到的坑
转载地址
问题
在windows上配置consul注册中心,并且运行项目也没有任何问题。
但是linux上配置consul注册中心时,通过外网访问发现服务一直处于报错状态,
日志打印出来的是
GET http://manager:18081/actuator/health: dial tcp: look up xxxx on 100.100.2.136:53:no such host
1
manager 是我的计算机名
18081端口是我的微服务端口号
解决的过程
误区
觉得是配置文件问题,这种百度springcloud里面怎么配置consul,看到错误没有仔细去想,因为我的服务名是manager,总觉得是springcloud gateway里面 lb://manager 出了问题,没有想到manager是我的计算机名
,而且不够细心,windos环境下 健康检测是
我出现问题电脑上面显示D开头英文,后面有时间复现这个问题补充,如果一开始显示localhost,我上linux环境下,马上就能看出来是主机名的问题
手动查看
curl http://manager :18081/actuator/health 发现状态是UP
百度linux consul发现不了服务
-
立马发现一篇博客,和我问题很类似,我才想起来manager是我的linux主机名
-
解决方案
vim /etc/hosts本机局域ip manager # 这里为什么要设置127.0.0.1 因为服务器可能是多网卡,导致不是所有ip都能定位到正在工作网卡,所以定位到 127.0.0.1 最靠谱 127.0.0.1 manager
结果健康检测通过
开心 ,嘿嘿