【问题标题】:Migrate Compute Service (worker role) to Azure AKS?将计算服务(辅助角色)迁移到 Azure AKS?
【发布时间】:2020-08-28 18:12:33
【问题描述】:

我正在重写 .NET Core 中的 Azure Compute Services Web Role 和 Worker 以使用 Azure AKS。 Web 角色在 AKS 中迁移到 ASP.NET Core 非常简单,但对于辅助角色,我有点不知所措。

辅助角色只是侦听 Azure 服务总线队列以获取要编码的照片。我已经看到我可以在 AKS 上运行 azure 函数运行时并设置总线队列触发器,但是为这个独特的任务设置所有 azure 函数运行时似乎有点矫枉过正。

有人可以指出我如何使用 .NET Core、服务总线队列以及根据队列消息的数量或 CPU 使用率设置自动缩放(如果可能)来实现这一目标的正确方向吗?

【问题讨论】:

  • 您可以在 .NET Core 中编写消息泵并配置 K8s Horizo​​ntal Pod Autoscaler 以根据 CPU 使用率扩展您的容器。
  • @CSharpRocks 在他们使用 KEDA 的 azure 函数的文档中是不是类似于 K8s Horizo​​ntal Pod Autoscaler。如果我在完成后创建一个 .NET Core 消息泵,我需要将其打包为容器,对吗?
  • 是的。 KEDA 是您的另一个选择。

标签: azure kubernetes .net-core azure-aks


【解决方案1】:

.NET Core 消息接收器的简单示例,请参考微软的Get started with Service Bus queues

要让您的 .NET Core 应用在集群中运行,您需要将其构建到 Docker 容器中。您应该使用 Docker 多阶段构建来创建运行时容器。微软有一个很好的参考:Docker images for ASP.NET Core

KEDA 和 Horizo​​nal Pod Autoscaler 都会根据指标增加或减少 pod 数量。如果您想根据 CPU 利用率进行扩展,K8S HPA 将是一个不错的选择。科达有一个scaler for Azure Service Bus Queues

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-08-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多