温馨提示×

centos overlay怎么测试连通

小樊
43
2026-09-12 02:44:19
栏目: 智能运维

在 CentOS 上,“overlay” 通常指 Docker 的 overlay 网络(跨主机容器网络)OverlayFS 存储/挂载。下面分别说明如何测试连通性,你可以对照你实际场景来看。


一、Docker overlay 网络连通性测试(最常见)

1. 前提条件确认

overlay 网络依赖: -Docker Swarm 已初始化

  • 多台 CentOS 节点已加入 Swarm
  • 防火墙放行端口(TCP/UDP 4789、TCP 2377、TCP/UDP 7946)
docker node ls
docker network ls

2. 创建 overlay 网络(如已有可跳过)

docker network create -d overlay my-overlay

3. 启动两个跨主机容器

节点 A:

docker service create --name web --network my-overlay nginx

节点 B:

docker service create --name client --network my-overlay busybox sleep 3600

4. 测试容器间连通

进入 client 容器:

docker exec -it <client_container_id> sh

测试:

ping web

wget -O - http://web

✅ 能解析 hostname 并通信 = overlay 网络正常


5. 抓包验证(高级)

在宿主机:

tcpdump -i eth0 udp port 4789

有 VXLAN 流量说明 overlay 已工作。


二、OverlayFS 挂载测试(不是网络)

如果你是问 overlay 文件系统(如 /var/lib/docker/overlay2):

1. 手动创建 overlay 挂载

mkdir -p /tmp/lower /tmp/upper /tmp/work /tmp/merged
mount -t overlay overlay \
  -o lowerdir=/tmp/lower,upperdir=/tmp/upper,workdir=/tmp/work \
  /tmp/merged

2. 测试

echo hello > /tmp/merged/test
cat /tmp/upper/test

✅ 能看到文件说明 overlay 正常


三、常见问题排查(CentOS)

防火墙

firewall-cmd --add-port=4789/udp --permanent
firewall-cmd --add-port=7946/tcp --permanent
firewall-cmd --add-port=7946/udp --permanent
firewall-cmd --add-port=2377/tcp --permanent
firewall-cmd --reload

SELinux

getenforce

如有问题可临时测试:

setenforce 0

如果你能说明:

  • Docker overlay 网络 还是 OverlayFS
  • CentOS 版本(7 / 8 / Stream)
  • 单机还是多机

我可以给你更精确的测试命令。

0