常见自动缩放模式的概述

使用自动缩放设置有助于确保运行适当数量的资源来处理应用程序负载的波动。 可将自动缩放设置配置为基于指标(指示负载或性能)触发,或者在计划好的日期和时间触发。

Azure 自动缩放支持许多资源类型。 有关支持的资源的详细信息,请参阅自动缩放支持的资源

本文介绍一些常见模式,可使用这些模式在 Azure 中缩放资源。

先决条件

本文假设你熟悉自动缩放。 有关详细信息,请参阅开始在此处缩放资源

基于指标缩放

根据资源本身或任何其他资源生成的指标缩放资源。 例如:

  • 根据虚拟机的 CPU 使用率缩放虚拟机规模集。
  • 确保最小实例数。
  • 设置最大实例数限制。

下图显示了虚拟机规模集的默认缩放条件:

  • 缩放规则”选项卡显示指标源是缩放集本身,使用的指标是 CPU 百分比
  • 最小运行实例数设置为 2
  • 最大实例数设置为 10
  • 规模集启动时,默认实例数为 3

Screenshot that shows an autoscale setting that scales by CPU %.

根据另一资源指标进行缩放

根据来自不同资源的指标缩放资源。 下图显示了一个缩放规则,它根据负载均衡器上分配的端口数缩放虚拟机规模集。

Screenshot that shows an autoscale rule based on load balancer metrics.

在周末以不同的方式缩放

可以在一周中的各天以不同的方式缩放资源。 例如,你可能有一个虚拟机规模集,并且希望:

  • 在工作日设置至少 3 个实例,根据入站流进行缩放。
  • 在周末流量较少时横向缩减为 1 个实例。

在本示例中:

  • 周末配置文件从周六早上 00:01 开始,在周一早上 04:00 结束。
  • 结束时间留空。 工作日配置文件在周末配置文件开始时结束,反之亦然。
  • 默认配置文件不相关,因为不存在其他配置文件未涵盖的时间。

注意

仅支持通过 Azure 门户和 Azure 资源管理器模板(ARM 模板)创建无结束时间的定期配置文件。 有关如何使用 ARM 模板创建定期配置文件的详细信息,请参阅使用 ARM 模板添加定期配置文件

如果结束时间未包含在 CLI 命令中,则将通过使用命名约定 "name": {\"name\": \"Auto created default scale condition\", \"for\": \"<non-default profile name>\"} 创建默认配置文件的副本来实现默认结束时间 23:59。

Screenshot that shows two autoscale profiles, one default and one for weekends.

在特定事件期间以不同方式进行缩放

可以不同方式为特定事件设置缩放规则和实例限制。 例如:

  • 默认情况下,至少设置 3 个实例。

  • 对于“黑色星期五”这一周,将最小实例数设置为 10 以处理预期流量。

    Screenshot that shows two autoscale profiles, one default and one for a specific date range.

基于自定义指标进行缩放

按应用程序生成的自定义指标进行缩放。 例如,你可能有一个 Web 前端和一个与后端通信的 API 层,并且希望根据前端中的自定义事件缩放 API 层。

Screenshot that shows an autoscale profile and rule scaling by a custom metric.

后续步骤

在以下文章中了解有关自动缩放的详细信息: