集群运维与监控

本文主要介绍Databricks数据洞察在集群维度的监控与告警能力。

背景信息

目前Databricks数据洞察主要采用阿里云监控服务,完整对接DBR指标体系,实现多维度、多实例、多时段的指标图表监控,用户可以根据业务情况,灵活自定义告警规则,摆脱底层的束缚,根据平台产品层面的能力,高效感知问题,运维业务。

用户可以登录Databricks数据洞察监控,选择对应的集群属地集群名称,即可开启集群运维应用,示例如下图:

Databricks数据洞察监控示意图

具体内容可参考云监控文档

指标监控

目前默认的指标可以分为两个维度,即机器节点基本指标和Hadoop-queue相关指标。

后者可以总结为YARN中队列的相关指标内容,下文均称为队列指标,将分别给出详细定义。

机器节点基本指标

这部分指标主要围绕CPU、内存、磁盘、网络等监控项,满足主机的基本运维需求。云监控支持的监控项,请参见监控项说明

队列监控指标

该部分指标通过YARN当中的Resource。Manager统计获取,通过JMX的方式进行暴露,平台选取了较为重要的指标进行监控,直接描述了集群的资源与作业情况。

具体指标项(均为分钟级)见下表:

监控项名称

监控项含义

单位

Dimensions

Statistics

说明

ActiveUsers

Active的用户数量

count

用户维度、集群维度

Maximum、Minimum、Average

AggregateContainersAllocated

总共分配的container个数

count

用户维度、集群维度

Average

AggregateContainersReleased

总共释放的container个数

count

用户维度、集群维度

Average

AllocatedContainers

每分钟内分配的container个数

count/分钟

用户维度、集群维度

Average

描述该集群资源现状下的调度能力状况

AppsCompleted

已完成的作业数

count

用户维度、集群维度

Average

AppsFailed

失败的作业数

count

用户维度、集群维度

Average

AppsKilled

被杀死的作业数

count

用户维度、集群维度

Average

AppsPending

等待的作业数

count

用户维度、集群维度

Average

描述资源不足的作业数

AppsRunning

运行中的作业数

count

用户维度、集群维度

Average

AppsSubmitted

提交的作业数

count

用户维度、集群维度

Maximum、Minimum、Average

AvailableMB

当前队列可用的内存大小

Mbyte

用户维度、集群维度

Maximum、Minimum、Average

描述当前集群的可用内存

AvailableVCores

当前队列可用的vCores个数

count

用户维度、集群维度

Maximum、Minimum、Average

描述当前集群的可用vCore

PendingContainers

等待的container个数

count

用户维度、集群维度

Maximum、Minimum、Average

ReservedContainers

保留的container个数

count

用户维度、集群维度

Average

描述预分配的container数

自定义指标配置

为了支持用户更加具有自由度的指标监控,平台提供了自定义指标,步骤如下:

  1. 首先用户需要自定义创建大盘,创建成功后点击自定大盘名称,如下图:

创建大盘

2. 其次添加业务所需的自定义指标项,点击右上的添加图表,可从不同图表形式描述自定义指标,如下图:云产品监控上图给出了“队列中pending的内存量”指标的基本添加方式,用户可以根据自己的需求进行配置。

这部分的更详细的操作可以参考管理自定义大盘

告警配置

当用户需要对指标及时感知,可以配置具体的告警规则。若资源指标的监控达到报警条件,云监控会自动按配置的告警信息进行反馈,高效辅助用户排查问题,进行运维。

报警规则配置

用户可以通过在Databricks的云产品监控页面,选择创建新的报警规则。

本文给出一个配置示例,当用户希望感知集群作业资源状态时,可以针对队列指标进行告警规则配置,其中队列指标中AppsPending就可以描述上述需求,步骤如下:

  1. 登录Databricks数据洞察监控,选择对应的集群属地集群名称,点击右上角的创建报警规则

创建报警规则入口图

2.创建具体的报警规则,可以看到如下左图中的配置项,我们先关注最核心的增加规则配置,点击后产生如右图的具体指标告警规则配置,选取AppsPending作为监控指标,配置不同程度的指标阈值,这部分的具体值需要参考业务规模和具体的容忍度,图中值仅参考。

创建报警规则1创建报警规则2

  1. 其他告警配置,可根据业务要求配置,详细参数描述请参见创建阈值报警规则。配置报警联系人详情请参见创建报警联系人或报警联系组。创建成功后,点击右上角的报警规则列表,可以查询到已创建的报警规则,如下图:

报警规则列表

4.当告警异常发生时,首先在云监控的报警列表当中可以发现异常的告警规则项,如下图:指标报警符合具体的报警规则时,会进行相应的渠道反馈,如下图:

短信报警反馈邮箱报警图