资讯专栏INFORMATION COLUMN

私有云解决方案-UCloudStack私有云解决方案(弹性伸缩)

ernest.wang / 284人阅读

弹性伸缩(Auto Scaling)是指在业务需求增长时自动增加计算资源(虚拟机)以保证计算能力,在业务需求下降时自动减少计算资源以节省成本;同时可结合负载均衡及健康检查机制,满足请求量波动和业务量稳定的场景。

用户可通过弹性伸缩服务,定制弹性伸缩组及伸缩策略,在伸缩组内资源量达到策略定义的阈值后,根据定制的虚拟机模板自动增减虚拟机数量,提升业务部署及运维的效率。

4.9.2 逻辑架构

弹性伸缩从逻辑架构上可分为三部分,分别为伸缩组、伸缩器及虚拟机模板。

ASArch

  • 伸缩组:负责将组内的实例数量维持在“期望”的水位,添加/缩减虚拟机的动作均由伸缩组进行操作,支持“自动伸缩”和“固定数量” 两种模式维护伸缩组内的实例数量。
  • 伸缩器:即伸缩策略,用于定义伸缩组内虚拟机伸缩的规则,可为伸缩组定义根据 CPU 使用率的阈值触发伸缩动作,支持定义伸缩组最小及最大实例数量,并可配置是否允许缩容。
  • 虚拟机模板:用户根据需求自定义虚拟机模板,用于弹性伸缩时自动创建虚拟机的模板,同时支持通过虚拟机模板手动创建虚拟机。

伸缩组定义好伸缩模式后,伸缩组的实例“期望”值由伸缩策略接管并动态修改,最终由伸缩组负责虚拟机的动态扩容和缩容,新增虚拟机实例时会根据虚拟机模板创建新的虚拟机实例。

4.9.3 伸缩组工作流程

伸缩组内的虚拟机实例可定义预热时间,指为虚拟机创建成功后需要一定的时间拉起应用程序以承接业务流量。因此在伸缩组发起创建虚拟机的请求后,在虚拟机创建成功并处于运行中状态时,伸缩组中虚拟机的状态为“启动中”,代表虚拟机在预热中,待超过预热时间后,会自动转换为“运行”,代表虚拟机为健康状态。

伸缩组每 15 秒 获取一次被其控制的所有虚拟机状态,判断是否需要添加或删除实例。若伸缩组关了负载均衡,则由负载均衡判断伸缩组内的实例是否健康,若不健康具体流程如下:

  • 健康实例等于期望值伸缩组会自动将不健康(基于三个周期健康检测的判断)的实例移出伸缩组,并执行删除虚拟机操作。
  • 健康实例大于期望值选择将最晚创建的健康虚拟机实例移出伸缩组,并执行删除虚拟机操作,同时将不健康的实例移出伸缩组并执行删除操作。
  • 健康实例小于期望值伸缩组会自动以虚拟机模板发起创建实例操作,并将实例数量维持在期望值,同时会将不健康的实例移出伸缩组并执行删除操作。

4.9.4 伸缩器工作流程

伸缩器会根据伸缩策略中设置的最小和最大实例值,每 15 秒采集一次伸缩组中健康实例的 CPU 监控数据,用于判断是否需要扩容或缩容伸缩组中的实例。

  • 扩容若伸缩组中健康实例的 CPU 平均使用率大于伸缩策略定义的阈值,则会触发伸缩组进行扩容实例操作。
  • 缩容通常伸缩组中健康实例的 CPU 平均使用率小于伸缩策略定义的阈值,则会触发伸缩组进行缩容实例操作。为避免频繁的缩容导致伸缩组内集群服务震荡,缩容时会获取伸缩组过去 10 分钟内所有健康实例的 CPU 监控数据平均值,用于判断是否需要缩容伸缩组中的实例。

4.9.5 功能特性

弹性伸缩通过伸缩组、伸缩策略及虚拟机模板共同维护集群内虚拟机的实例数量,同时可结合负载均衡对伸缩组内虚拟机实例的业务健康进行检测并及时剔除处于不健康状态的虚拟机实例,保证整体集群业务的可用性和可靠性。

  • 支持定义虚拟机模板,用于伸缩组自动创建虚拟机的模板,同时支持通过虚拟机模板手动创建虚拟机。
  • 支持伸缩组预热时间,使虚拟机创建成功后有时间拉起应用程序以承接业务流量。
  • 支持自动伸缩和固定数量两种伸缩模式,适应多种自动伸缩场景。自动伸缩模式依据伸缩器的伸缩策略维护伸缩组中的实例数量;固定数量模式依据用户指定的实例数量维伸缩组中的实例。
  • 支持按照伸缩组中健康实例的平均 CPU 使用率作为自动伸缩模式中是否需要扩缩容的依据。
  • 支持设置伸缩策略的最大实例数量,避免因 CPU 使用率过高,无限制扩容伸缩组内实例数量,如集群虚拟机被攻击等。
  • 支持设置伸缩策略的最小实例数量,避免因 CPU 使率过低而导致伸缩组中实例数量为 0 ,导致业务中断或服务停止等问题。
  • 支持设置伸缩策略的缩容策略,即限制一个伸缩组内的实例只允许扩容,不允许缩容。
  • 支持用户查看伸缩组的伸缩日志和已添加至伸缩组的实例信息,用于查看自动伸缩组所有执行动作及原因,方便用户对伸缩组集群业务进行维护。
  • 支持用户启用或禁用一个伸缩组,伸缩组禁用后即为不可用状态,将不会在触发伸缩策略执行实例伸缩和健康检查,禁用伸缩组不影响伸缩组中已存在实例的正常运行。
  • 提供伸缩组中所有实例的平均 CPU 使用率监控数据,并可通过告警模板对监控数据进行告警配置,在使用率过高而触发扩缩容时,为用户发送告警邮件。

支持弹性伸缩与负载均衡进行关联,通过将伸缩组中的实例添加至负载均衡的监听器中,为伸缩组中的虚拟机业务提供负载均衡服务,同时通过监听器的健康检查机制,判断伸缩组中所有实例的业务健康状况,自动剔除业务不健康的实例并新增健康实例到业务集群。

4.10 定时器

4.10.1 概述

定时器(Scheduler)是平台为用户提供自动化任务功能,可用于定期执行一系列任务的,如创建快照。可在指定的周期重复执行,也可仅执行一次,且每个任务支持多个资源批量操作。

4.10.2 功能特性

  • 支持定时创建快照,即实现硬盘的自动快照,同时支持为多个硬盘批量创建定时快照任务。
  • 支持选择自动快照的保留数量,默认为10,可选范围为 1-20,即用户可以根据设定的定时器策略,保留自动快照的数量,超过此数量则会删除最早创建的自动快照,保证最新快照能创建成功。
  • 支持单次和重复执行定时任务,重复执行支持每天、每周、每月的指定时间执行任务。
  • 每天支持单小时或每个小时进行定时任务的执行操作。
  • 每周支持星期一至星期日单小时或每个小时进行定时任务的执行操作。
  • 每月支持每一天单小时或每个小时进行定时任务的执行操作。
  • 平台会保存定时器执行的任务列表及执行结果记录,支持用户在定时器中查看每个任务的执行记录。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/125819.html

相关文章

  • 打通本地部署和公有,混合架构让“鱼”和“熊掌”兼得(一)

    ...扛下超大的业务流量,又希望能够压缩整体的支出成本。解决方案将本地环境与公有连通组成混合架构,实现对本地环境计算能力的快速扩展。构建混合架构需要先连通网络,以便实现跨平台的数据库写请求、组件调用等...

    Tecode 评论0 收藏0
  • 打通本地部署和公有,混合架构让“鱼”和“熊掌”兼得(一)

    ...短板。混合架构的三种形态(架构图:UCloud混合架构解决方案)如上图所示,混合架构的形态一般包括:一些特定行业用户基于合规、制度的要求,业务不采用公有方式,可选择独立采购硬件服务器或租用IDC的方式,存...

    Tecode 评论0 收藏0
  • UCloudStack为什么这么“轻”?

    ...可编程白盒交换机的UXR网络架构平台、用户数据隐私保护解决方案等都是典型的例子。上三部曲现在再谈企业上,已经不是上或不上的抉择,而是具体采取什么样的策略、方法或解决方案。不同的企业由于历史原因、需求的...

    ky0ncheng 评论0 收藏0
  • 私有部署-UCloudStack私有部署之虚拟机

    虚拟机是 UCloudStack 平台的核心服务,提供可随时扩展的计算能力服务,包括 CPU 、内存、操作系统等最基础的计算组件,并与网络、磁盘等服务结合提供完整的计算环境。通过与负载均衡等服务结合共同构建 IT 架构。UCloudStack...

    ernest.wang 评论0 收藏0
  • 私有搭建-私有搭建之存储虚拟化

    ...可靠、高扩展、高安全、易管理且较低成本的虚拟化存储解决方案,同时具有极大可伸缩性。作为平台的核心组成部分,为用户提供多种存储服务及 PB 级数据存储能力,适用于虚拟机、数据库等应用场景,满足关键业务的存...

    ernest.wang 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<