Overlay网络在Linux中的部署策略主要围绕容器编排工具(如Docker、Kubernetes)结合CNI插件实现,核心是通过逻辑网络抽象实现跨主机的容器通信。以下是具体部署流程及关键注意事项:
sudo apt install docker.io,CentOS用sudo yum install docker),并启动服务(sudo systemctl enable --now docker)。kubeadm初始化集群(sudo kubeadm init),加入节点(kubeadm join命令)。/etc/docker/daemon.json,指定storage-driver为overlay2(推荐)并启用native.cgroupdriver=systemd(兼容Kubernetes),重启服务使配置生效。docker network create命令指定--driver overlay,可选配置子网(--subnet)、网关(--gateway)(如docker network create --driver overlay --subnet 10.0.0.0/24 --gateway 10.0.0.1 my-overlay)。--network参数指定Overlay网络(如docker run -d --name container1 --network my-overlay nginx)。docker exec -it container1 bash),使用ping或curl测试与其他容器的通信。kubectl apply -f https://raw.githubusercontent.com/flannel-io/flannel/master/Documentation/kube-flannel.yml部署,默认使用VXLAN模式。wget https://docs.projectcalico.org/v3.25/manifests/calico.yaml),修改配置(如IP池范围)后应用(kubectl apply -f calico.yaml)。ClusterIP类型),Pod会自动分配Overlay网络IP。kubectl exec -it <pod-name> -- /bin/sh进入Pod,ping其他Pod的IP或Service名称,确认跨主机通信。ip link add命令创建VXLAN接口(如ip link add vxlan21 type vxlan id 100 dev eth0,id为VXLAN ID,dev为物理接口)。brctl addbr lb-int),将VXLAN接口加入Bridge(brctl addif vxlan21 lb-int),并启用接口(ip link set vxlan21 up、ip link set lb-int up)。ip link add veth1 type veth peer name veth2,brctl addif lb-int veth1,ip link set veth2 netns <container-namespace>),并为容器分配IP。net.core.rmem_max、net.core.wmem_max)。