在 overlay 中运行容器 运行一个 busybox 容器并连接到 ov_net1: docker run -itd --name bbox1 --network ov_net1 busybox 查看容器的网络配置: bbox1 有两个网络接口 eth0 和 eth1. eth0 IP 为 10.0.0.2,连接的是 overlay 网络 ov_net1. eth1 IP 172.18.0.2,容器的默认路由是走 eth1. 其实,docker 会创建一个 bridge 网络 “docker…
参考https://www.cnblogs.com/CloudMan6/p/7294501.html   我们前面创建了overlay网络 ov_net1 ,今天我们运行一个busybox容器并连接到 ov_net1   root@host01:~# docker run -itd --name bbox1 --network ov_net1 busybox    #    创建容器bbox1,使用ov_net1网络 e666ab4af792055c63afde141a13286a8e108df…
上一节我们创建了 overlay 网络 ov_net1,今天将运行一个 busybox 容器并连接到 ov_net1: 查看容器的网络配置: bbox1 有两个网络接口 eth0 和 eth1.eth0 IP 为 10.0.0.2,连接的是 overlay 网络 ov_net1.eth1 IP 172.17.0.2,容器的默认路由是走 eth1,eth1 是哪儿来的呢? 其实,docker 会创建一个 bridge 网络 "docker_gwbridge",为所有连接到 overlay…
上一节我们创建了 overlay 网络 ov_net1,今天将运行一个 busybox 容器并连接到 ov_net1: 查看容器的网络配置: bbox1 有两个网络接口 eth0 和 eth1.eth0 IP 为 10.0.0.2,连接的是 overlay 网络 ov_net1.eth1 IP 172.18.0.2,容器的默认路由是走 eth1,eth1 是哪儿来的呢? 其实,docker 会创建一个 bridge 网络 “docker_gwbridge”,为所有连接到 overlay 网络的容…
在 Docker 中使用 flannel 编辑 host1 的 Docker 配置文件 /etc/systemd/system/docker.service.d/10-machine.conf 设置 --bip 和 --mtu. 这两个参数的值必须与 /run/flannel/subnet.env 中 FLANNEL_SUBNET 和FLANNEL_MTU 一致. 重启 Docker daemon. systemctl daemon-reload systemctl restart docker…
在 host1 中创建 overlay 网络 ov_net1: docker network create -d overlay ov_net1 -d overlay 指定 driver 为 overaly docker network ls 查看当前网络: 注意到 ov_net1 的 SCOPE 为 global,而其他网络为 local.在 host2 上查看存在的网络: host2 上也能看到 ov_net1.这是因为创建 ov_net1 时 host1 将 overlay 网络信息存入了…
overlay环境准备 在docker-machine (10.12.31.21)的基础上 docker主机 host1 (10.12.31.22) host2 (10.12.31.23) 在docker-machine (10.12.31.21)上部署安装模块Consul docker run -d -p 8500:8500 -h consul --name consul progrium/consul -server –bootstrap 容器启动后,可以通过 http:// 10.12.3…
Weave 网络结构分析 在 host1 中运行容器 bbox1: eval $(weave env) docker run --name bbox1 -itd busybox 首先执行 eval $(weave env) 很重要,其作用是将后续的 docker 命令发给 weave proxy 处理. 如果要恢复之前的环境,可执行 eval $(weave env --restore). 查看一下当前容器 bbox1 的网络配置: bbox1 有两个网络接口 eth0 和 ethwe,其中 e…
macvlan 网络结构分析 macvlan 不依赖 Linux bridge,brctl show 可以确认没有创建新的 bridge. 查看一下容器 bbox1 的网络设备: 除了 lo,容器只有一个 eth0,请注意 eth0 后面的 @if2,这表明该 interface 有一个对应的 interface,其全局的编号为 2. 根据 macvlan 的原理,我们有理由猜测这个 interface 就是主机的 ens192,确认如下: 由此可见,容器的 eth0 就是 ens192 通过…
overlay 如何实现跨主机通信? 在 host2 中运行容器 bbox2: docker run -itd --name bbox2 --network ov_net1 busybox bbox2 IP 为 10.0.0.4,可以直接 ping bbox1: 可见 overlay 网络中的容器可以直接通信,同时 docker 也实现了 DNS 服务. overlay 网络的具体实现: docker 会为每个 overlay 网络创建一个独立的 network namespace,其中会有一个…