docker网络(四)--overlay

本文详细介绍了Docker的覆盖网络功能,包括如何创建和管理覆盖网络,加密网络流量,自定义默认入口网络和docker_gwbridge接口。讨论了覆盖网络在群组服务和独立容器中的应用,强调了端口发布、容器发现和路由网格的概念。
摘要由CSDN通过智能技术生成

使用覆盖网络

该overlay网络驱动程序会创建多个码头工人守护主机之间的分布式网络。该网络位于(覆盖)特定于主机的网络之上,允许连接到它的容器(包括群集服务容器)安全地进行通信。Docker透明地处理每个数据包与正确的Docker守护程序主机和正确的目标容器的路由。

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

  • 称为覆盖网络ingress,处理与群集服务相关的控制和数据流量。创建群组服务时,如果不将其连接到用户定义的覆盖网络,则ingress 默认情况下会连接到网络。
  • 一个名为的桥接网络docker_gwbridge,它将各个Docker守护程序连接到参与swarm的其他守护进程。
    您可以使用与创建用户定义overlay网络docker network create相同的方式创建用户定义的bridge网络。服务或容器一次可以连接到多个网络。服务或容器只能通过它们各自连接的网络进行通信。

虽然您可以将swarm服务和独立容器连接到覆盖网络,但默认行为和配置问题是不同的。因此,本主题的其余部分分为适用于所有覆盖网络的操作,适用于群集服务网络的操作以及适用于独立容器使用的覆盖网络的操作。

所有覆盖网络的操作

创建覆盖网络

先决条件:

  • 使用覆盖网络的Docker守护程序的防火墙规则
    您需要以下端口打开来往于覆盖网络上参与的每个Docker主机的流量:
    1. 用于集群管理通信的TCP端口2377
    2. TCP和UDP端口7946用于节点之间的通信
    3. UDP端口4789用于覆盖网络流量
  • 在创建覆盖网络之前,您需要将Docker守护程序初始化为群集管理器,docker swarm init或者使用它将其连接到现有群集docker swarm join。这些中的任何一个都会创建默认ingress覆盖网络,默认情况下 由群服务使用。即使您从未计划使用群组服务,也需要执行此操作。之后,您可以创建其他用户定义的覆盖网络。

要创建用于swarm服务的覆盖网络,请使用如下命令:

$ docker network create -d overlay my-overlay

要创建可由群集服务或 独立容器用于与在其他Docker守护程序上运行的其他独立容器通信的覆盖网络,请添加–attachable标志:

$ docker network create -d overlay --attachable my-attachable-ov
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值