如何使用我的DNS服务器获取Azure容器实例



在ACI中,我们使用支持虚拟网络的Linux容器。在那里,我们运行了一些使用azure ServiceBus、azure存储帐户和azure CosmosDb的固定化azure功能应用程序,它们都在虚拟网络中。

所有这些服务都运行得很好,但当我们试图访问我们的API管理(也在虚拟网络内部(时,我们会收到502错误网关响应。在连接到实例并将我们的DNS服务器添加到resolv.conf之后,一切都运行得很好——这让我得出结论,即虚拟网络中提供的DNS没有得到考虑。

在将ACI与虚拟网络结合使用时,我们需要考虑哪些特殊因素吗?

经过一番调查,我们发现Microsoft.ContainerInstance/containerGroupsARM模板部署具有以下属性:Microsoft.ContainerInstance/containerGroups/properties/dnsConfig/nameServers[]

在那里,我们添加了我们的DNS服务器,它就像一个魅力!以下是它的文档:https://learn.microsoft.com/en-us/azure/templates/microsoft.containerinstance/containergroups#DnsConfiguration

然而,这个解决方案并不完全干净,因为它需要双重维护DNS服务器(在VNET设置中以及每个容器实例中(。如果有任何方法可以消除这种情况,我们将不胜感激。

最新更新