请选择 进入手机版 | 继续访问电脑版
  • 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

docker - 如何在多群管理器集群中的docker swarm中找到当前哪个节点是管理器节点?

[复制链接]
菜鸟教程小白 发表于 5 天前 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我创建了一个 docker swarm 集群 4个节点出了它 2 是群管理员 (swarm 支持多个管理器) 我明白如果当前 管理节点下降然后是 第二个经理 担任角色 成为群管理员。

就我而言,我正在解雇 休息电话发送给 swarm manager 以创建带有副本的服务等等。

在某个时候,如果这位经理倒台,而第二位经理成为经理,我怎么知道?

有什么方法可以动态通知特定节点是管理器?

请给我澄清一下??



Best Answer-推荐答案


使用命令行界面

(手动)知道经理是否更改的快速方法是通过 CLI:

$ docker node ls

ID                           HOSTNAME  STATUS  AVAILABILITY  MANAGER STATUS
46aqrk4e473hjbt745z53cr3t    node-5    Ready   Active        Reachable
61pi3d91s0w3b90ijw3deeb2q    node-4    Ready   Active        Reachable
a5b2m3oghd48m8eu391pefq5u    node-3    Ready   Active
e7p8btxeu3ioshyuj6lxiv6g0    node-2    Ready   Active
ehkv3bcimagdese79dn78otj5 *  node-1    Ready   Active        Leader

您可以找出当前的经理是谁 领队MANAGER STATUS柱子。

您还可以使用 Leader 单独检查每个节点的格式。字段,例如:
$ docker node inspect <id-node> --format "{{ .ManagerStatus.Leader }}"

true

使用 Docker 远程 API

您还可以通过编程方式检查哪一位经理是领导者。 docker 远程 API 公开了一个 Nodes API endpoint
您可以使用 列出节点 .

您可以提供一个过滤器作为参数,它采用 key=value形式。

您可以使用该过滤器仅列出管理器节点(使用 role=manager ),然后您可以解析和过滤 JSON 输出以保留其 Leader 的节点。字段设置为 true (在 ManagerStatus 下)。

不幸的是没有 leader filter ( yet ) 但我认为这可能是对 swarmkit 问题跟踪器提出的有效增强。

在 docker swarm 模式下还没有事件流(这是由 this issue 在 swarmkit 存储库中跟踪的)。我想象将来,一个事件将在 Leader 切换时触发,如果您正在监听这些事件,您将收到新的 leader 动态通知(例如,如果您有特殊设置并希望动态更新 consul、nginx 中的条目)或互锁)。

关于docker - 如何在多群管理器集群中的docker swarm中找到当前哪个节点是管理器节点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40245749/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝0

帖子209616

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap