【问题标题】:does calico also run in ipvs mode when kube proxy is runing in ipvs mode当 kube 代理在 ipvs 模式下运行时,calico 是否也在 ipvs 模式下运行
【发布时间】:2021-06-23 21:12:51
【问题描述】:

我知道 kube-proxy 可以在 iptables 或 ipvs 模式下运行。此外,calico 设置了 iptables 规则。

但是 calico iptables 规则是否仅在 kube 代理在 iptables 模式下运行时安装,或者这些 iptables 规则安装时与 kube-proxy 模式无关?

【问题讨论】:

    标签: kubernetes iptables calico


    【解决方案1】:

    根据documentation

    如果 Calico 检测到,则会自动激活 Calico ipvs 支持 kube-proxy 正在该模式下运行。

    【讨论】:

      【解决方案2】:

      The short answer is yes - Calico 支持 IPVS kube-proxy 模式:

      如果 Calico 检测到 kube-proxy 正在该模式下运行,则会自动激活 Calico ipvs 支持。

      另外:

      Calico 会在部署 Calico 后检测您是否更改了 kube-proxy 的代理模式。在将 kube-proxy 代理模式更改为 ipvs 之前,任何 Kubernetes 的 ipvs 特定配置都需要为 configured

      但是,正如您所注意到的,kube-proxy 可以在 iptablesipvs 模式下运行。见iptablesipvs mode之间的comparison

      IPVS 是专为负载平衡而设计的 Linux 内核功能。在 IPVS 模式下,kube-proxy 对 IPVS 负载均衡器进行编程,而不是使用 iptables。 此外,作为专用的负载均衡器,IPVS 拥有多种不同的调度算法,如循环、最短预期延迟、最少连接和各种散列方法。相比之下,iptables 中的 kube-proxy 使用的是随机等价选择算法。

      与 iptables 模式相比,ipvs 模式将提供性能。但是,有一些限制:

      • Calico 需要额外的 iptables 数据包标记位来跟踪通过 IPVS 的数据包。
      • 必须使用分配给 Kubernetes NodePorts 的端口范围配置 Calico。如果服务使用超出预期 Calico 范围的 NodePort,Calico 会将这些端口的流量视为主机流量,而不是它们的流量。

      Here你可以找到指南,如何使用IPVS kube-proxy。如果您选择使用此模式,Calico 会自动切换到此模式。

      【讨论】:

        猜你喜欢
        • 2019-08-17
        • 2021-03-09
        • 2019-10-22
        • 2019-06-11
        • 2023-04-08
        • 2021-10-30
        • 2012-05-04
        • 2012-09-10
        • 1970-01-01
        相关资源
        最近更新 更多