本文为您介绍如何创建事件报警规则和调试系统事件,以便在E-MapReduce发生系统异常时,您能及时接收报警通知并处理异常。

前提条件

如果事件报警规则需要作用于指定应用分组的实例上,则请确保您已创建应用分组,且已将资源添加至该应用分组,操作方法请参见创建应用分组添加资源至应用分组

创建事件报警规则

本文为创建系统事件报警规则,详情请参见创建系统事件报警规则。如果需要创建自定义事件报警规则,详情请参见创建自定义事件报警规则

  1. 登录云监控控制台
  2. 在左侧导航栏,选择事件监控 > 系统事件
  3. 单击事件报警规则页签。
  4. 单击创建报警规则
  5. 创建/修改事件报警页面,设置事件报警规则和报警方式。
    参数 描述
    报警规则名称 事件报警规则的名称。
    产品类型 选择E-MapReduce。
    事件类型 事件报警规则的事件类型。
    事件等级 事件报警规则的事件等级。
    事件名称 事件报警规则的事件名称。
    联系人组 事件报警规则的报警联系人组。
  6. 单击确定

调试系统事件报警规则

创建事件报警规则后,您可以使用系统事件的调试功能,验证系统事件报警规则中设置的消息服务队列、函数计算、URL回调和日志服务是否能正常被触发。

  1. 登录云监控控制台
  2. 在左侧导航栏,选择事件监控 > 系统事件
  3. 单击事件报警规则页签。
  4. 单击系统事件报警规则操作列的调试
  5. 创建事件调试页面,选择待调试事件,根据实际情况修改调试内容。
  6. 单击确定
    云监控根据内容发送一个报警事件,触发报警规则。

系统事件

服务名 事件ID 事件名称(中文) 事件名称(英文) 事件含义
HDFS EMR-330200049 NameNode发生主备切换 Maintenance:HDFS.NameNode.ActiveStandbySwitch NameNode发生主备切换。

处理方式:需要判断主节点无法提供服务超时的原因,可能原因包括GC问题和block report storm等。

EMR-350202005
EMR-350200012 NameNode发生OOM Maintenance:HDFS.NameNode.OOM NameNode发生OOM。

处理方式:您可以在HDFS服务的配置页面,调大hadoop_namenode_heapsize的值,以增加内存。

EMR-350200005 HDFS发生目录格式化 Maintenance:HDFS.NameNode.DirectoryFormatted NameNode元数据目录被删除。
处理方式:请购买专家服务处理。
警告 禁止重启HDFS服务,以防数据丢失。
EMR-350200006 NameNode加载FsImage异常 Maintenance:HDFS.NameNode.LoadFsImageException NameNode读取FSImage异常。

处理方式:可能是由于云盘数据异常导致的。

EMR-350200008 NameNode异常退出 Maintenance:HDFS.NameNode.ExitUnexpectely NameNode节点异常退出。

处理方式:查看NameNode节点异常退出的日志,根据日志处理。

EMR-350200015 HDFS写JournalNode超时 Maintenance:HDFS.NameNode.WriteToJournalNodeTimeout NameNode写入JournalNode超时。

处理方式:检查JournalNode服务是否正常,同时检查JournalNode所在机器与网络情况是否有异常流量。

EMR-350200014 NameNode资源不足 Maintenance:HDFS.NameNode.ResourceLow NameNode节点磁盘空间不足,导致NameNode进入安全模式。

处理方式:检查Master节点/mnt/disk1的磁盘空间,是否有日志过大异常,如果没有异常,可以扩容磁盘。

EMR-350200007 NameNode同步日志失败 Maintenance:HDFS.NameNode.SyncJournalFailed NameNode操作JournalNode sync超时。

处理方式:检查JournalNode服务是否正常,同时检查JournalNode所在机器与网络情况是否有异常流量。

EMR-350201008 DataNode OOM不能创建新的Native线程 Maintenance:HDFS.DataNode.OOM.UnableToCreateNewNativeThread DataNode无法创建新的进程。

处理方式:通常是异常任务在该DataNode创建了大量线程,导致了DataNode无法创建新的线程,因此可以在Master节点通过root用户执行命令ps -eo nlwp,pid,args --sort nlwp |tail -n 5, 找到使用线程数最大的5个进程,并进行分析。

EMR-350202006 ZKFC监控NameNode健康状态时发生传输层异常事件 Maintenance:HDFS.ZKFC.TransportLevelExceptionInMonitorHealth ZKFC检查NameNode健康度超时。

处理方式:检查NameNode超时的原因,可能原因包括NameNode内存大小、 GC或者是block report storm。如果无异常,集群规模较大,可以适当调大ha.health-monitor.rpc-timeout.ms配置,防止超时。

EMR-350202002 ZKFC不能连接ZookeeperQuorum Maintenance:HDFS.ZKFC.UnableToConnectToQuorum ZKFC无法连接ZooKeeper。

