docker flannel网络部署和路由走向分析
1.flannel介绍 flannel是coreos开发的容器网络解决方案。flannel为每个host分配一个subnet,容器从此subnet中分配ip。这些ip可以在host间路由,容器间无需nat和port mapping就可以跨主机通讯。 每个subnet都是从一个更大的ip池中划分的,flannel会在每个主机上运行一个叫flanneld得agent,其职责是从ip池中分配subnet。为了在各个主机间共享信息,flannel用etcd存放网络配置,已分配的subnet,host的ip等信息。 数据包通过backend在主机间转发。 flannel提供了多种backend,最常用的有vxlan和host-gw。 2.部署实验环境 三个虚机 docker1 docker2 docker3? etcd安装在docker1 docker1 docker2 docker3上运行flanneld 注:为了更方便的验证flannel和etcd所以docker1也安装了flannel, 其实可以不用在docker1安装 centos7自带了软件包,直接yum安装即可 2.1? 安装配置etcd yum -y install etcd [root @docker1 ~] # systemctl start etcd? && systemctl enable etcd [root