通过云监控CloudMonitor实时捕获EMR集群的状态变化

本文涉及的产品
EMR Serverless StarRocks,5000CU*H 48000GB*H
简介: 通过结合CloudMonitor以及FC,可以实时捕获EMR集群的生命周期变化,如集群的创建和停止,扩容和缩容以及其他类型的集群状态变更等。

作者:锦琛@阿里云


引言

开源大数据平台 E-MapReduce(简称“EMR”)是云原生开源大数据平台,向客户提供简单易集成的Hadoop、Hive、Spark、Flink、Presto、ClickHouse、StarRocks、Delta、Hudi等开源大数据计算和存储引擎。


云监控(简称“CloudMonitor”)是一项针对阿里云资源和互联网应用进行监控的服务,为云上用户提供开箱即用的企业级开放型一站式监控解决方案。


函数计算(简称“FC”)是事件驱动的全托管计算服务。使用函数计算,您无需采购与管理服务器等基础设施,只需编写并上传代码或镜像。函数计算为您准备好计算资源,弹性地、可靠地运行任务,并提供日志查询、性能监控和报警等功能。


通过结合CloudMonitor以及FC,可以实时捕获EMR集群的生命周期变化,如集群的创建和停止,扩容和缩容以及其他类型的集群状态变更等。


本文演示如何捕获EMR集群状态变更(我们以杭州区域为例)并发送到当前常用的“钉钉”手机客户端,其他服务场景请酌情参考。


关键字

E-MapReduce,CloudMonitor,函数计算,事件通知,钉钉


处理流程

这是我们设计的EMR实时状态在各个产品之间传递链路图,从图上可以看出,当EMR发生状态变更时(如启动集群,停止集群,创建节点组,对节点组进行扩缩容操作等)系统会产生事件,事件消息送到CMS后会触发告警,CMS支持函数计算FC,告警触发后会触发我们准备好的FC函数,从而解析JSON格式的消息内容并发送给“钉钉”手机客户端(客户也可以基于公司内部的聊天工具进行集成,或者定义下一步的操作,从而实现基于事件的自动化告警处理和运维等,关于这一块,本文章暂不做延展说明)。

image.png


钉钉配置

配置钉钉群机器人必须使用电脑版的钉钉,登录电脑版钉钉创建钉钉群(此过程略,例如创建后的群名为!!!APM告警),然后点击群右上角的“设置”,然后点击“智能群助手”,如下图所示:

image.png

然后选择“添加机器人”,如下图所示:image.png

添加关键字“E-MapR”,其他关键字可自行添加,如下图所示:

image.png

在接下来的页面中会出现一个Webhook调用的URL,点击“复制”,类似如下

https://oapi.dingtalk.com/robot/send?access_token=aabbccdd

后面我们设置环境变量的时候将用到这一串aabbccdd

image.png


函数计算配置

打开函数计算FC的控制台(点击这里),选择左侧菜单的“服务与函数”,然后在右边的窗口中选择“创建服务”,如下图所示:

image.pngimage.png

创建后点击进入服务,随后点击右侧窗口“创建函数”,如下图所示:

image.png

选择“通过zip包上传代码”,其中代码的详细地址如下(也可以手工下载此文件,然后从本地上传):

https://emr.oss-cn-hangzhou.aliyuncs.com/best_practice/cms/function_ding.zip

上传后,在代码TOKEN处填写创建的钉钉机器人token,如下图所示:

image.png

保存后点击部署代码,如果没有报错,表示部署成功。


云监控配置

打开云监控的控制台(点击这里),选择左侧菜单的“系统事件”,然后在右边的窗口中选择“创建报警规则”,如下图所示:

image.png

弹出创建窗口后,在产品类型处填写“E-MapReduce”,事件名称填写“节点组扩缩容成功、集群创建成功、集群释放成功、节点组升配成功”为例,资源范围选择“全部资源”(也可以选择应用分组选择您想要监控的集群id),选择函数计算并选择之前配置的服务和函数名,如下图所示:

image.png

点击确认后,完成配置,并确保规则生效,如图所示:

image.png


测试验证

打开EMR的控制台(点击这里),部署一个DataLake的EMR集群即可(过程略)。


正确返回

因为订阅了创建事件,我们的手机客户端就可以收到类似如下的消息提醒(集群状态 STARTING-> RUNNING),如下图所示:

image.png


错误诊断