处理方式:查看ZooKeeper服务,检查是否有异常连接没有释放导致的连接过多,以至于ZKFC无法连接ZooKeeper。

EMR-350202001 ZKFC不能启动 Maintenance:HDFS.ZKFC.UnableToStartZKFC 无法启动ZKFC服务。

处理方式:查看ZKFC的日志,根据日志处理。

EMR-250201009 JavaHeapSpace引起OOM错误 Maintenance:HDFS.DataNode.OomForJavaHeapSpace DataNode发生OOM。

处理方式:您可以在HDFS服务的配置页面,调大的hadoop_datanode_heapsize值,以增加内存。

EMR-250201004 DataNode进程异常退出 Maintenance:HDFS.DataNode.ExitUnexpected DataNode异常退出。

处理方式:查看导致DataNode服务异常退出的日志,根据日志处理。

YARN EMR-330300053 ResourceManager发生主备切换 Maintenance:YARN.ResourceManager.ActiveStandbySwitch 高可用集群ResourceManager发生主备切换。

处理方式:检查ResourceManager主备切换原因,可能原因包括GC问题、Master节点资源不足或内核错误等。

EMR-350300015 YARN服务中ZKRMStateStore不能连接ZK Maintenance:YARN.ResourceManager.ZKRMStateStoreCannotConnectZK ResourceManager ZkClient无法连接ZooKeeper。

处理方式:检查ZooKeeper服务,是否由于异常连接没有释放导致无法连接。

EMR-350300011 ResourceManager启动错误 Maintenance:YARN.ResourceManager.ErrorInStarting ResourceManager启动错误。

处理方式:检查RM启动报错的原因,排查是否是由于错误配置导致的。

EMR-350300010 ResourceManager切换到Active模式发生错误 Maintenance:YARN.ResourceManager.ErrorInTransitionToActiveMode ResourceManager切换到Active模式时发生错误。

处理方式:查看切换报错的日志,根据日志处理。

EMR-350300004 ResourceManager无效配置问题:不能找到RM_HA_ID Maintenance:YARN.ResourceManager.InvalidConf.CannotFoundRM_HA_ID ResourceManager错误配置导致找不到HA ID。

处理方式:在配置页面检查配置,是否由于修改配置导致了RM ID异常。

EMR-350300013 ResourceManager异常退出 Maintenance:YARN.ResourceManager.ExitUnexpected ResourceManager异常退出。

处理方式:查看导致ResourceManager服务异常退出的日志,根据日志处理。

EMR-350302004 JobHistory服务启动错误 Maintenance:YARN.JobHistory.StartingError JobHistory服务启动错误。

处理方式:查看导致JobHistory服务启动错误的日志,根据日志处理。

EMR-350302003 JobHistory服务异常退出 Maintenance:YARN.JobHistory.ExitUnExpectedly JobHistory服务异常退出。

处理方式:查看导致JobHistory服务异常退出的日志,根据日志处理。

EMR-350303004 TimelineServer启动错误 Maintenance:YARN.TimelineServer.ErrorInStarting Timeline Server启动错误。

处理方式:查看导致Timeline Server服务启动错误的日志,根据日志处理。

EMR-350303003 TimelineServer异常退出 Maintenance:YARN.TimelineServer.ExitUnexpectedly Timeline Server异常退出。

处理方式:查看导致Timeline Server服务异常退出的日志,根据日志处理。

EMR-250300001 ResourceManager发生UnkownHostException异常 Maintenance:YARN.ResourceManager.UnkownHostException ResourceManager对某些节点无法解析。

处理方式:检查是否使用了DNS服务,是否由于DNS服务不稳定导致。如果没有使用DNS服务,检查是否/etc/hosts文件配置了对应的host。

EMR-350301010 磁盘错误导致不健康的NodeManager Maintenance:YARN.NodeManager.UnHealthyForDiskFailed 磁盘错误导致不健康的NodeManager。

处理方式:检查NodeManager是否存在磁盘写满情况。

EMR-250301006 NodeManager启动RebootingNodeStatusUpdater失败 Maintenance:YARN.NodeManager.ErrorRebootingNodeStatusUpdater NodeManager重启NodeStatusUpdater失败。

处理方式:检查NodeManager重连日志,检查ResourceManager服务。

EMR-250301015 NodeManager发生OOM Maintenance:YARN.NodeManager.OOM NodeManager发生OOM。

处理方式:检查NodeManager OOM的原因,排查是否有配置错误导致的内存泄露。

HIVE EMR-350400016 HiveMetaStore发生JDBC通信异常 Maintenance:HIVE.HiveMetaStore.JdbcCommunicationException Hive MetaStore发生JDBC通信异常。

处理方式:检查元数据连接,使用本地MySql客户端连接进行测试。

EMR-350400010 HiveMetaStore数据库通信链路失败 Maintenance:HIVE.HiveMetaStore.DataBaseCommunicationLinkFailure Hive MetaStore数据库连接异常,提示通信链路失败。

处理方式:检查元数据连接,使用本地MySql客户端连接进行测试。

