使用弹性伸缩实现自动扩缩容,用弹性伸缩自动扩缩容ECI实例

Yanyan 553 2023-11-06

一、使用弹性伸缩实现自动扩缩容

本文以ECS类型伸缩组为例介绍弹性伸缩的使用流程。

创建伸缩组。

使用弹性伸缩管理业务所用的ECS实例时,伸缩组是基本的管理单元。伸缩组用于管理具有相同应用场景的ECS实例,并支持关联多个负载均衡实例和RDS实例。更多信息,请参见伸缩组概述。

说明

伸缩组关联负载均衡实例和RDS实例后,ECS实例加入伸缩组时会自动添加为负载均衡实例的后端服务器,其内网IP会自动加入RDS实例的访问白名单。

创建伸缩配置(ECS实例)。

伸缩配置是弹性伸缩自动创建ECS实例时所使用的实例模板。一个伸缩组支持创建多个伸缩配置,但同一时间只允许一个伸缩配置处于生效状态。更多信息,请参见实例配置来源概述。

说明

创建伸缩组时,如果您选择启动模板或者选择已有实例作为组内实例配置信息来源,则您无需手动创建伸缩配置,就可以直接启用伸缩组。

启用伸缩组。

首次创建伸缩配置后,会自动提示启用伸缩组。您也可以选择在伸缩组列表自行启用伸缩组。具体操作,请参见启用伸缩组。

创建伸缩规则。

伸缩规则用于指定扩缩容ECS实例的数量等信息或者智能地设置伸缩组边界值,您可以根据业务需要创建对应类型的伸缩规则。更多信息,请参见伸缩规则概述。

创建自动伸缩任务。

创建伸缩规则后,您可以通过自动伸缩任务自动执行伸缩规则,实现自动扩缩容。自动伸缩任务支持以下类型:

定时任务

如果您可以预测业务量波动的时间,使用定时任务在指定时间自动扩缩容即可。定时任务支持设置重复周期,满足周期性自动扩缩容的需求。更多信息,请参见定时任务概述。

报警任务

如果您需要基于ECS实例的运行指标自动扩缩容,可以使用报警任务。报警任务基于云监控的监控项动态管理伸缩组内ECS实例,更多信息,请参见报警任务概述。


二、通过弹性伸缩自动扩缩容ECI实例

在非K8s场景下,使用ECI实例来运行容器应用时,可以配合使用***弹性伸缩服务,实现根据业务量自动增加或者减少ECI实例,在保证业务正常运行的同时节约使用成本。


功能概述

***弹性伸缩(Auto Scaling)是根据业务需求和策略自动调整计算能力(即实例数量)的服务。非K8s场景下,配合使用弹性伸缩来管理ECI实例,可以实现自动扩缩容ECI实例,在满足业务需求的同时,提高资源利用率,降低人力和使用成本。更多信息,请参见弹性伸缩简介。

对于运行同一业务的ECI实例,您可以将其加入到弹性伸缩组中,设置伸缩组最小实例数来保证日常业务运行,设置伸缩组最大实例数来避免成本超标,同时可以设置伸缩规则,配合定时任务或者报警任务来实现自动扩缩容组内的ECI实例。功能示意图如下:

1699237743338.png

通过弹性伸缩自动扩缩容ECI实例适用于以下场景:

业务量变化有规律,在某一特定时间进行扩缩容。

例如:某游戏公司在每晚18点~24点的时间段内业务量激增,您可以创建定时任务,在每天的18:00自动增加ECI实例,在每天的24:00自动减少ECI实例。

1699237763515.png

业务量变化无规律,根据监控指标自动进行扩缩容。

例如:某视频直播公司的日常业务量难以预测,您可以创建报警任务,监控伸缩组内ECI实例的CPU使用率,自动增加或者减少ECI实例,使得CPU使用率维持在60%。

1699237782712.png

配置流程

通过弹性伸缩自动扩缩容ECI实例的流程如下:

1699237796929.png

创建伸缩组

伸缩组用于管理具有相同应用场景的ECI实例集合。您可以通过伸缩组定义可容纳实例数量的边界值(最大和最小实例数)、弹性扩张时使用的实例模板、弹性收缩时移出实例的策略等属性,让伸缩组按照您的需求维护一组实例。更多信息,请参见创建伸缩组。

创建伸缩配置

伸缩组自动扩张时,将根据伸缩配置中的实例配置来源来创建ECI实例,并将ECI实例加入到伸缩组中。更多信息,请参见创建伸缩配置(ECI实例)。

说明

由于容器镜像一般较大,拉取镜像会影响ECI实例的启动耗时,因此配置时建议开启自动匹配镜像缓存,以加速ECI实例的创建。

启用伸缩组

伸缩组处于启用状态时才可以进行弹性扩张和收缩。首次创建伸缩配置后,会自动提示启用伸缩组。您也可以在伸缩组列表自行启用伸缩组。更多信息,请参见启用伸缩组。

创建伸缩规则

伸缩规则用于触发伸缩活动,分为简单规则和目标追踪规则等,您可以根据业务需要创建对应类型的伸缩规则。

简单规则:指定增加、减少的实例数,或者将实例数量调整到指定值。

目标追踪规则:选择某一监控指标并设置目标值,系统将自动增加或者减少实例数,使得监控指标值维持在目标值附近。

执行伸缩规则

您可以通过以下方式执行伸缩规则,实现伸缩组内ECI实例的弹性伸缩,在业务高峰增加ECI实例来缓解业务压力,在业务低谷时释放ECI实例来减少使用成本。

手动执行

如果临时需要伸缩ECI实例,可以手动执行伸缩规则。更多信息,请参见执行伸缩规则。

通过定时任务自动执行

定时任务可以在指定时间执行伸缩规则。如果业务量的变化时间可预测,您可以创建定时任务。更多信息,请参见创建定时任务。

通过报警任务自动执行

报警任务通过监控特定的监控指标(CPU使用率、内存和自定义指标),对数据指标进行实时统计,当统计值满足您指定的报警条件时,触发报警并执行伸缩规则。如果业务量的变化没有明显规律,您可以创建报警任务。更多信息,请参见创建报警任务



版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:分布式事务协调器:解析大规模分布式系统中的关键问题
下一篇:云分布式存储技术:解密数据存储的未来
相关文章