You need to enable JavaScript to run this app.
导航
弹性伸缩
最近更新时间:2024.09.09 10:37:39首次发布时间:2024.09.09 10:37:39

微服务应用支持自定义弹性伸缩策略,您可选择合适的策略与指标,设置弹性目标值,结合业务场景实现资源成本和稳定性的平衡。 本文为您介绍如何为微服务应用配置弹性伸缩策略。

说明

对于仅在请求时分配 CPU 的 事件函数Web 应用任务,函数服务会在请求处理期间根据请求 QPS 及资源利用率等指标自动弹性伸缩,不支持用户自定义弹性伸缩策略。

背景信息

微服务应用会根据监控指标策略中配置的触发条件,进行自动弹性伸缩,将资源利用率保持在目标值附近。

  • 计算规则

    • 应用目标实例数= ceil [当前实例数 × ( 当前监控指标值 / 目标指标值 ) ]。其中,ceil 表示向上取整。
    • 为保证扩缩稳定性,防止震荡,如果计算出的扩缩比例在 [0.9,1.1] 之间,则不进行实际扩缩。
  • 示例
    以 CPU 使用率为例,假设设置的目标值为 50%,当前实例数为 10。

    • 当前使用率为 70%,计算后的目标实例数=ceil[10*(70%/50%)]=14,扩容 4 个实例。
    • 当前使用率为 30%,计算后的目标实例数=ceil[10*(30%/50%)]=6,缩容 4 个实例。
    • 当前使用率为 55%,计算后的目标实例数=ceil[10*(55%/50%)]=11,扩缩比为 11/10=1.1,防止震荡不进行扩容。
    • 当前使用率为 45%,计算后的目标实例数=ceil(10*(45%/50%))=9,扩缩比为 9/10=0.9,防止震荡不进行缩容。

前提条件

已发布微服务应用,具体操作可参见 发布函数

操作步骤

  1. 登录 函数服务控制台

  2. 在顶部导航栏,选择您业务所在的地域。

  3. 函数列表 页面,找到目标函数,单击函数名称。

  4. 切换至 资源管理 页签。弹性策略列表中默认配置一条监控指标策略,支持根据需要修改。

  5. 单击 编辑, 对弹性策略进行更新。

配置项说明
策略类型监控指标策略

触发条件

配置监控指标策略的触发条件。当前支持以下指标策略,请至少配置一条监控指标。各指标之间为或的关系,满足任何一个条件时,都会触发扩缩容。

  • CPU 使用率:以 15 秒内应用所有实例平均 CPU 使用率作为监控指标。

  • MEM 使用率:以 15 秒内应用所有实例平均内存使用率作为监控指标。

说明

仅支持配置一条监控指标策略。其中,每个指标仅支持配置一个触发条件。

配置预览

  • 扩缩容阈值:根据您设置的目标值展示对应的缩容阈值和扩容阈值。

  • 实例数区间:展示当前微服务应用配置的实例数上下限。

弹性伸缩的尺度不会超过应用的实例数上下限。如需调整实例数区间,可至 资源管理 > 资源上限 > 实例数区间 进行编辑。

  1. 更新完成后,单击 保存
    您可至 监控 > 函数实例数量 观测扩缩容是否符合预期。

    注意

    弹性策略配置修改不受应用当前状态约束,但调整后的策略仅在应用处于 启用中 状态时才会生效。