深入理解 Kubernetes 服务与 Ingress
1. kube - proxy 的替代方案
Kube - proxy 为 Kubernetes 服务提供了默认实现,并且在大多数集群中是标准配置。不过,一些网络插件提供了 Kubernetes 服务的替代实现,以取代 kube - proxy。
部分网络插件必须采用替代实现,因为这些插件实现 Pod 网络的方式与 kube - proxy 的数据平面不兼容,kube - proxy 的数据平面使用由 iptables 和/或 IPVS 控制的标准 Linux 网络管道。而对于其他网络插件,替代实现则是可选的。例如,实现 Linux eBPF 数据平面的 CNI 会选择用其原生服务实现来替代 kube - proxy。
这些替代实现具备一些 kube - proxy 所没有的额外功能。从安全角度来看,其中一个重要功能是在从外部客户端进行负载均衡时,能够将客户端源 IP 地址一直保留到后端 Pod。
1.1 eBPF 数据平面的优势
- 性能提升 :在运行大量服务时,性能得到显著提升,包括减少首包延迟和降低控制平面 CPU 使用率。
- 直接服务器返回(DSR) :减少返回流量的网络跳数。
1.2 直接服务器返回(DSR)
DSR 允许目标 Pod 的返回流量直接返回给客户端,而无需经过原始入口节点。有几个网络插件能够用支持 DSR 的自身实现来替代 kube - proxy 的服务处理。
超级会员免费看
订阅专栏 解锁全文
46

被折叠的 条评论
为什么被折叠?



