首页 > 解决方案 > 如果 azure aks kubenet cidr 是内部的,为什么它们不应该与其他地址重叠?

问题描述

在查看https://docs.microsoft.com/en-us/azure/aks/configure-kubenet并按照那里的建议后,对于服务,pod 和 docker cidr 似乎不应与任何其他地址重叠使用(大概在同一个 vnet 中),例如。

--service-cidr 用于为 AKS 群集中的内部服务分配 IP 地址。此 IP 地址范围应该是您的网络环境中其他地方未使用的地址空间。

我只是不确定为什么会这样。这些ip实际上可以在vnet上访问吗?我的印象是这些 cidr 仅在 aks 内,并且只有 cni 集群才允许直接访问。任何人都可以解释这个问题吗?

我想下一个问题是,如果它们重叠会发生什么?

标签: azure-aks

解决方案


也许您不清楚 AKS 的网络是如何工作的。让你在这里感到困惑。

在 kubenet 类型的网络中,所有流量首先到达节点,然后 kubenet 服务器将流量路由到特定的服务,然后再到 pod。这个时候,如果你的服务在 Vnet 中有相同的 IP,那么流量会去哪里呢?Vnet 中具有相同 IP 的服务或其他节点?即使Vnet中的其他资源?为了将流量直接路由到服务,您最好不要将服务 cidr Ip 地址范围与 Vnet 重叠。


推荐阅读