Consul是一个服务发现,类似的服务发现有ETCD,zookeeper,还有eureka。Consul的服务发现,是比较的不错的,不经支持服务发现的功能, 还支持健康检查,Key/Value存储, 多数据中心。由于Consul的性价比相对于 Springcloud的eureka更加的好,所以推荐使用Consul进行服务发现。
下载地址
#管网下载地址
https://www.consul.io/downloads.html
window版本安装
window版本安装, 就是配置一下环境变量,然后再启动cmd,执行consul -version
查看版本信息,看环境变量是否配置生效。
1、配置下载的window版本的加压的路径
2、重新打开一个cmd,执行consul -version
查看版本信息,看环境变量是否配置生效。
#查看版本信息
consul version
启动Consul服务
当我们安装了虚拟机的时候,本机会有多张虚拟网卡的情况,需要指定物理机的ip地址,如果不指定,就会报错
# 查看网卡信息
ipconfig
#-dev -bind 设定绑定网卡,直接就启动服务了
#通过agent命令,来启动consul 服务
consul agent -dev -bind 192.168.43.208 -server -bootstrap -data-dir D:/tmp/consul
启动后,可以看到客户端的地址是8500端口
访问 http://127.0.0.1:8500 ,登录管控台
Consul常用命令
#查看有几个成员
consul members
下面是几个常用的consul管理命令
命令 | 解释 | 示例 |
---|---|---|
agent | 运行一个consul agent | consul agent -dev |
join | 将agent加入到consul集群 | consul join IP |
members | 列出consul cluster集群中的members | consul members |
leave | 将节点移除所在集群 | consul leave |
常见错误
1、Multiple private IPv4 addresses found. Please configure one with ‘bind’ and/or ‘advertise’.
出现这个问题的原因是,有多张网卡,所以就有了多个ip4的地址,解决方案,就是绑定ip地址到局域网卡,
1、查看网卡信息
在下图可以看到俺的局域网卡的ip是 192.168.43.208
2、绑定ip到consul
consul agent -dev -bind 192.168.43.208