当前位置: 首页 > 知识库问答 >
问题:

公开vnet内的Azure容器实例的正确方法是什么?

邹昊
2023-03-14

我有一个ACI,它运行的REST API需要公开,但需要访问vnet内的资源。

出于某种原因,与普通VM不同,如果ACI位于vnet中,则它不能具有公共IP地址。如果您尝试为其提供DNS名称,则会失败。

唯一的选择似乎是使用应用程序网关,如下所述:https://docs.microsoft.com/en-us/azure/container-instances/container-instances-application-gateway

这里还有:为Azure容器实例部署分配静态公共地址

但这种方法有一个致命的缺陷,如文档本身所示:“如果容器组被停止、启动或重新启动,容器组的私有IP可能会发生更改。如果发生这种情况,您将需要更新应用程序网关配置。”

应用程序网关可以选择按资源名称选择后端池,但这仅适用于普通VM。另一种选择是直接输入IP地址。

ACI可以在不知情的情况下轻松重启。根据经验,主机杀死它并重新启动它的情况相对频繁,可能使用不同的IP。

公开在internet上的ACI实例上运行的服务,同时让它访问vnet背后的资源,正确的方法是什么?应用程序网关方法显然不是正确的方法。

我需要一个可以轻松使用Azure CLI的解决方案,因为我正在通过Bitbucket管道部署我的ACI。

更新:

Azure容器实例只是一堆垃圾。从vnet公开它们的唯一方法是使用应用程序网关,在运行一个月后,它的成本最终会超过容器实例本身!此外,Azure容器实例在某些地区非常不稳定(在欧盟西部,它们不断被杀死),支持人员不了解发生了什么(显然这是多个客户的问题)。因此,每次实例重新启动时,它都会获得不同的IP地址,而昂贵的应用程序网关每月可能会花费100美元以上,甚至不知道IP地址发生了变化。

共有1个答案

郎玮
2023-03-14

如果您只想使用ACI,那么就没有办法解决它。您发现的是访问VNet内部ACI的唯一方法。但是如果您不介意,也许您可以使用AKS,然后启用虚拟节点,然后您也可以在VNet中运行ACI并在外部访问它。当然,您可以只使用AKS,它还可以帮助您在VNet中运行应用程序并在外部访问。

 类似资料:
  • 我试图创建一个容器实例作为连接到现有VNET和子网的专用网络。我昨天设法让它运行,但是更新或刷新映像非常慢。我正在dockerhub上使用私有映像。 现在,当我尝试使用相同的VNET、子网和映像创建ACI时,我会收到错误: 请求的资源目前在“westeurope”位置不可用。请使用其他资源请求或在其他位置重试。请求的资源:“1”CPU“1.5”GB内存“Linux”操作系统虚拟网络单击此处获取详细

  • 问题内容: 我一直在弄乱JSON一段时间,只是将其作为文本推出,它并没有伤害任何人(据我所知),但是我想开始做正确的事情。 我见过 这么 多所谓的“标准”为JSON内容类型: 但是哪一个是正确的,还是最好的?我发现在它们之间存在安全性和浏览器支持问题。 我知道有一个类似的问题, [如果RESTAPI返回JSON,则为哪种MIME类型?,但我想要一个更有针对性的答案。 问题答案: 对于JSON文本:

  • 我正在使用kubeadm工具创建kubernetes v1.7集群。 在我的主机上公开服务“echoheaders”非常简单。库贝。com使用外部ip 创建正在运行的部署: 从部署中公开服务: 从web浏览器访问: 现在,我想使用本指南中基于角色的入口控制器公开相同的服务echoheaders:https://github.com/kubernetes/ingress/tree/master/ex

  • 或 上课。但是,当我想要将元素对齐到右下角时,我需要做什么呢?引导标记之后最常见的方法是什么?

  • 问题内容: 对于具有所有带有公共静态方法的实用程序类,正确的方法是什么? 我应该使用最终班还是抽象班? 请提出建议。 例如: 要么 问题答案: 有自己的目的。如果您希望其他类()实现某些类功能,则可以使用abstract。 如果它只是实用程序类,但是您不希望其他类将其子类化,那么我将选择类。如果实用程序类只有方法,则您无法以任何方式覆盖它们,因此将它们也包含在类中也没有区别。

  • 问题内容: 这个问题应该比关于更多。 我有一个子类(在python 2.7中,numpy 1.6.2),并且我发现在对象时未列出的字段名称(因此,ipython的自动完成功能无效)。 为了修复它,我尝试在子类中重写,如下所示: 结果是:。(我发现这里实际上应该在python 3.3中工作…) 作为一种解决方法,我尝试了: 据我所知,这是可行的,但当然并不优雅。 问题: 后一种解决方案对我而言是否正