Kubernetes 网络模型与实现

发表于
更新于
1 0.5~0.7 分钟 247

第四阶段:Kubernetes(容器编排)·网络模型与实现

CNI 插件

  • 概念:容器网络接口,Kubernetes 通过 CNI 配置 Pod 网络。
  • 实现:kubelet 在创建 Pod 时调用 CNI 可执行文件(如 Calico、Flannel),传递 JSON 配置。插件负责分配 IP、创建 veth 对、设置路由及网络策略。
    • Flannel:提供简单 Overlay 网络(VXLAN/host-gw),节点间通过隧道或直接路由转发 Pod 网络。
    • Calico:基于 BGP 的三层路由方案,同时支持 NetworkPolicy 以 iptables 或 eBPF 实现。

Service 网络实现

  • iptables 模式:Service 的每个端口生成若干 iptables 规则(PREROUTING、OUTPUT 等),随机或轮询选后端 Pod IP。
  • IPVS 模式:使用 Linux 内核 IPVS 模块,支持更多负载均衡算法(rr、wrr、lc、sh 等),性能优于 iptables。

Ingress Controller 实现

以 Pod 形式运行,监听 Ingress 资源,生成负载均衡器配置(如 Nginx 的 nginx.conf),并将外部流量代理到对应 Service。通常作为 NodePort 或 LoadBalancer 类型暴露。


0

推荐文章

Kubernetes 资源管理
Kubernetes 核心概念全景
上一篇 Kubernetes 核心概念全景
下一篇 容器核心概念:容器与虚拟机的区别