gpt4 book ai didi

networking - Docker Swarm - 网络覆盖未连接所有容器

转载 作者:行者123 更新时间:2023-12-01 13:47:54 26 4
gpt4 key购买 nike

我目前使用 Docker Swarm 和 Consul 设置了 3 个 EC2 实例。我有 3 个简单的节点应用程序,分布在所有 3 个实例中,然后 nginx 用于在我的 swarm master 上进行路由。

使用指南 Overlay Networks ,我创建了一个名为 mynet 的新叠加层并将每个容器连接到这个网络。使用 docker inspect我可以确认每个节点容器和nginx容器都连接到mynet并拥有IP。但是,在 SSH 到我的 nginx 容器后,它只能通过网络与位于同一主机上的节点应用程序进行通信,而不能与集群中其他主机上的节点应用程序进行通信。

运行后docker network inspect mynet ,只列出了我的两个容器(位于同一主机上的 nginx 和一个节点实例),而其他两个没有列出,即使它们具有来自 docker inspect 的覆盖网络的名称和 IP。 .

这个想法是使用 nginx reverse proxy将任何在线的新容器添加到它的配置中,但我坚持让容器全部连接。根据Docker networking docs for overlay这应该是可能的。

我究竟做错了什么?谢谢。

编辑:

垃圾邮件发送后 docker network inspect mynet有几次,尽管我关闭了所有防火墙并打开了端口以进行测试,但容器似乎一直在与网络连接和断开连接。什么会导致这样的事情?

最佳答案

原来有两个问题导致了我的问题。

一个是我使用的是内核 3.13,其中 docker network overlay不支持。升级到 3.16 解决了这个问题。其次是 Swarm 1.0.1 中存在一个错误,它确实正确聚合了网络信息。已修复 here但截至撰写本文时,它还没有发布。

关于networking - Docker Swarm - 网络覆盖未连接所有容器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34375587/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com