CDH配置报警服务

来源:互联网 发布:文字办公软件 编辑:程序博客网 时间:2024/06/10 21:17

CDH配置报警服务

  • CDH配置报警服务
    • 邮件报警服务设置
    • 脚本执行报警设置
    • 查看配置是否成功

在Cloudera Hadoop(CDH)中,提供了三种报警服务,分别是邮件报警提醒,脚本执行方式报警以及配置[SNMP服务](http://blog.csdn.net/shanzhizi/article/details/11606767)。 我们自己的系统中设置了邮件报警服务和脚本执行报警服务。

 编辑

邮件报警服务设置

Cloudera Manager提供了邮件报警设置。在浏览器中输入 http://server:7180 打开Cloudera Manager,打开Cloudera Management Service -> 配置,在左侧筛选器中选择 alert publisher,填写入邮箱配置信息即可。

 编辑

脚本执行报警设置

Cloudera Manager提供了用户自定义脚本报警服务,用户可以通过脚本自定义报警方式。在配置脚本成功后,报警信息触发后,CM将报警信息以json的形式发送到用户自定脚本进行处理。比如使用脚本触发短信服务,将报警信息以短信的形式发送到监控人的手机中。
CM里面的配置如下:

首先编写sh脚本alert.sh,示例如下:

#!/usr/bin/env bashCLUSTER=`cat $1 | python /opt/cloudera/alert.py`echo $CLUSTER

python文件alert.py内容

#!/usr/bin/env python#coding: utf8import sysimport jsonreload(sys)sys.setdefaultencoding('utf-8')myfile = sys.stdindata = json.load(myfile)for i in range(0, len(data)):    alert = data[i]["body"]["alert"]["attributes"]    alertSummary = alert["ALERT_SUMMARY"]    for summary in alertSummary:        print "ALERT_SUMMARY: ",        print summary    healthResult = alert["HEALTH_TEST_RESULTS"]    for result in healthResult:        print "content: ",        print result["content"]        print "testName: ",        print result["testName"]    print "" 

保存文件,将文件放在安装cm的服务器中,我们放置的位置是/opt/cloudera,然后执行下面的命令

$ sudo chown cloudera-scm:cloudera-scm /opt/cloudera/alert.sh /opt/cloudera/alert.py$ sudo chmod u+rx /opt/cloudera/alert.sh /opt/cloudera/alert.py

在浏览器中输入 http://server:7180 打开Cloudera Manager,打开Cloudera Management Service -> 配置,在左侧筛选器中选择 alert publisher,可以看到自定义警报脚本项,将alert.py路径写入,保存即可。

 编辑

查看配置是否成功

clouder manager 会将所有的报警信息写入/var/log/cloudera-scm-alertpublisher/*.log.out文件中,同时邮件和脚本服务是否执行也会在这个文件中看到,因此可以监听这个文件查看配置的服务是否成功。

原创粉丝点击