AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 1011780
Accepted
halfer
halfer
Asked: 2020-04-11 09:08:30 +0800 CST2020-04-11 09:08:30 +0800 CST 2020-04-11 09:08:30 +0800 CST

是否还有理由将 Consul 与现代(“集成”)Docker Swarm 一起使用?

  • 772

我过去做过一点 Docker Swarm,它非常简单——在一个节点上创建一个 Swarm Manager,在另外两个节点上创建 Swarm Workers,坚持使用一个 Manager。我想了解更多关于 Swarm 的信息,因此我正在关注 Pluralsight 上 Nigel Poulton 的视频系列“Docker Swarm:本地 Docker 集群”。

然而,这些视频比我两年前的 Swarm 体验要复杂得多,可能是因为它们运行在旧(“独立”)版本的 Swarm 上。我想问一个澄清的问题,看看我现在学习的材料是否过于过时而不值得。(我将在下面描述视频课程的内容,因此无需熟悉即可回答问题)。

这个视频系列,现在已经四岁了,展示了如何:

  • 安装一个高可用的Discovery Service(支持Consul、Etcd和ZooKeeper,作者选择Consul)。它使用progrium/consul映像,截至今天已经五年没有更新了
  • 在 Consul 服务器上设置三个 Swarm Manager 节点
  • 设置三个 Swarm Worker 节点,同时安装 Consul 客户端

作者承认这一切都相当复杂,并暗示,在拍摄视频时,核心 Docker 将来可能会简化这些东西。他说(构建您的 Swarm 集群 -> 安装 HA 发现服务 -> 5:39):

我什至会放出一个狂野的平底船,在某些时候,Sw​​arm 甚至可能不需要我们做任何这种发现后端手工制作。只是因为这有点痛苦,如果我知道 Docker 的人的一件事,那就是他们全心全意地为我们提供这种流畅、轻松的 Docker 体验,而这部分并不是此时此刻。

如果我没看错的话,这个功能似乎就是实际发生的事情。从手册:

您正在查看旧版独立 Swarm 的文档。这些主题描述了独立的 Docker Swarm。在 Docker 1.12 及更高版本中,Swarm 模式与 Docker Engine 集成。大多数用户应该使用集成的 Swarm 模式。

诚然,我之前使用 Swarm 的经验只使用了一个 Manager,但据我了解,只需使用docker swarm join-token.

那么对于我的问题:Docker Swarm 的这一特性演变让我想知道 Consul 是否为管理 Swarm 本身提供了任何价值。我可以做吗?我是不是该?它是否提供了比集成 raft 共识系统更多的功能?这种学习材料现在有害吗?

(旁白:我看过这个作者的几个视频,它们很棒——如果这个已经过时了,那是他无法控制的。如果材料需要重新拍摄,那就是课程/平台需要安排的业主)。

docker docker-swarm consul
  • 2 2 个回答
  • 924 Views

2 个回答

  • Voted
  1. Best Answer
    BMitch
    2020-04-11T09:59:47+08:002020-04-11T09:59:47+08:00

    Docker Swarm 有两种变体。可以使用像 Consul 这样的外部键/值存储的 Classic/Legacy 版本。这不太可能在未来收到任何更新,并且最近将 repo 重命名为“classicswarm”以帮助减少一些混乱。

    集成版本是基于 swarmkit 项目的 Swarm Mode。这不需要任何外部键/值存储,并且当您启用 Swarm 模式时,尝试在 docker 引擎中为覆盖网络配置一个将失败,因为它使用自己的基于 raft 的解决方案在内部控制键/值数据库。

    因此,没有必要使用 Consul,任何没有开始的指南都docker swarm init应该被忽略为过时的。

    • 3
  2. Nigel
    2020-04-11T15:22:09+08:002020-04-11T15:22:09+08:00

    对于这种混乱,我真的很抱歉......我会考虑让这个较旧的视频退役或更新。

    对于 Swarm,您应该观看以下相关部分:

    • 开始使用 Docker
    • Docker 深潜

    由于这两种模式都使用集成到 Docker 引擎中的更新的Swarm 模式,并且不需要任何旧的 consul 疯狂。

    如有任何问题,请随时联系我@nigelpoulton。

    • 2

相关问题

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve