使用均衡分布策略部署高可用计算集群

弹性伸缩可以快速交付一个计算集群,基于均衡分布策略自动将ECS实例分散在多个可用区,并实时检测ECS实例的运行状况,确保集群的高可用性。本教程介绍如何使用弹性伸缩实现均衡分布ECS实例,部署高可用计算集群,并结合使用抢占式实例来降低资源成本。

适用场景

场景描述

对于分布式大数据计算、人工智能训练等场景, 在业务高峰期可能会临时需要大量的计算资源,需要快速创建一个高可用的计算集群。

例如:某在线广告提供商应用机器学习精准投放广告,在业务高峰期会临时需要大量计算资源。如果手动批量创建ECS实例来组成计算集群,可能存在手动操作耗时长、库存不足导致ECS实例创建失败、单可用区故障导致ECS实例临时停止服务等问题,存在一定的业务受损风险。

解决方案

通过弹性伸缩实现自动批量创建ECS实例,同时使用均衡分布策略来实现将ECS实例均衡分散在多个可用区,并结合使用抢占式实例来降低成本。

image

方案优势

使用弹性伸缩部署高可用计算集群具有以下优势:

  • 零运维成本

    使用弹性伸缩可以实现自动扩缩容ECS实例,整个过程无需人工干预。

  • 天然高可用

    均衡分布策略可以实现自动分散部署ECS实例,避免单一可用区因库存不足等原因导致扩容失败,同时默认开启的实例健康检查功能可以确保伸缩组内的ECS实例均处于可用状态。

  • 超高性价比

    计算节点使用抢占式实例,可以节约资源成本。

操作步骤

说明
  • 请根据您的业务架构评估业务模块,为需要部署高可用集群的业务模块创建伸缩组。

  • 请提前准备好已部署业务应用的自定义镜像,并在配置伸缩配置时选择对应的自定义镜像,确保自动创建出的ECS实例符合要求。具体操作,请参见使用实例创建自定义镜像

  1. 登录弹性伸缩控制台

  2. 创建伸缩组。

    1. 在左侧导航栏中,单击伸缩组管理

    2. 在顶部菜单栏处,选择地域。

    3. 在页面左上角,单击创建伸缩组

    4. 通过表单创建页签下,完成伸缩组配置,然后单击创建

      本文示例采用以下配置,未提及的配置项保持默认。更多关于伸缩组的配置说明,请参见创建伸缩组

      均衡分布.png

      配置项

      示例

      描述

      伸缩组名称

      test

      输入伸缩组名称。格式要求请参考界面提示。

      伸缩组类型

      ECS

      选择ECS,表示伸缩组内的实例类型为ECS实例。

      组内实例配置信息来源

      从零开始创建

      先不指定自动创建实例的模板。伸缩组创建完成后,您需要继续创建伸缩配置。

      组内最小实例数

      100

      设置伸缩组内实例数量的下限。当前实例数量低于下限时,伸缩组会自动添加实例,使得伸缩组内的实例数量等于下限。

      组内最大实例数

      120

      设置伸缩组内实例数量的上限。当前实例数量超过上限时,伸缩组会自动移出实例,使得伸缩组内的实例数量等于上限。

      展开高级配置 > 扩缩容策略

      均衡分布策略

      选择均衡分布策略。该策略需要选择多个交换机才能生效。

      专有网络

      vpc-2zeghwzptn5zii0w7****

      选择伸缩组内ECS实例所属的专有网络。

      选择交换机

      vsw-2ze23nqzig8inprou****

      vsw-2zeet2ksvw7f14ryz****

      vsw-2ze94pjtfuj9vaymf****

      选择伸缩组内ECS实例所属的交换机。

      请选择多个交换机,配合均衡分布策略来保证ECS实例分散部署在不同可用区,同时提升扩容成功率。

  3. 创建伸缩配置。

    1. 伸缩组管理页面,找到新创建的伸缩组,单击伸缩组ID。

    2. 在页面上方,单击实例配置来源页签。

    3. 伸缩配置页签下,单击创建伸缩配置

    4. 创建伸缩配置页面,完成相关参数配置,单击创建

      本示例中采用以下配置,未提及的配置项保持默认。更多关于伸缩配置的配置项说明,请参见创建伸缩配置(ECS实例)

      区域

      配置项

      示例

      描述

      基础信息

      伸缩配置名称

      test

      输入伸缩配置的名称。格式要求请参考界面提示。

      付费模式

      抢占式实例

      弹性伸缩服务免费,但您需要为扩容时所增加的ECS实例付费。本文采用抢占式实例作为示例。更多信息,请参见计费概述

      实例和镜像

      实例配置方式

      指定实例属性

      选择指定实例属性方式来配置ECS实例的规格需求。

      指定实例属性组合

      2 vCPU,4 GiB内存,企业级

      设置ECS实例的vCPU和内存需求。

      选择镜像

      test

      选择用于部署ECS实例的镜像。

      实际业务场景请选用您已部署应用的自定义镜像。

      存储

      系统盘

      ESSD云盘,40 GiB,PL0

      为ECS实例选择系统盘。请根据业务需要进行设置。

      网络和安全组

      安全组

      sg-bp18kz60mefsicfg****

      选择您提前创建好的安全组。如需创建安全组,请参见创建安全组

      管理设置

      登录凭证

      创建后设置

      ECS实例创建完成后,再手动为ECS实例设置密码。

  4. 按照界面提示,在创建伸缩配置后,启用伸缩配置和伸缩组。

执行结果

由于伸缩组的最小实例数配置为100,因此启用伸缩组后,伸缩组会自动在所选可用区中,均衡部署100台ECS实例来组成计算集群,并从以下方面来保证集群的高可用性,降低资源成本。

  • 当单可用区中因库存不足等原因引发问题时,会自动尝试在其他可用区中部署ECS实例,对业务应用的影响有限。

  • 伸缩组在抢占式实例被回收后会自动创建新的抢占式实例,并自动移出不健康状态的ECS实例并创建新的ECS实例。

后续操作

如果由于库存不足等原因导致ECS实例没有均衡分布在各个可用区,您可以进行再均衡操作来平衡资源的可用区分布。具体操作,请参见ECS实例再均衡分布