【问题标题】:What's the difference between overlay network and bridge network in docker?docker中的overlay网络和bridge网络有什么区别?
【发布时间】:2020-06-02 16:18:54
【问题描述】:

既然overlay网络可以使多个隔离的docker deamon主机相互通信,为什么我们需要docker swarm中的桥接网络?谢谢!

【问题讨论】:

    标签: docker docker-swarm


    【解决方案1】:

    检查此thread 以从概念上理解。

    Bridge 网络: Bridge 是 docker 中的默认网络,也称为 docker0。它是通过 NAT 防火墙桥接到您的主机所连接的物理网络的默认网络。但是,我们并不关心它,因为所有容器都会连接到这个网络并正常工作。

    如果你有任何容器正在运行,你可以检查桥接网络,

    $ docker network inspect bridge
    
    "Containers": {
            "145a2716d018c6fe8e9f93a81d88afd5a7437f0084ddb170c40761818e6d2f67": {
                "Name": "nginx",
                "EndpointID":   "ea6cfa433f41e21e572f17473c8e5f5e5d82e9f19646e66fe23abda20a3836b8",
                "MacAddress": "02:42:ac:11:00:02",
                "IPv4Address": "172.17.0.2/16",
                "IPv6Address": ""
            }
        },
    

    注意:您可以看到分配给容器的自动 IP 地址来自 IPAM 配置子网。

    考虑一下,您有多个 docker 主机运行容器,其中每个 docker 主机都有自己的内部私有网桥网络,允许容器相互通信,但是,跨主机的容器无法相互通信,除非您发布这些容器上的端口并自己设置某种路由。这就是覆盖网络发挥作用的地方。使用 docker swarm,您可以创建一个覆盖网络,该网络将创建一个内部专用网络,该网络跨越参与 swarm 网络的所有节点,我们可以在创建服务时使用 network 选项将容器或服务附加到该网络。因此,跨节点的容器可以通过这个覆盖网络进行通信。

    $ docker network create --driver overlay --subnet 10.0.9.0/24 overlay_network
    $ docker service create --replicas 3 --network overlay_network nginx
    

    希望这会有所帮助。

    【讨论】:

      【解决方案2】:

      overlay page 说明了这一点:

      当您初始化 swarm 或将 Docker 主机加入现有 swarm 时,会在该 Docker 主机上创建两个新网络:

      • 一个名为ingress的覆盖网络,它处理与群服务相关的控制和数据流量。当您创建一个 swarm 服务并且不将其连接到用户定义的覆盖网络时,它会默认连接到入口网络。
      • 一个名为 docker_gwbridge 的桥接网络,它将单个 Docker 守护程序连接到参与集群的其他守护程序。

      参见Sebastian Caceres的“How does it work? Docker! Part 2: Swarm networking”:

      • 覆盖网桥是 VXLAN 封装的覆盖网络的入口/出口点。
        它还将覆盖扩展到参与此特定覆盖的所有主机。
        每台主机上的每个覆盖子网都有一个,与覆盖网络同名。
      • docker_gwbridge 是离开集群的所有流量的出口网桥。
        每个主机只有一个docker_gwbridge。容器到容器的流量不经过这座桥。

      【讨论】:

        猜你喜欢
        • 2010-12-05
        • 1970-01-01
        • 2021-03-03
        • 1970-01-01
        • 2011-05-18
        • 1970-01-01
        • 1970-01-01
        • 2016-11-09
        相关资源
        最近更新 更多