Azure、容器和水平扩展

标签 azure containers azure-aks azure-container-service

我是容器和 Kubernetes 的新手。我在 Azure 中进行大部分测试。

我创建了一个容器,并根据容器的负载水平缩放。我构建的容器中托管的端点必须处理突发请求。我预计容器大部分时间都处于空闲状态,但在我的测试中,它有时必须扩展到多个实例才能处理突发请求。

为了降低运行服务的成本,我想知道是否可以将容器的实例数量减少到0,同时保持在请求即将到来时“唤醒”容器的能力进来?我怎样才能做到这一点?

最佳答案

AKS 内部使用水平 Pod 自动缩放器 (HPA),用于监视资源需求并自动缩放副本数量。此外,根据 pod 的不同需求,kubernetes 的集群自动缩放器会根据计算资源需求调整节点数量。

将 ACI 与 AKS 结合起来,形成了强大的微服务部署模型,其中 AKS 可以用于微服务的典型部署,ACI 可以处理突发工作负载,从而减少扩展管理方面的挑战,并确保有效利用每秒使用成本模型.

此外,如果需求是使用基于事件触发器的用例对现有 azure 应用程序进行某种扩展,则 azure 函数可能是更好的选择。在这里,应根据需要仅针对特定事件或触发器调用特定代码(函数),并且函数实例按需创建、销毁(按需计算 - 函数即服务(FaaS))。 Azure 函数避免了额外资源(VM)的分配,并且仅在函数处理工作时才考虑成本。解决方案可以组合这两种功能,以便触发 Azure 功能以进行最少的处理/决策,然后可以调用 Azure 容器实例来进行特定的突发处理/完整处理,从而降低成本。

关于Azure、容器和水平扩展,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61616014/

相关文章:

javascript - node.js 服务器无法在虚拟机中工作(Azure 云服务)

azure - 如何从 AZURE 中的 VM 获取订阅 ID

c++ - 如何制作 “own”模板化 map ?

security - Docker容器的加密和相互认证?

azure - 具有 LetsEncrypt 的 AKS 以及针对不同容器的多个证书

azure - 如何将 kubectl 任务的输出传递到 Azure Devops 中的下一个任务

azure - 从 PC 连接到 Azure 虚拟网络

docker - 如何将镜像组合到Docker中的一个容器中(因为IIB依赖于MQ)?

azure - 如何使用 Terraform 扩展 Kubernetes 集群以避免停机?

azure - ADAL:在哪里可以查看资源 ID?