自动缩放 Azure API 管理实例
适用于:基本 | 标准 | 高级
Azure API 管理服务实例可以根据一组规则自动缩放。 可以通过 Azure Monitor 自动缩放启用和配置此行为。
本文逐步讲解配置自动缩放的过程,并建议自动缩放规则的最佳配置。
注意
- 在支持多个缩放单元的服务层中,还可以手动缩放 API 管理实例。
- 消耗层中的 API 管理服务会根据流量自动缩放 - 无需任何其他配置。
先决条件
若要执行本文中的步骤,必须:
- 拥有一个有效的 Azure 订阅。
- 有一个 Azure API 管理实例。 有关详细信息,请参阅创建 Azure API 管理实例。
- 了解 API 管理实例容量的概念。
- 了解 Azure API 管理实例的手动缩放,包括成本影响。
Azure API 管理自动缩放的限制
在配置自动缩放行为之前,需要考虑到缩放存在的某些限制和造成的后果。
- API 管理实例的定价层确定了可缩放到的最大单位数。 例如,可将标准层扩展到 4 个单元。 可将任意数目的单位添加到“高级”层。
- 缩放过程至少需要花费 20 分钟。
- 如果服务被另一操作锁定,则缩放请求将会失败并自动重试。
- 如果服务实例部署在多个区域(位置),则只有主要位置中的单位可以使用 Azure Monitor 自动缩放进行自动缩放。 其他位置的单位只能手动缩放。
为 API 管理实例启用和配置自动缩放
遵循以下步骤为 Azure API 管理服务配置自动缩放:
登录到 Azure 门户,并导航到 API Management 实例。
在左侧菜单中,选择“横向扩展(自动缩放)”,然后选择“自定义自动缩放”。
在“默认”缩放条件下,选择“基于指标缩放”,然后选择“添加规则”。
定义新的横向扩展规则。
例如,当过去 30 分钟的平均容量指标超过 70% 时,横向扩展规则可能触发添加 1 个 API 管理单元的操作。 下表提供了此类规则的示例配置。 在环境中定义横向扩展规则时,请查看先前的限制。
参数 值 说明 指标源 当前资源 基于当前 Azure API 管理资源指标定义规则。 条件 指标名称 容量 容量指标是一个 API 管理标准,用于反映 Azure API 管理实例的资源用量。 位置 选择 API 管理实例的主要位置 运算符 大于 指标阈值 70% 平均容量指标的阈值。 有关设置此阈值的注意事项,请参阅使用容量进行缩放决策。 持续时间(分钟) 30 要计算平均值的容量指标的时间跨度特定于使用模式。 持续时间越长,反应越顺利。 间歇性峰值对横向扩展决策的影响较小。 但是,它还会延迟横向扩展触发器。 时间粒度统计信息 平均值 Action 运算 计数增量 实例计数 1 以 1 个单位为增量横向扩展 Azure API 管理实例。 冷却(分钟) 60 横向扩展 API 管理服务至少需要 20 分钟。大多数情况下,60 分钟冷却期可以防止触发许多横向扩展操作。 选择“添加”以保存规则。
若要添加其他规则,请选择“添加规则”。
此时,需要定义横向缩减规则。 这可确保在 API 用量减少时不会浪费资源。
定义新的横向缩减规则。
例如,当过去 30 分钟的平均容量指标低于 35% 时,横向缩减规则可以触发删除 1 个 API 管理单元的操作。 下表提供了此类规则的示例配置。
参数 值 说明 指标源 当前资源 基于当前 Azure API 管理资源指标定义规则。 条件 时间聚合 平均值 指标名称 容量 横向扩展规则所用的相同指标。 位置 选择 API 管理实例的主要位置 运算符 小于 阈值 35% 与横向扩展规则一样,此值在很大程度取决于 API 管理的使用模式。 持续时间(分钟) 30 横向扩展规则所用的相同值。 时间粒度统计信息 平均值 Action 运算 计数减量 与横向扩展规则使用的值相反。 实例计数 1 横向扩展规则所用的相同值。 冷却(分钟) 90 横向缩减应该比横向扩展更保守,因此冷却期应该更长。 选择“添加”以保存规则。
在“实例限制”中,选择“最小”、“最大”和“默认”API 管理单元数。
注意
API 管理会限制实例可以横向扩展到的单元数。 该限制取决于服务层级。
选择“保存”。 自动缩放已配置。