第七章 consul docker集群

时间:2024-07-06 17:37:32

--net=host:运行consul的docker镜像必须带有的参数,因为consul的consensus和gossip协议对于网络的延迟和丢包很敏感,所以引入额外的其他网络类型的层是不可取并且不必要的。

/consul/data:数据存储目录

/consul/config:配置文件所在目录,配置也可以通过环境变量名为CONSUL_LOCAL_CONFIG(其值为json串)来指定

一、下载docker镜像

  • docker pull consul:0.7.1
  • docker tag xxx 10.211.55.4:5000/consul:0.7.1
  • docker push 10.211.55.4:5000/consul:0.7.1

二、10.211.55.6

  • docker pull 10.211.55.4:5000/consul:0.7.1
  • docker run -d --net=host 10.211.55.4:5000/consul:0.7.1 agent -server -bind=10.211.55.6 -node=server1 -bootstrap-expect 1 -client 0.0.0.0 -ui
    • --net=host:使用宿主机网络,这是运行consul的docker镜像必须带有的参数,因为consul的consensus和gossip协议对于网络的延迟和丢包很敏感,所以引入额外的其他网络类型的层是不可取并且不必要的。这样之后,外界可以通过宿主机ip来访问该consul server。
  • consul ps获取containerID后,consul logs containerId来查看日志

三、10.211.55.7

  • docker pull 10.211.55.4:5000/consul:0.7.1
  • docker run -d --net=host 10.211.55.4:5000/consul:0.7.1 agent -bind=10.211.55.7 -node=client1 -retry-join=10.211.55.6
  • docker exec -t containerID consul members
    • 进入内部查看consul

四、在本机浏览器输入10.211.55.6:8500/ui,查看consulUI

第七章 consul docker集群

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px Monaco; color: #f5f5f5; background-color: #000000 }
span.s1 { }
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px Monaco; color: #f5f5f5; background-color: #000000 }
span.s1 { }
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px Monaco; color: #f5f5f5; background-color: #000000 }
span.s1 { }