Docker可以设置为dynamic符合它所运行的Swarm吗?
我试图把问题题目一般化,因为我认为它适用于许多使用情况。
这个虽然我的具体应用将为ZooKeeper。 如果一个“解决scheme”[docker-swarm.yml文件]发送给许多客户,其中一些客户有三个节点群,但其他客户只有一个节点(也许他们更小,并且不需要额外的带宽),有没有办法为单个节点的情况下运行一个单一的ZooKeeper实例,但有三个节点的时候是三节点的集合? 显然,在后一种情况下,每个实例都需要在一个单独的物理节点上运行。
这是docker-stack.yml文件的一部分:
zookeeper: image: zookeeperImageName:actualZKVersionHere deploy: mode: replicated restart_policy: {condition: on-failure, delay: 5s, window: 60s} resources: limits: {memory: 512M} reservations: {memory: 512M}
我知道,通过改变mode
到global
来非常接近我想要的(至less在这个用例中)。 但是,如果使用这种方法,ZK连接串将如何确定?
顺便说一句,已经在单个节点上运行单个ZK实例超过100年的实例5年以上。 我从来没有见过一个单一的问题。
- 使用zookeeper来发现运行docker的mesos slave
- 运行docker映像时运行时错误“oci运行时错误
- Spark挂在Docker Mesos集群的身份validation上
- Zookeeper /参展商集群节点继续重新启动
- 在没有Zookeeper的Docker Swarm(1.12)上启动Solr云
- 无法连接到在Vagrant上运行的HBase(Zookeeper)
- docker – 组成networking/端口处理
- 为wurstmeister / kafka docker图像定义Zookeeper znode
- 是否有可能使用卡夫卡与docker组成一个单一的主机,而不暴露动物园pipe理员和卡夫卡端口到公共互联网?