控制面:在 Service 变更频繁或后端变更频繁的场景下,kube-proxy IPVS 模式下的 kube-proxy 进程会长时间占用超过一个 CPU 核心,时长和受影响的 Service 成正比。例如,500个 Service 受影响时,需要持续大约25秒。而在 Dataplane V2 情况下,基本无明显感知。
相较于 kube-proxy iptables 模式
当 Service 数量达到5000个时,控制面性能会急剧下降,甚至导致系统不可用。而 Dataplane V2 即使在 Service 规模超过1万时,性能基本不受影响。
iptables 方案下,转发性能随着 Service 数量的增加而下降;Dataplane V2 的转发性能与 Service 数量基本无关联。
iptables 方案在 Service 数量较大时,周期对账会占用一定的 CPU 资源。Dataplane V2 无需对账机制,可节省节点 CPU 资源。
安全方面
Dataplane V2 原生支持 NetworkPolicy,无需额外部署新的组件,有效节省了节点的内存和 CPU 资源。