CentOS Overlay连接测试与排查指南
一、先明确你的Overlay类型
二、容器网络Overlay测试步骤(Docker Swarm)
sudo systemctl start docker && sudo systemctl enable docker。docker swarm init(首个管理节点)或在其他节点执行 docker swarm join ...。docker network create --driver overlay --subnet **10.0.0.0/24** --gateway **10.0.0.1** my_overlay_network。docker run -dit --name **c1** --network my_overlay_network nginxdocker run -dit --name **c2** --network my_overlay_network nginxdocker exec -it c1 ping **10.0.0.3**(示例对端IP)。docker exec -it c1 ping **tasks.<service_name>**。docker network inspect my_overlay_network、docker inspect c1 | grep -A3 Networks。systemctl status docker、docker info 查看是否在 Swarm 模式。journalctl -u docker.service -n 200。firewall-cmd --add-port=2377/tcp --permanent && firewall-cmd --add-port=7946/tcp --permanent && firewall-cmd --add-port=7946/udp --permanent && firewall-cmd --add-port=4789/udp --permanent && firewall-cmd --reload。docker network create --driver overlay 会失败;需先初始化或加入 Swarm。三、存储层OverlayFS测试步骤(文件系统)
lsmod | grep overlay;未加载则 sudo modprobe overlay。mount | grep overlay,应见到 lowerdir=...:...,upperdir=...,workdir=...。ls -ld /lower /upper /work 确认存在且权限至少为 rwxr-xr-x。df -h(建议保留至少 10% 空闲),必要时检查文件系统。sudo setenforce 0 验证,或按需设置文件上下文。journalctl -n 100 或 /var/log/messages 搜索 overlay 相关错误。四、常见症状与对应处理
docker swarm init/join。docker network create --driver overlay ... 并在各节点将容器接入同一网络。lowerdir/upperdir/workdir 路径、权限与可用空间;必要时重新挂载或修复文件系统。systemctl stop firewalld 验证;确认问题后改为精确放行所需端口与服务。五、一键自检清单
docker info | grep -i swarm(应在 active 状态)docker network ls | grep overlayfirewall-cmd --list-ports | egrep '2377|7946|4789'docker exec -it c1 ping <c2_ip> 或 ping <svc_name>lsmod | grep overlaymount | grep overlayls -ld /lower /upper /work 与 df -hjournalctl -n 100 | grep -i overlay