如果启动集群过程中并没有收到对应的提醒,请首先确认对应的环境,查看函数计算中函数调用日志有没有错误,如下图所示:

image.png


扩展

经过上面的文档指引和动手实验,我们基于EMR集群的生命周期管理(如集群创建,停止,集群扩缩,缩容等)都会有对应提醒,其实只需要修改文件“function_ding.zip”里面对应的解析的JSON文件的内容,这个流程可以复制到别的场景,例如ECS的相关操作。


除了钉钉告警之外,还有更多的用法,比如将数据写入oss,写入数据库等等,期待您的使用。





钉钉扫码进群,了解更多详情

image.png

相关实践学习
基于云监控实现的监控系统
通过阿里云云监控功能给非阿里云主机安装监控插件,从而实现对非阿里云主机的各项指标进行监控和管理,在配置报警规则和报警人的情况下,能对特定的场景做出报警反应通知到报警人的手机上。
目录
相关文章
|
存储 SQL 分布式计算
阿里云全托管flink-vvp平台hudi connector实践(基于emr集群oss-hdfs存储)
阿里云全托管flink-vvp平台hudi sink connector实践,本文数据湖hudi基于阿里云E-MapReduce产品,以云对象存储oss-hdfs作为存储
|
3月前
|
分布式计算 测试技术 调度
EMR Remote Shuffle Service实践问题之集群中落地阿里云RSS如何解决
EMR Remote Shuffle Service实践问题之集群中落地阿里云RSS如何解决
|
SQL 消息中间件 分布式计算
基于阿里云 CloudMonitor云监控自定义监控大盘对 EMR 自定义监控实践
本文旨在分享 EMR 平台大数据服务基于阿里云 CloudMonitor 的监控实践,给客户提供除了 EMR 平台默认监控以外,自建监控方式,适用于统一多个阿里云服务的监控监控场景。
818 2
基于阿里云 CloudMonitor云监控自定义监控大盘对 EMR 自定义监控实践
|
弹性计算 资源调度 运维
视频-《 EMR 集群运维与排障》|学习笔记(四)
快速学习视频-《 EMR 集群运维与排障》
201 0
视频-《 EMR 集群运维与排障》|学习笔记(四)
|
分布式计算 Hadoop 大数据
第3期:自建Hadoop集群 VS 阿里云EMR,差距居然这么大?
本期将为大家带来开源大数据平台E-MapReduce与自建Hadoop集群对比,一起来看看吧~
899 1
第3期:自建Hadoop集群 VS 阿里云EMR,差距居然这么大?
|
分布式计算 Hadoop 大数据
自建Hadoop集群 VS 阿里云EMR,差距居然这么大?
本期将为大家带来开源大数据平台E-MapReduce与自建Hadoop集群对比,一起来看看吧~
1059 0
自建Hadoop集群 VS 阿里云EMR,差距居然这么大?
|
SQL Java Apache
【阿里云EMR实战篇】以EMR测试集群版本为例,详解 Flink SQL Client 集成 Hive 使用步骤
以测试集群版本为例(EMR-4.4.1)—— Flink SQL Client 集成 Hive 使用文档
【阿里云EMR实战篇】以EMR测试集群版本为例,详解 Flink SQL Client 集成 Hive 使用步骤
|
消息中间件 弹性计算 分布式计算
EMR按集群费用分摊 -- 传播标签实践
E-MapReduce是构建于云服务器ECS之上,利用开源大数据生态系统,包括Apache Hadoop、Apache Spark、Kafka、Storm,为用户提供集群、作业、数据等管理一站式大数据处理分析业务。如果对于集群维度进行分账,包括集群里的实例及存储。
1367 0
EMR按集群费用分摊 -- 传播标签实践
|
消息中间件 SQL 分布式计算
EMR集群安全认证和授权管理
介绍EMR高安全集群如何使用Kerberos和Apache Ranger进行鉴权和访问授权管理
EMR集群安全认证和授权管理
|
弹性计算 分布式计算 安全
自建 Hadoop 数据迁移到阿里云EMR集群
客户在 IDC 或者公有云环境自建 Hadoop 集群,数据集中保存在 HDFS文件系统用于数据分析任务。客户在决定上云之后,会将自建 Hadoop 集群的数据迁移到阿里云自建 Hadoop 集群或者 EMR 集群。本实践方案提供安全和低成本的 HDFS 数据迁移方案。
自建 Hadoop 数据迁移到阿里云EMR集群