Kubernetes 网络模式深入解析?

文章目录

Kubernetes 的网络模型有一个核心原则:所有 Pod 都可以不通过 NAT(网络地址转换)而直接互相通信。

为了实现这个"大平层"网络,CNI(容器网络接口)插件主要通过三种模式来实现。你提到的 Underlay 确实存在,它是与 Overlay 相对的概念。

以下是 Kubernetes 网络模式的通俗解构:


1. Overlay 模式(隧道模式)

形象比喻: 像是在现有的公路上(物理网)加盖了一层"封闭式高架桥"(逻辑网)。

  • 技术原理: 封包传输。Pod 发出的原始包会被包装在一个"宿主机包"里。当包到达目的地节点时,再拆掉外壳,取出原始包。常见的协议有 VxLAN 和 IPIP。
  • Underlay 关系: 它对底层物理网络(Underlay)没有任何要求,只要节点之间 IP 能通,高架桥就能盖起来。
  • 优点: 兼容性极强,不受底层网络网段、交换机配置限制。
  • 缺点: 封包拆包消耗 CPU;包头变大导致有效载荷减少(MTU 问题);性能损耗约 5%~15%。
  • 主流插件: Flannel (VxLAN), Calico (IPIP/VxLAN)。

2. Routing 模式(路由模式)

形象比喻: 节点就是"邮局"。每个节点告诉邻居:"我这里负责 10.244.1.0 段的邮递,有这类信件请传给我。"

  • 技术原理: 纯路由转发。Pod 的原始包直接在物理网络上传输,不封包。通过在主机上配置静态路由或使用 BGP 协议 动态告诉交换机/其他节点如何到达 Pod IP。
  • Underlay 关系: 它是 Overlay 与 Underlay 之间的桥梁。它利用了 Underlay 的转发能力,但 Pod IP 通常还是独立的私有段。
  • 优点: 性能极高,几乎等同于物理网速。
  • 缺点:
    • Host-Gateway (静态): 要求所有节点必须在同一个二层网段(VLAN)。
    • BGP (动态): 需要底层物理交换机支持 BGP 协议并配合配置。
  • 主流插件: Calico (BGP), Flannel (Host-gw)。

3. Underlay 模式(物理直连模式)

形象比喻: Pod 不再是躲在宿主机后面的"小弟",它直接向物理网络申领"身份证"(IP),和宿主机在地位上是平等的。

  • 技术原理: 直接将 Pod 接入物理网。Pod 的 IP 地址就是物理网络段的一部分(比如和宿主机在同一个网段)。常见的技术有 MACVLAN 、IPvlan 或直接对接云厂商的 VPC。
  • 与 Underlay 的关系: 它是真正意义上的 Underlay 方案。Pod 完全依赖物理网络的交换机进行流量调度。
  • 优点: 性能最好,时延最低;外部网络可以直接访问 Pod IP(无需经过 NodePort)。
  • 缺点:
    • 极度消耗物理网络的 IP 资源。
    • 对物理网络环境高度依赖。
    • 网络策略(Security Policy)难以在 K8s 层面控制,通常要在交换机上做。
  • 主流插件: Multus, Macvlan, 云厂商专有 CNI (如阿里云 Terway, AWS VPC CNI)。

总结对比表:网络模式选型

特性 Overlay (隧道) Routing (路由/BGP) Underlay (直连)
性能 一般(有额外开销) 优异(接近线速) 极高(等同物理机)
底层网络要求 无要求,只要 IP 通 需二层互通或交换机支持 BGP 物理网 IP 充足,需交换机配合
跨网段支持 支持 取决于是否开启 BGP 取决于物理网络架构
配置复杂度 简单(一键安装) 中等(需配 BGP 或静态路由) 复杂(需网络组深度参与)
适用场景 跨云、跨网段、追求稳定兼容 大规模、高并发微服务 金融、低延迟通信、老旧系统接入

整合进清单的建议:

在你的"网络服务"清单中,关于 CNI 插件选型,你可以这样描述:

CNI 模式选型建议:

  1. 若追求部署简单、无视物理环境: 选 Overlay (VxLAN/IPIP)。
  2. 若追求高性能且节点在同一网段: 选 Routing (Host-gw)。
  3. 若具备 BGP 交换机权限且追求极致性能: 选 Routing (BGP)。
  4. 若 Pod 需直接暴露在物理网且有极低延迟需求: 选 Underlay (MACVLAN/云专有CNI)。

架构师提示: 调研时,重点问客户:"你们的交换机支持 BGP 协议吗?" 或者 "你们允许 Pod 直接占用物理内网 IP 吗?"。这两个问题的答案直接决定了你只能选 Overlay 还是可以尝试 Underlay/Routing。

相关推荐
Novproxy_Z1 天前
商用代理避坑:如何识别商家拿机房 IP 冒充住宅 IP
java·网络·tcp/ip
垆边人似月.1 天前
RDMA 文件传输踩坑(五):READY 发送成功后,为什么出现 Work Request Flushed Error?
服务器·网络·tcp/ip
HideF1 天前
nmcli
linux·服务器·网络
qetfw1 天前
UOS DHCP Relay:跨网段分配与 IP、DNS、网关验证
linux·服务器·网络·tcp/ip·uos
尹人入圣1 天前
目前热门的IP驱动产业新场景新工具
网络·python·网络协议·tcp/ip
中屹指纹浏览器svip1 天前
只用指纹浏览器,不搭配IP可以吗?
网络
jimmyleeee1 天前
Agent安全之八:OWASP ASI08 级联失效------当每一个 Agent 都“正确”,系统却走向灾难
网络·安全·web安全
缓慢更新1 天前
AI 辅助生成单测:从接口定义到用例的流水线
java·服务器·前端·网络·数据库·人工智能
叼烟扛炮1 天前
Linux 学习笔记(四十一):TCP 并发演进——从单进程到多线程服务器
linux·运维·服务器·网络·笔记·学习·tcp/ip
叼烟扛炮1 天前
Linux 学习笔记(四十三):网络编程进阶——自定义协议解决 TCP 粘包与守护进程
linux·开发语言·网络·笔记·tcp/ip