【问题标题】:Differences in the ways of creating a Docker swarm创建 Docker swarm 的方式不同
【发布时间】:2017-01-20 09:16:31
【问题描述】:

在过去的 3 天里,我一直在阅读很多关于最近在其引擎中构建的“新”docker swarm 的文章和文档。

已经确定了几种创建集群的方法(无论是在本地还是在云提供商上),我无法理解这些方法之间的差异以及何时使用另一种方法之间的差异。

以下是我目前确定的创建群体的方法:

方法一

docker-machine create -d virtualbox swarm-manager
docker-machine create -d virtualbox swarm-worker-1
docker-machine create -d virtualbox swarm-worker-2

manager_ip=$(docker-machine ip swarm-manager)
swarm_join_command="docker swarm join --token SWMTKN-1-49nj1cmql0jkz5s954yi3oex3nedyz0fb0xx14ie39trti4wxv-8vxv8rssmk743ojnwacrr2e7c 192.168.99.100:2377"

docker-machine ssh swarm-manager "docker swarm init --advertise-addr $manager_ip"

docker-machine ssh swarm-worker-1 "${swarm_join_command}"
docker-machine ssh swarm-worker-2 "${swarm_join_command}"

方法二

docker-machine create -d virtualbox token

token=$(docker-machine ssh token "docker run swarm create" | tail -n 1)

docker-machine create -d virtualbox \
--swarm --swarm-master \
--swarm-discovery token://${token} \
master-node

docker-machine create -d virtualbox \
--swarm --swarm-discovery token://${token} \
node-01

我将 consul 排除在外,因为它似乎不再需要。

  1. 这些方法有什么区别?
  2. 我应该在什么时候使用一个而不是另一个?

【问题讨论】:

    标签: docker docker-swarm


    【解决方案1】:

    令人困惑的是,Docker Swarm 有两种实现。第一个作为容器运行,第二个作为 v1.12 版本的一部分集成到 docker 引擎中。

    因此采用方法 1。以下示例创建一个具有多个管理器的 HA 设置:


    older Swarm documentation 包含以下内容:

    您正在查看旧版独立 Swarm 的文档。这些话题 描述独立的 Docker Swarm。如果您使用 Docker 1.12 或更高版本, Swarm 模式与 Docker 引擎集成。大多数用户应该使用 集成的 Swarm 模式 — 一个很好的起点是 Getting started with 群模式和群模式 CLI 命令。独立的 Docker Swarm 不是 集成到 Docker Engine API 和 CLI 命令中。

    【讨论】:

    • 我也这么认为,但只是确保。我相信您可以理解为什么这会引起混乱
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-04
    • 1970-01-01
    • 1970-01-01
    • 2017-08-24
    • 1970-01-01
    相关资源
    最近更新 更多