温馨提示×

Linux Overlay网络故障如何排查

小樊
40
2026-01-11 10:18:36
栏目: 智能运维

Linux Overlay网络故障排查手册

一 明确类型与总体思路

  • 先区分两类常见“Overlay”:
    • 网络Overlay:在物理网络上构建虚拟网络,典型技术为VXLAN/NVGRE,涉及VTEP、隧道接口、Underlay连通性与MTU等。
    • 存储Overlay:如OverlayFS,用于联合挂载文件系统,关注挂载参数、权限、磁盘空间与内核模块。
  • 总体思路:从物理/Underlay链路 → VTEP/隧道 → 路由/转发 → 安全策略 → MTU → 日志/抓包逐层验证,分段隔离问题。

二 网络Overlay排查步骤

  • 拓扑与配置核对
    • 核对VTEP地址、隧道协议(如VXLAN/NVGRE)、VNI/租户网段、以及各节点的MTU是否一致且符合设计。
  • 物理与端口状态
    • 检查物理链路与端口:使用ip linkethtool确认链路UP、速率/双工正常,无错包/丢包告警。
  • VTEP与隧道接口
    • 查看隧道接口与转发面状态:使用ip link showbridge fdb(VXLAN)、相关控制面状态命令;确认VTEP IP可达、隧道已启用。
  • 基础连通性测试
    • 节点间先做Underlay IP直连测试(如 ping),再做Overlay端点/网段测试;必要时用traceroute/mtr定位中断位置。
  • 路由与FDB/转发表
    • 检查节点路由表是否正确,是否存在黑洞/环回;检查FDB表项(如 VXLAN 的远端VTEP学习)是否完整。
  • MTU与分片
    • 确认Overlay封装开销后MTU匹配(常见需预留封装头,避免分片/丢包);必要时临时下调MTU验证。
  • 安全策略
    • 核对主机iptables/firewalld、云上安全组/NACL是否放行Overlay所需协议与端口(如UDP 4789用于VXLAN)。
  • 分段与抓包
    • 按“物理口 → 隧道口 → 容器/网桥”分段测试;在关键节点抓包(如tcpdump/Wireshark)验证封装/解封装是否成功。
  • 监控与日志
    • 结合Prometheus/Grafana等监控丢包/延迟;分析系统日志/VTEP日志定位异常事件。

三 Docker Swarm Overlay网络专项

  • 环境与健康
    • 检查节点与管理面:docker node ls;查看服务与任务分布:docker service ls / docker service ps
  • 网络与端点
    • 列出网络:docker network ls;检查目标Overlay网络详情:docker network inspect ;查看容器端点:docker inspect | grep -A3 Networks
  • 存储驱动与内核
    • 确认Docker使用overlay2存储驱动(查看:docker info);在CentOS 7上建议内核≥3.10.0-514以获得稳定的 overlay2 支持;必要时加载内核模块:lsmod | grep overlay
  • 日志与系统
    • 查看容器与引擎日志:docker logs journalctl -u docker -n 100;排查**/var/log/messages/var/log/syslog**中与网络/存储相关的错误。
  • 安全与策略
    • 临时放宽策略验证(如SELinux/防火墙)是否被误拦截;确认云上安全组放行容器网段与必要端口。

四 OverlayFS存储专项排查

  • 挂载与参数
    • 检查挂载选项:mount | grep overlay;核对lowerdir/upperdir/workdir是否存在且路径正确。
  • 权限与空间
    • 目录权限与属主:ls -ld ;磁盘空间:df -h;必要时清理或扩容。
  • 内核与模块
    • 确认内核支持并已加载overlay模块:lsmod | grep overlay
  • 日志与恢复
    • 系统日志:journalctl/var/log/messages或**/var/log/syslog**;修复底层错误后尝试umount/重新mount

五 常见症状与快速处置

  • 节点间Overlay不通但Underlay可达
    • 检查VTEP地址/路由隧道接口;核对VNI一致性;查看FDB/转发表是否缺失远端VTEP;抓包验证封装是否发出/收到。
  • 偶发丢包或性能差
    • 优先验证MTU是否因封装开销导致分片;对比正常/异常时段的监控指标;分段抓包定位瓶颈。
  • 新建服务无法互通
    • 在Swarm中核对网络已创建、服务已attach到该网络;检查安全组/防火墙是否放行;查看服务/容器日志节点状态
  • 容器启动失败或挂载异常(OverlayFS)
    • 核对挂载参数、目录权限/存在性磁盘空间;确认overlay模块加载与内核版本;必要时重新挂载

0