consul服务发现

consul服务发现 Consul是由HashiCorp开发的一个支持多数据中心的分布式服务发现和键值对存储服务的开源软件,被大量应用于基于微服务的软件架构当中。 服务发现流程图 服务发现,也可以看做一个“服务”,是给“服务”提供服务的 服务发现种类 consul:常用于go-micro中 mdns:go-micro中默认的服务发现 etcd:k8s内嵌的服务发现 zookeeper:java中常用 Consul关键特性 服务发现:consul提供服务,服务端主动向consul发起注册。 健康检查:定时发送消息,类似于“心跳包”,保证客户端获取到的一定是健康的服务。 键值存储:consul提供,但常用于redis。 多数据中心:可以轻松加入集群。 Consul 参数 安装好 Consul 后,在启动程序之前,需要掌握一些配置参数,通过掌握这些参数,可以一次性的成功运行 Consul 服务器集群,常用的参数如下: 参数名称 用途 -server 此标志用于控制代理是运行于服务器/客户端模式,每个 Consul 集群至少有一个服务器,正常情况下不超过5个,使用此标记的服务器参与 Raft一致性算法、选举等事务性工作 -http-port=8500 consul自带的一个web访问端口,默认为8500 -client 表示 Consul 绑定客户端接口的IP地址,默认值为:127.0.0.1,当你有多块网卡的时候,最好指定IP地址,不要使用默认值 -bootstrap-expect 预期的服务器集群的数量,整数,如 -bootstrap-expect=3,表示集群服务器数量为3台,设置该参数后,Consul将等待指定数量的服务器全部加入集群可用后,才开始引导集群正式开始工作,此参数必须与 -server 一起使用 -data-dir 存储数据的目录,该目录在 Consul 程序重启后数据不会丢失,指定此目录时,应确保运行 Consul 程序的用户对该目录具有读写权限 -config-dir=XX 所有服务主动注册的配置文件 - node 当前服务器在集群中的名称,该值在整个 Consul 集群中必须唯一,默认值为当前主机名称 - bind Consul 在当前服务器侦听的地址,如果您有多块网卡,请务必指定一个IP地址(IPv4/IPv6),默认值为:0.0.0.0,也可用使用[::] ...

4 min · 2003 words · Luenci