本文中含有需要您注意的重要提示信息,忽略该信息可能对您的业务造成影响,请务必仔细阅读。
本文介绍在使用Terway网络插件的集群中,启用Datapath V2后如何优化集群的网络配置,例如Conntrack参数配置、Identity资源管理等,以提升集群性能和稳定性。
优化Conntrack配置
Conntrack是Linux内核中的连接跟踪模块,用于跟踪网络连接的状态。在Datapath V2模式下,容器网络的Conntrack由eBPF程序提供。您可以参见优化Terway模式下conntrack配置来调整Conntrack参数,例如调整Conntrack表大小、调整TCP链接记录超时时间,以适配高并发服务等场景下的网络需求。
限制Identity数量
在 Datapath V2 功能中,NetworkPolicy通过 eBPF 技术实现。与传统的基于 Netfilter 的方式不同,在 eBPF 的实现中,系统会为每个 Pod 分配一种 Identity作为身份ID标识,用于精准管理网络权限。
Identity由 Pod 标签和Namespace标签组合而成,具有相同标签组合的 Pod 会被分配同一个 Identity,以便统一管控它们的网络访问规则。
NetworkPolicy的规则会通过 IP-Identity 映射来判断流量是否符合策略。简单来说,系统会使用 Pod 的 IP 地址与其 Identity,判断是否允许该流量通过。
若您没有开启NetworkPolicy功能,Identity无任何作用,Terway会自动限制Idenity数量。
若您启用NetworkPolicy功能,您应当避免一组相同身份的Pod,具备不同的标签。使用不同标签会产生大量Identity资源,可能会造成集群管控压力升高,IP分配速度下降。
通过配置标签过滤,可以避免无效的标签被记录到Identity中。
配置标签过滤
此操作包含重要内容,请谨慎操作。
调整标签过滤规则会触发Identity新建,短时间内Identity数量会增加,API Server资源开销也会有不同程度的增加。
配置错误的标签过滤规则会导致NetworkPolicy策略失效。
不可过滤所有标签:需为每组 Pod 保留至少一个标签(Namespace 或 Pod 标签),否则系统将无法识别该 Pod 的身份。
被过滤的标签无法用于策略规则:如果某个标签被添加到过滤列表中,该标签将无法在 NetworkPolicy 规则中被引用。请确保仅过滤无效标签。
关于配置标签过滤的语法,请参见Cilium。
关于在Terway中如何配置,请参见自定义Terway配置参数中cilium_args
相关内容。