.Net Core微服务入门——Consul集群搭建(二)
1、先启动第一个consul服务:consul1
docker run --name consul1 -d -p 8500:8500 consul agent -server -bootstrap-expect 3 -ui -bind=0.0.0.0 -client=0.0.0.0
-p 8500:8500:指定端口 8500,
-bbostrap-expect 3: 3台服务器 , 集群至少3台服务器,才能选举集群leader
-ui:运行 web 控制台
-bind: 监听网口,0.0.0.0 表示所有网口,如果不指定默认未127.0.0.1,则无法和容器通信
-client : 限制某些网口可以访问
2、获取 consul server1 的 ip 地址
docker inspect --format '{{ .NetworkSettings.IPAddress }}' consul1
172.17.0.3,记住这个地址,马上就要用到
3、启动第二个consul服务:consul2
docker run --name consul2 -d -p 8501:8500 consul agent -server -ui -bind=0.0.0.0 -client=0.0.0.0 -join 172.17.0.3
join:表示需要加入的集群
注:我之前 join 用本机IP 192.168.8.25,发现报错,找不到到server ,必须要用 docker运行的server IP: 172.17.0.3
4、再来一台
docker run --name consul3 -d -p 8502:8500 consul agent -server -ui -bind=0.0.0.0 -client=0.0.0.0 -join 172.17.0.3
5、查看结果
docker ps
浏览器访问:http://192.168.8.25:8500
浏览器访问:http://192.168.8.25:8501、http://192.168.8.25:8502,与上面结果一致。
集群搭建成功。
6、验证
停止consul1
只看到2个服务:
Leader 已变成 127.17.0.4
恢复consul1
服务已恢复成3个
Leader 没有变化
下一章,继续:
https://blog.csdn.net/weixin_41003771/article/details/118934647
多台服务器集群搭建可以看这个:
https://blog.csdn.net/weixin_41003771/article/details/119039937