在使用E-MapReduce Hadoop集群时,如果您无法准确的预估大数据计算的波峰和波谷,则可以使用按负载伸缩配置的策略。

前提条件

已新建弹性伸缩机器组,请参见新建弹性伸缩机器组

按负载配置负载伸缩规则

基本信息和成本优化策略的配置,详情请参见管理弹性伸缩

伸缩规则分为扩容规则和缩容规则,本文以扩容规则为例介绍。集群关闭弹性伸缩功能后,所有规则会被清空,再次开启弹性伸缩功能时,需要重新配置伸缩规则。切换伸缩策略时(例如,从按负载伸缩切换到按时间伸缩),原策略下的伸缩规则处于失效状态,不会被触发,但已经扩容的节点会继续保留,不会被释放。弹性伸缩规则-按负载扩容
参数 描述
规则名称 在同一个集群中,伸缩规则名称(包括扩容规则和缩容规则)不允许重复。
集群负载指标 在YARN的负载指标中获取,详细信息请参见Hadoop官方文档

E-MapReduce弹性伸缩指标与YARN负载指标的对应关系如表 1所示。

统计周期 您选定的集群负载指标在一个统计周期内,按照选定的聚合维度(平均值、最大值和最小值),达到触发阈值为一次触发。
统计规则
重复几次后扩容 负载指标聚合后达到阈值触发的次数,达到该次数后触发集群弹性伸缩的动作。
扩容(台) 规则被触发时,集群每次执行增加的Task节点数量。
冷却时间(秒) 每次弹性伸缩动作执行完成,到可以再次进行弹性伸缩的时间间隔。在冷却时间内,即使满足弹性伸缩条件也不会发生弹性伸缩动作。即忽略本次在冷却时间内触发的弹性伸缩动作,直到下一次满足伸缩条件且不在冷却时间内再执行。
表 1. E-MapReduce弹性伸缩指标与YARN负载指标的对应关系
E-MapReduce弹性伸缩指标 所属服务 说明
YARN.AvailableVCores YARN 可供分配的虚拟核数。
YARN.PendingVCores YARN 待分配的虚拟核数。
YARN.AllocatedVCores YARN 已分配的虚拟核数。
YARN.ReservedVCores YARN 预留的虚拟核数。
YARN.AvailableMemory YARN 可供分配的内存量。
YARN.PendingMemory YARN 待分配的内存量。
YARN.AllocatedMemory YARN 已分配的内存量。
YARN.ReservedMemory YARN 预留的内存量。
YARN.AppsRunning YARN 运行中的任务数。
YARN.AppsPending YARN 挂起的任务数。
YARN.AppsKilled YARN 终止的任务数。
YARN.AppsFailed YARN 失败的任务数。
YARN.AppsCompleted YARN 完成的任务数。
YARN.AppsSubmitted YARN 提交的任务数。
YARN.AllocatedContainers YARN 已分配的容器数。
YARN.PendingContainers YARN 待分配的容器数。
YARN.ReservedContainers YARN 预留的容器数。
YARN.MemoryAvailablePrecentage YARN 剩余内存的百分比 (MemoryAvailablePrecentage= AvailableMemory/Total Memory)
YARN.ContainerPendingRatio YARN 待分配的容器数与已分配的容器数的比率 (ContainerPendingRatio = PendingContainers/AllocatedContainers)

配置伸缩规格

弹性伸缩配置可以指定伸缩的节点的硬件规格。您只能在开启弹性伸缩功能时配置,保存后不能更改。如果特殊情况确实需要修改,可以关闭弹性伸缩功能后,再次开启。

  • 系统会根据您选择的vCPU和内存规格,自动匹配出满足条件的实例,并显示在备选实例列表中。您需要选中备选的实例,以便集群按照已选的实例规格进行伸缩。
  • 为避免由于ECS库存不足造成的弹性伸缩失败,您最多可以选择3种ECS实例。
  • 无论是选择高效云盘还是SSD云盘,数据盘最小设置为40GB。