EMR-350400009 HiveMetaStore数据库连接失败 Maintenance:HIVE.HiveMetaStore.DataBaseConnectionFailed Hive MetaStore数据库连接失败。

处理方式:检查元数据连接,使用本地MySql客户端连接进行测试。

EMR-350400014 HiveMetaStore发生OOM Maintenance:HIVE.HiveMetaStore.OomOccured Hive MetaStore发生OOM。

处理方式:您可以在Hive服务的配置页面,调大hive_meastore_heapsize的值,以增加内存。

EMR-350400015 HiveMetastore数据库磁盘空间用尽 Maintenance:HIVE.HiveMetaStore.DataBaseDiskQuotaUsedup 元存储连接超过限制。

处理方式:如果使用本地MySql或者RDS作为元数据存储,需要手动提升限制大小。

EMR-350400006 HiveMetastore超过最大查询数 Maintenance:HIVE.HiveMetaStore.MaxQuestionsExceeded 元数据存储连接超过限制。

处理方式:如果使用本地MySql或者RDS作为元数据存储,需要手动提升限制大小。

EMR-350400007 HiveMetastore超过最大更新数 Maintenance:HIVE.HiveMetaStore.MaxUpdatesExceeded 元数据存储连接超过限制。

处理方式:如果使用本地MySql或者RDS作为元数据存储,需要手动提升限制大小。

EMR-350400005 HiveMetastore超过最大用户连接数 Maintenance:HIVE.HiveMetaStore.MaxUserConnectionExceeded 元数据存储连接超过限制。

处理方式:如果使用本地MySql或者RDS作为元数据存储,需要手动提升限制大小。

EMR-350400002 HiveMetastore配置文件解析错误 Maintenance:HIVE.HiveMetaStore.ParseConfError 配置异常导致解析错误。

处理方式:通常是由于配置异常导致解析错误,因此请检查Hivemetastore-site.xml里面的配置,排查配置历史信息并修复问题。

EMR-350400008 HiveMetastore请求的表丢失 Maintenance:HIVE.HiveMetaStore.RequiredTableMissing Hive MetaStore的元存储表丢失。

处理方式:检查Metastore版本和元数据存储的Hive版本是否一致,并查看元数据是否损坏。

EMR-350401013 hiveServer2发生OOM Maintenance:HIVE.HiveServer2.HiveServer2OOM HiveServer2发生OOM。

处理方式:您可以在Hive服务的配置页面,调大hive_server2_heapsize的值,以增加内存。

EMR-350401007 不能通过提供的URIs连接到hiveServer2 Maintenance:HIVE.HiveServer2.CannotConnectByAnyURIsProvided HiveServer2无法连接Hive MetaStore。

处理方式:检查MetaStore服务。

EMR-350401004 hiveServer2连接ZK超时 Maintenance:HIVE.HiveServer2.ConnectToZkTimeout HiveServer2连接Zookeeper超时。

处理方式:检查ZooKeeper服务。

EMR-350401008 hiveServer2启动错误 Maintenance:HIVE.HiveServer2.ErrorStartingHiveServer HiveServer2启动异常。

处理方式:查看启动异常的日志,定位问题原因并处理。

EMR-350401006 hiveServer2初始化MetaStore客户端失败 Maintenance:HIVE.HiveServer2.FailedInitMetaStoreClient HiveServer2初始化MetaStore客户端失败。

处理方式:检查HiveServer2的异常日志,定位无法初始化问题。

EMR-350401005 hiveServer2连接MetaStoreServer失败 Maintenance:HIVE.HiveServer2.FailedToConnectToMetaStoreServer HiveServer2连接不上MetaStoreServer。

处理方式:检查Metastore服务

HOST EMR-350100001 主机/var/log/message有OOM异常 Maintenance:HOST.OomFoundInVarLogMessage 主机/var/log/message中存在OOM异常日志。

处理方式:通常是因为主机内存不足而终止某进程。因此请检查内存分配是否合理,如果内存偏小,请增加内存。

EMR-250100006 主机CPU卡顿 Maintenance:HOST.CpuStuck Linux内核报警存在CPU Stuck。

处理方式:检查是否存在异常的任务长时间占据CPU。

SparkHIstory EMR-350900001 SparkHistory发生OOM Maintenance:SPARK.SparkHistory.OomOccured Spark History服务发生OOM。

处理方式:您可以在Spark服务的配置页面,调大spark_history_daemon_memory的值,以增加内存。

Zookeeper EMR-350500001 ZOOKEEPER不能运行QuorumServer Maintenance:ZOOKEEPER.UnableToRunQuorumServer Zookeeper无法启动。

处理方式:检查异常日志和配置文件,确认是否ZNode过多导致的OOM。

EMR-230500059 Zookeeper发生主从切换 Maintenance:ZOOKEEPER.LeaderFollowerSwitch ZooKeeper发生主备节点切换。

处理方式:请检查切换原因,根据实际情况确认是否重启ZooKeeper服务。