没有IP地址的虚拟网络中容器组之间的联网

时间:2020-09-07 14:56:28

标签: azure azure-container-instances

想象一下以下情况: 我有一个虚拟网络。其中有多个容器组/实例,它们之间需要进行通信。每个组都在单独的子网中。还有一个应用程序网关,在将一些流量路由到它们时,需要知道容器组。当前,通信通过IP地址进行。在部署过程中,我告诉网关和一些容器组它们需要知道的IP地址。

我的问题是,无论何时容器组重新启动(无论是有意还是无意),它都可能会获得一个新的IP地址。但是一切仍然使​​用旧的IP地址(因为他们应该如何知道它已更改)。

我发现无法指定可以安全使用的静态专用IP地址或主机名或某种fqdn。另外,由于无法更新私有DNS,因此无法在此处使用。因此,该名称仍会解析为旧的IP地址。

有人知道如何在虚拟网络中的容器组之间进行网络连接吗?当某些容器组重新启动或获得新的IP地址时,这很好吗?

我目前能想到的唯一可能的解决方案是,只要该组中的映像(重新)启动(重新启动),它就会同时更新天蓝色的专用dns。但这是我并不真正认为(好的)解决方案的东西。映像不应依赖于特定的主机。另外,我还需要部署某种凭据,这也是不好的。

1 个答案:

答案 0 :(得分:1)

当前,我认为没有适合您的解决方案。您知道,当在VNet中创建容器组时不支持DNS,并且在重新启动组时也无法决定该组将使用哪个IP地址。这就是它的设计方式。也许将来会更好。

如果唯一的选择是容器实例,我建议您在容器组内创建所有容器,以便容器可以与其端口通信,而不是与其专用IP地址通信。如果您不介意使用其他服务,则AKS可能是您更好的选择。