在同一主机上的不同领事客户端 运行 中添加服务
Adding services in different consul clients running on same host
我已经按照 Testing a Consul cluster on a single host 中使用 consul 的部分进行操作。三个领事服务器已成功添加,并且 运行 在同一主机中用于测试目的。之后,我也按照教程创建了一个 consul 客户端 node4
来暴露端口。是否可以添加更多服务并绑定到其中一个领事客户?
Consul 的最佳做法是 运行 每个 HOST 一个 consul,当你想与 consul 交谈时,你总是在本地交谈。一般来说,1 个 consul 节点知道的一切,其他每个 consul 节点也知道。所以你可以只与你的本地领事 (127.0.0.1:8500) 交谈并做你需要做的一切。添加服务时,会将它们添加到具有服务进程的本地 consul 节点。有像 Registrator (https://github.com/gliderlabs/registrator) 这样的项目,它会自动从 运行ning docker 个容器中添加服务,这让生活更轻松。
总的来说,欢迎使用 Consul,它很棒!
使用新的 'swarm mode' 而不是旧的 Swarm。 Swarm 模式不需要 Consul。服务发现和 key/value 存储现在是 docker 守护进程的一部分。下面介绍如何创建一个 3 节点高可用集群(3 个主节点)。
创建三个节点
docker-machine create --driver vmwarefusion node01
docker-machine create --driver vmwarefusion node02
docker-machine create --driver vmwarefusion node03
找到node01的ip
docker-machine ls
设置一个作为初始 swarm master
docker $(docker-machine config node01) swarm init --advertise-addr <ip-of-node01>
获取token让其他节点加入master
docker $(docker-machine config node01) swarm join-token manager
这将打印出类似
的内容
docker swarm join \
--token SWMTKN-1-0siwp7rzqeslnhuf42d16zcwodk543l99liy0wuq1mern8s8u9-8mbsrxzu9mgfw7x6ehpxh0dof \
192.168.40.144:2377
将另外两个节点添加到 swarm 作为 masters
docker $(docker-machine config node02) swarm join \
--token SWMTKN-1-0siwp7rzqeslnhuf42d16zcwodk543l99liy0wuq1mern8s8u9-8mbsrxzu9mgfw7x6ehpxh0dof \
192.168.40.144:2377
docker $(docker-machine config node03) swarm join \
--token SWMTKN-1-0siwp7rzqeslnhuf42d16zcwodk543l99liy0wuq1mern8s8u9-8mbsrxzu9mgfw7x6ehpxh0dof \
192.168.40.144:2377
检查群
docker node ls
您现在应该能够关闭领导节点并看到另一个接任经理。
我已经按照 Testing a Consul cluster on a single host 中使用 consul 的部分进行操作。三个领事服务器已成功添加,并且 运行 在同一主机中用于测试目的。之后,我也按照教程创建了一个 consul 客户端 node4
来暴露端口。是否可以添加更多服务并绑定到其中一个领事客户?
Consul 的最佳做法是 运行 每个 HOST 一个 consul,当你想与 consul 交谈时,你总是在本地交谈。一般来说,1 个 consul 节点知道的一切,其他每个 consul 节点也知道。所以你可以只与你的本地领事 (127.0.0.1:8500) 交谈并做你需要做的一切。添加服务时,会将它们添加到具有服务进程的本地 consul 节点。有像 Registrator (https://github.com/gliderlabs/registrator) 这样的项目,它会自动从 运行ning docker 个容器中添加服务,这让生活更轻松。
总的来说,欢迎使用 Consul,它很棒!
使用新的 'swarm mode' 而不是旧的 Swarm。 Swarm 模式不需要 Consul。服务发现和 key/value 存储现在是 docker 守护进程的一部分。下面介绍如何创建一个 3 节点高可用集群(3 个主节点)。
创建三个节点
docker-machine create --driver vmwarefusion node01 docker-machine create --driver vmwarefusion node02 docker-machine create --driver vmwarefusion node03
找到node01的ip
docker-machine ls
设置一个作为初始 swarm master
docker $(docker-machine config node01) swarm init --advertise-addr <ip-of-node01>
获取token让其他节点加入master
docker $(docker-machine config node01) swarm join-token manager
这将打印出类似
的内容docker swarm join \ --token SWMTKN-1-0siwp7rzqeslnhuf42d16zcwodk543l99liy0wuq1mern8s8u9-8mbsrxzu9mgfw7x6ehpxh0dof \ 192.168.40.144:2377
将另外两个节点添加到 swarm 作为 masters
docker $(docker-machine config node02) swarm join \ --token SWMTKN-1-0siwp7rzqeslnhuf42d16zcwodk543l99liy0wuq1mern8s8u9-8mbsrxzu9mgfw7x6ehpxh0dof \ 192.168.40.144:2377 docker $(docker-machine config node03) swarm join \ --token SWMTKN-1-0siwp7rzqeslnhuf42d16zcwodk543l99liy0wuq1mern8s8u9-8mbsrxzu9mgfw7x6ehpxh0dof \ 192.168.40.144:2377
检查群
docker node ls
您现在应该能够关闭领导节点并看到另一个接任经理。