我是码头新来的,今天我想问一个问题。我知道有一些传播和绑定策略是为了平衡“工作负载”。但是,是否有任何方法可以像下面的拓扑那样使用Docker,S蜡来提供容器呢?

或者我应该自定义调度程序?或者是否有合适的集群管理工具?有什么建议吗?
发布于 2015-08-18 19:23:21
更新:这个答案适用于遗留的坞/群,而不是适用于自码头1.12以来可用的新群集模式。
在这些机架/机器上启动停靠守护进程时,您可以通过labels使用Swarm来实现这一点。
设置带有标签的Docker Daemons
假设我们有这样的拓扑:
rack1
|___ node1
rack2
|___ node2
|___ node3我们可以设置带有自定义标签的停靠守护进程,以反映这一点:
第1行节点1
docker --tlsverify --tlscacert=ca.pem --tlscert=server-cert.pem --tlskey=server-key.pem -H tcp://0.0.0.0:2376 -d --label rack=rack1 --label machine=node1`Rack 2上的节点2
docker --tlsverify --tlscacert=ca.pem --tlscert=server-cert.pem --tlskey=server-key.pem -H tcp://0.0.0.0:2376 -d --label rack=rack2 --label machine=node2Node 3在Rack 2上
docker --tlsverify --tlscacert=ca.pem --tlscert=server-cert.pem --tlskey=server-key.pem -H tcp://0.0.0.0:2376 -d --label rack=rack2 --label machine=node3使用约束
使用Swarm,您可以使用约束来获取容器的位置。在本例中,我们只使用Rack 1上节点的子集来调度容器:
docker run -d -P -e constraint:rack==rack1 --name web nginx如果每个机架都有多个节点(例如,使用rack2 ),那么您也可以使用链式约束。在下一个例子中,我们将容器固定在位于node3上的rack2上。
docker run -d -P -e constraint:rack==rack2 -e constraint:node==node3 --name web nginxhttps://stackoverflow.com/questions/31813910
复制相似问题