【问题标题】:Scale Azure Container Instance缩放 Azure 容器实例
【发布时间】:2023-03-08 11:23:02
【问题描述】:

是否可以扩展 ACI 运行容器?

问题:

我们有一些老式的云服务 (.NET Framework v4.7.1) 我们正在迁移到 Docker 容器,我们现在已经成功地让它们在 Azure 容器实例中运行和响应,但需要能够根据负载和弹性扩展它们。

这是一个更大项目的一部分,我们也在 k8s 中运行我们的新解决方案 - 所有 .NET Core 2 微服务。

当我们能够在同一个主节点上运行 Windows 和 Linux 节点时,我们的目标最终将是把它们引入主要的 k8s 解决方案,从而允许我们在同一个集群中运行这两个项目。

【问题讨论】:

  • ACI 是独立服务,您在创建服务时选择规模。如果您为 AKS 使用 ACI 连接器,那么您将能够从 Kubernetes 本身进行扩展。 Windows 容器目前处于测试阶段,计划在 2018 年下半年推出 GA
  • 谢谢@GregorySuvalian,秤的配置在哪里?
  • Windows 容器目前只有 2 种选择,您可以在这里找到 docs.microsoft.com/en-us/azure/container-instances/… 并且必须在实例化期间分配

标签: azure containers azure-container-service windows-container azure-container-instances


【解决方案1】:

无法扩展特定的 ACI 实例。如果您需要更多 CPU/内存,则需要重新部署该容器。

您可以水平扩展 ACI,即添加更多容器,但是,ACI 不支持负载平衡器,因此您需要管理您将获得的 IP 地址的集合。当然,您可以部署一个前端容器来分散负载。

如 cmets 中所述,您可以将 AKS 连接到 ACI,并使用 Kubernetes 来处理编排和扩展。不幸的是,我认为 AKS 目前不支持 Windows(尽管我想这应该很快就会到来)

根据您的使用案例,您可能会更好地部署到独立集群,同时 AKS / ACI 可以满足您的需求。

【讨论】:

  • 确实,在我看来,ACI 似乎是 MS 的一个半生不熟的解决方案,只是为了让人们跳上 docker wave。这几乎是在 azure 中执行“docker run”的一种方式。适合小型设置,但绝对不适合扩展。
  • 如果它能让你感觉更好的话,它对于 linux 实例也是半生不熟
【解决方案2】:

您可以使用ARM template 轻松部署多个 Azure 容器实例。特别看一下“复制”功能。

然后您可以使用 Azure DNS 流量管理器在各个容器之间进行负载平衡。

【讨论】:

  • 您是否将此方法与 azure kubernetes 服务 [aks] 对 azure 容器实例 [aci] 的虚拟 kubelet 支持进行了比较,发现如果您不需要所有花哨的东西,它运行起来更简单、更经济aks 的监控和容器实例恢复能力?
猜你喜欢
  • 2020-11-29
  • 2018-04-25
  • 1970-01-01
  • 1970-01-01
  • 2022-09-28
  • 1970-01-01
  • 2021-11-26
  • 1970-01-01
  • 2020-10-08
相关资源
最近更新 更多