在使用Databricks数据洞察集群时,如果您无法准确的预估大数据计算的波峰和波谷,则可以使用按负载伸缩配置的策略。在Databricks数据洞察中开启弹性伸缩时,如果选择按负载配置伸缩规则,则根据以下说明配置相关参数即可。详细配置步骤请参见开启并配置弹性伸缩。
配置伸缩实例数
最大实例数:弹性伸缩的Task节点上限。一旦达到上限,即使满足弹性伸缩的规则,也不会继续进行弹性伸缩的动作。目前可设置的弹性伸缩最大上限为500。
最小实例数:弹性伸缩的Task节点下限。
如果弹性伸缩规则中设置的增加后的Task节点总数小于最小节点数,那么在首次执行时,集群会以最小节点数为准,伸缩至最小节点数。例如,当前Task节点数为0,设置弹性扩容规则为每天零点动态添加1个节点,但最小节点数为3。那么系统在第一天的零点时会添加至3个节点,此后每天零点动态添加1个节点,以满足最小节点数的要求。
如果弹性伸缩规则中设置减少后的Task节点总数小于最小节点数,那么集群不会进行弹性伸缩操作。
配置负载伸缩规则
伸缩规则分为扩容规则和缩容规则。集群关闭弹性伸缩功能后,所有规则会被清空,再次开启弹性伸缩功能时,需要重新配置伸缩规则。切换伸缩策略时(例如从按负载伸缩切换到按时间伸缩),原策略下的伸缩规则处于失效状态,不会被触发,但已经扩容的节点会继续保留,不会被释放。
规则名称:在同一个集群中,伸缩规则名称(包括扩容规则和缩容规则)不允许重复。
集群负载指标:在YARN的负载指标中获取,具体可以参见Hadoop官方文档。 Databricks数据洞察弹性伸缩指标与YARN负载指标的对应关系如下:
E-MapReduce弹性伸缩指标 | YARN Metrics | 说明 |
---|---|---|
YARN.AvailableVCores | availableVirtualCores | The number of available virtual cores |
YARN.PendingVCores | pendingVirtualCores | The number of pending virtual cores,Databricks数据洞察补充采集 |
YARN.AllocatedVCores | allocatedVirtualCores | The number of allocated virtual cores |
YARN.ReservedVCores | reservedVirtualCores | The number of reserved virtual cores |
YARN.AvailableMemory | availableMB | The amount of memory available in MB |
YARN.PendingMemory | pendingMB | The amount of memory pending in MB,Databricks数据洞察补充采集 |
YARN.AllocatedMemory | allocatedMB | The amount of memory allocated in MB |
YARN.ReservedMemory | reservedMB | The amount of memory reserved in MB |
YARN.AppsRunning | appsRunning | The number of applications running |
YARN.AppsPending | appsPending | The number of applications pending |
YARN.AppsKilled | appsKilled | The number of applications killed |
YARN.AppsFailed | appsFailed | The number of applications failed |
YARN.AppsCompleted | appsCompleted | The number of applications completed |
YARN.AppsSubmitted | appsSubmitted | The number of applications submitted |
YARN.AllocatedContainers | containersAllocated | The number of containers allocated |
YARN.PendingContainers | containersPending | The number of containers pending |
YARN.ReservedContainers | containersReserved | The number of containers reserved |
统计周期与统计规则:您选定的集群负载指标在一个统计周期内,按照选定的聚合维度(平均值、最大值、最小值),达到触发阈值为一次触发。
重复几次后扩容或缩容:负载指标聚合后达到阈值触发的次数,达到该次数后触发集群弹性伸缩的动作。
扩容或缩容(台):规则被触发时,集群每次执行增加或减少的Task节点数量。
冷却时间(秒):每次弹性伸缩动作执行完成,到可以再次进行弹性伸缩的时间间隔。在冷却时间内,即使满足弹性伸缩条件也不会发生弹性伸缩动作。即忽略本次在冷却时间内触发的弹性伸缩动作,直到下一次满足伸缩条件且不在冷却时间内再执行。
配置伸缩规格
弹性伸缩配置可以指定伸缩的节点的硬件规格。您只能在开启弹性伸缩功能时配置,保存后不能更改。如果特殊情况确实需要修改,可以关闭弹性伸缩功能后,再次开启。
选择vCPU和内存规格时,系统会根据您的选择自动匹配出满足条件的实例,并显示在备选实例列表中。您需要选中备选的实例,以便集群按照已选的实例规格进行伸缩。
为避免由于ECS库存不足造成的弹性伸缩失败,您最多可以选择3种ECS实例。
无论是选择高效云盘还是SSD云盘,数据盘最小设置为40GB。