Azure VNet ip到Kubernetes入口控制器

时间:2019-10-28 15:26:14

标签: azure kubernetes nginx-ingress

我有一个关于将Azure VNET中的IP分配给nginx-ingress负载平衡器的问题。我是新手,因此想检查一下我认为的方法是否可行。

我们计划在Azure Kubernetes中部署内部应用程序。为了最大程度地减少对Ips的使用(由于我们的团队通过Azure VNET分配了少量IP地址),我们在AKS中进行了基本联网,并计划使用Azure VNET中分配的IP更新Nginx负载平衡器。

这种方法行得通吗?

我所困惑的是我使用基本网络创建的AKS群集,它自动创建了自己的VNET和NSG,但是,公司中分配给我们的IP地址属于另一个Azure VNET。

我的限制是我想使用分配的IP范围中的最少IP地址。我将对其他人如何解决此问题感兴趣。

不胜感激。

1 个答案:

答案 0 :(得分:1)

如果需要使用现有VNET的地址空间,则在部署资源时需要选择 Advanced 网络配置,并选择现有的VNET和子网。

通过这种方式,应用程序将从您的VNET内置DHCP服务器获得IP租约。

虽然可以使用VNET对等方式以您部署的方式方便地路由到群集,但这会导致不必要的复杂体系结构。

编辑:

如果由于IP分配的限制,您别无选择,只能将AKS部署到其他网段,则您仍应使用“高级”网络选项,但要创建一个新的VNET,其地址空间不应与现有VNET重叠。 >

例如,如果您的生产VNET地址空间为10.0.0.0/8,则必须使用适合192.168.0.0/16或172.16.0.0/12-不重叠的地址空间。

一旦部署,您必须在两个VNET之间创建对等。参见https://docs.microsoft.com/en-us/azure/virtual-network/virtual-network-peering-overview

配置了对等后,您可以在具有IP约束的VNET中创建一个内部负载均衡器,并将后端池设置为应用程序的AKS负载均衡器地址。

此体系结构只是解决IP分配限制的一种方法,不建议使用。在10.0.0.0/8地址空间中有16m +个IP地址可用。如果您在此空间内只能使用一个IP地址,则说明您的环境非常庞大,或者您的VNET设置不是最佳选择,还是无法容纳