准备 overlay 网络实验环境 - 天天5分钟玩转 Docker 容器技术(49)

为支持容器跨主机通讯,Docker 提供了 overlay driver,使用户能够建立基于 VxLAN 的 overlay 网络。VxLAN 可将二层数据封装到 UDP 进行传输,VxLAN 提供与 VLAN 相同的以太网二层服务,可是拥有更强的扩展性和灵活性。有关 VxLAN 更详细的内容可参考 CloudMan 在《天天5分钟玩转 OpenStack》中的相关章节。docker

Docerk overlay 网络须要一个 key-value 数据库用于保存网络状态信息,包括 Network、Endpoint、IP 等。Consul、Etcd 和 ZooKeeper 都是 Docker 支持的 key-vlaue 软件,咱们这里使用 Consul。数据库

实验环境描述

咱们会直接使用上一章 docker-machine 建立的实验环境。在 docker 主机 host1(192.168.56.104)和 host2(192.168.56.105)上实践各类跨主机网络方案,在 192.168.56.101 上部署支持的组件,好比 Consul。bootstrap

最简单的方式是以容器方式运行 Consul:网络

 

docker run -d -p 8500:8500 -h consul --name consul progrium/consul -server -bootstrapspa

容器启动后,能够经过 http://192.168.56.101:8500 访问 Consul。rest

236.png

接下来修改 host1 和 host2 的 docker daemon 的配置文件/etc/systemd/system/docker.servicecode

--cluster-store 指定 consul 的地址。
--cluster-advertise 告知 consul 本身的链接地址。server

重启 docker daemon。部署

 

systemctl daemon-reload  get

systemctl restart docker.service

host1 和 host2 将自动注册到 Consul 数据库中。

准备就绪,实验环境以下:

下一节建立 overlay 网络。

二维码+指纹.png

相关文章
相关标签/搜索