consul 一定要放到虚拟机里吗
来源:26-6 第三方库实现服务注册
			慕侠9157770
2021-09-21
老师, 我全套的setup都放到本地里了, go, python, consul, 但是所有的注册都fail了吗, 用了本地的对外接口
# c = consul.Consul(host="192.168.1.103")
c = consul.Consul(host= "192.168.1.186") #本地的对外ip
# 基于consul的 就更少一点了
address = "192.168.1.186"
# address = "127.0.0.1"
port = 50051
check={
    "GRPC":f"{address}:{port}",
    "GRPCUseTLS": False,
    "Timeout": "5s",
    "Interval": "5s",
    "DeregisterCriticalServiceAfter": "15s"
}
if __name__ == "__main__":
    rsp = c.agent.service.register(name="user-srv", service_id="user-srv2",
                         address=address, port=port, tags=["mxshop"],check=check)
    print(rsp)
但是所有的服务注册都fail了, 请问我一定要放到虚拟机里吗?
写回答
	2回答
- 
				
						bobby
2021-09-23
你这里注册失败是说无法注册到consul中还是说能注册到consul中,但是consul健康检查会失败?
062022-06-28 - 
				
						南森_
2021-09-21
我之前也都放到一起了,是可以的。
两个建议
1:如果你用公网IP,你的50051端口,必须关闭防火墙。外面也可以访问
2:你换成你的私网IP,127.0.0.1,好像不行,我试过,我用的阿里云的私网IP也是可以。
012022-06-20 
相似问题