避免每个节点的 AWS EKS IP 限制
Avoiding AWS EKS IPs limitation per node
一家公司想使用命名空间扩展他们的微服务应用程序,命名空间代表每个客户端的单独应用程序。该应用程序由 22 个微服务组成,公司有 80 个客户端,因此集群中将有 22 * 80 = 1760 pods。示意图如下。
最初计算出 4 个 r4.xlarge 节点就足以保持适当的性能。但是该公司遇到了另一种问题:每个实例 the number of IP addresses。例如,仅对于 r4.xlarge 类型的 4 个节点:4(节点)* 4(网络接口)* 15(私有 IPv4 地址)= 240 个可用地址,但需要 1760 个地址!
增加节点数超出预算数倍。
有什么方法可以避免 IP 数量限制吗?或者你可以提出另一个解决方案
限制是因为您使用的是 AWS VPC CN 插件 docs.aws.amazon.com/eks/latest/userguide/pod-networking.html。
使用此插件允许 Kubernetes pods 在 pod 内拥有与在 VPC 网络上相同的 IP 地址。
根据文档,Amazon VPC CNI 插件可能无法满足所有用例的要求。 Amazon EKS 维护着一个合作伙伴网络,这些合作伙伴提供具有商业支持选项的替代 CNI 解决方案。有关详细信息,请参阅备用兼容 CNI 插件。 https://docs.aws.amazon.com/eks/latest/userguide/alternate-cni-plugins.html
请注意,您不能使用 AWS Load Balancer Controller 的 IP 地址定位模式。它必须是实例定位模式。
这是我们打算通过即将推出的新版本 VPC CNI 插件来解决的问题。正在开展工作以增加任何给定工作节点上 pods 可用的 VPC IP 地址的数量。您可以跟踪此路线图项目 here.
一家公司想使用命名空间扩展他们的微服务应用程序,命名空间代表每个客户端的单独应用程序。该应用程序由 22 个微服务组成,公司有 80 个客户端,因此集群中将有 22 * 80 = 1760 pods。示意图如下。
最初计算出 4 个 r4.xlarge 节点就足以保持适当的性能。但是该公司遇到了另一种问题:每个实例 the number of IP addresses。例如,仅对于 r4.xlarge 类型的 4 个节点:4(节点)* 4(网络接口)* 15(私有 IPv4 地址)= 240 个可用地址,但需要 1760 个地址!
增加节点数超出预算数倍。
有什么方法可以避免 IP 数量限制吗?或者你可以提出另一个解决方案
限制是因为您使用的是 AWS VPC CN 插件 docs.aws.amazon.com/eks/latest/userguide/pod-networking.html。 使用此插件允许 Kubernetes pods 在 pod 内拥有与在 VPC 网络上相同的 IP 地址。
根据文档,Amazon VPC CNI 插件可能无法满足所有用例的要求。 Amazon EKS 维护着一个合作伙伴网络,这些合作伙伴提供具有商业支持选项的替代 CNI 解决方案。有关详细信息,请参阅备用兼容 CNI 插件。 https://docs.aws.amazon.com/eks/latest/userguide/alternate-cni-plugins.html
请注意,您不能使用 AWS Load Balancer Controller 的 IP 地址定位模式。它必须是实例定位模式。
这是我们打算通过即将推出的新版本 VPC CNI 插件来解决的问题。正在开展工作以增加任何给定工作节点上 pods 可用的 VPC IP 地址的数量。您可以跟踪此路线图项目 here.