更新时间:2023-03-17 GMT+08:00

ALM-19000 HBase服务不可用

告警解释

告警模块按120秒周期检测HBase服务状态。当HBase服务不可用时产生该告警。

HBase服务恢复时,告警清除。

若集群启用了多实例功能且安装了多个HBase服务,请根据“定位信息”的“服务名”值来确定具体产生告警的HBase服务。例如HBase1服务不可用,则“定位信息”中显示服务名=HBase1,处理步骤中的操作对象也应由HBase调整为HBase1。

告警属性

告警ID

告警级别

是否自动清除

19000

紧急

告警参数

参数名称

参数含义

来源

产生告警的集群名称。

服务名

产生告警的服务名称。

角色名

产生告警的角色名称。

主机名

产生告警的主机名。

对系统的影响

无法进行数据读写和创建表等操作。

可能原因

  • ZooKeeper服务异常。
  • HDFS服务异常。
  • HBase服务异常。
  • 网络异常。

处理步骤

检查ZooKeeper服务状态。

  1. 在FusionInsight Manager的服务列表中,查看ZooKeeper运行状态是否为“良好”。

    • 是,执行5
    • 否,执行2

  2. 在告警列表中,查看是否有“ALM-13000 ZooKeeper服务不可用”告警产生。

    • 是,执行3
    • 否,执行5

  3. 参考“ALM-13000 ZooKeeper服务不可用”的处理步骤处理该故障。
  4. 等待几分钟后检查本告警是否恢复。

    • 是,处理完毕。
    • 否,执行5

检查HDFS服务状态。

  1. 在告警列表中,查看是否有“ALM-14000 HDFS服务不可用”告警产生。

    • 是,执行6
    • 否,执行8

  2. 参考“ALM-14000 HDFS服务不可用”的处理步骤处理该故障。
  3. 等待几分钟后检查本告警是否恢复。

    • 是,处理完毕。
    • 否,执行8

  4. 在FusionInsight Manager,选择“集群 > 待操作集群的名称 > 服务 > HDFS”,查看HDFS“安全模式”是否为“ON”。

    • 是,执行9
    • 否,执行12

  5. root用户登录HDFS客户端。执行cd命令进入客户端安装目录,然后执行source bigdata_env

    如果集群采用安全版本,要进行安全认证。预先向管理员获取hdfs用户的密码,执行kinit hdfs命令,按提示输入密码。

  6. 执行以下命令手动退出安全模式。

    hdfs dfsadmin -safemode leave

  7. 等待几分钟后检查本告警是否恢复。

    • 是,处理完毕。
    • 否,执行12

检查HBase服务状态。

  1. 在FusionInsight Manager,选择“集群 > 待操作集群的名称 > 服务 > HBase”。
  2. 查看2个HMaster的状态是否为一“主”一“备”。

    • 是,执行15
    • 否,执行14

  3. 单击“实例”,选择非主状态的HMaster实例,单击“更多 > 重启实例”重启HMaster,再次查看2个HMaster的状态是否为一“主”一“备”。

    • 是,执行15
    • 否,执行21

  4. 选择“集群 > 待操作集群的名称 > 服务 > HBase > HMaster(主)”,进入HMaster的WebUI页面。

    admin用户默认不具备其他组件的管理权限,如果访问组件原生界面时出现因权限不足而打不开页面或内容显示不全时,可手动创建具备对应组件管理权限的用户进行登录。

  5. 查看Region Servers下是否存在至少一个RegionServer。

    • 是,执行17
    • 否,执行21

  6. 查看“Tables > System Tables”,如图1,查看该标签的“Table Name”列下是否存在“hbase:meta”、“hbase:namespace”和“hbase:acl”。

    • 是,执行18
    • 否,执行19
      图1 HBase系统表

  7. 图1,分别单击“hbase:meta”、“hbase:namespace”和“hbase:acl”超链接,查看所有页面是否能正常打开。如果页面能正常打开,说明表都正常。

    • 是,执行19
    • 否,执行23

      由于普通模式下的HBase默认未开启ACL权限控制,只有在手动开启ACL权限控制后才会存在“hbase:acl”表,需要检查该表,否则不需要检查该表。

  8. 查看HMaster的启动状态。

    图2在“Tasks” 下有“RUNNING”的状态表示HMaster正在启动,“State”列有HMaster处于“RUNNING”状态的时间。如图3中的“COMPLETE”状态表示HMaster启动完成。

    查看HMaster是否持续了很长一段时间处于“RUNNING”状态。

    图2 HMaster正在启动的状态
    图3 HMaster启动完成的状态
    • 是,执行20
    • 否,执行21

  9. 查看HMaster页面是否有hbase:meta长时间处于“Region in Transition”的状态。

    图4 Region处于Region in Transition的状态
    • 是,执行21
    • 否,执行22

  10. 确认在不影响业务的情况下,登录FusionInsight Manager,选择“集群 > 待操作集群的名称 > 服务 > HBase > 更多 > 重启服务”,输入密码,单击“确定”。

    • 是,执行22
    • 否,执行23

  11. 等待几分钟后检查本告警是否恢复。

    • 是,处理完毕。
    • 否,执行23

检查HMaster和依赖组件之间的网络连接。

  1. 在FusionInsight Manager界面,选择“集群 > 待操作集群的名称 > 服务 > HBase”。
  2. 单击“实例”,显示HMaster实例列表,记录“HMaster(主)”行的“管理IP”。
  3. omm用户通过24获取的IP地址登录主HMaster节点。
  4. 执行ping命令,查看主HMaster节点和依赖组件所在主机的网络连接是否正常。(依赖组件包括ZooKeeper、HDFS和Yarn等,获取依赖组件所在主机的IP地址的方式和获取主HMaster的IP地址的方式相同。)

    • 是,执行29
    • 否,执行27

  5. 联系网络管理员恢复网络。
  6. 在告警列表中,查看“HBase服务不可用”告警是否清除。

    • 是,处理完毕。
    • 否,执行29

收集故障信息。

  1. 在FusionInsight Manager界面,选择“运维 > 日志 > 下载”。
  2. 在“服务”中勾选待操作集群的如下节点信息。

    • ZooKeeper
    • HDFS
    • HBase

  3. 单击右上角的设置日志收集的“开始时间”和“结束时间”分别为告警产生时间的前后10分钟,单击“下载”。
  4. 请联系运维人员,并发送已收集的故障日志信息。

告警清除

此告警修复后,系统会自动清除此告警,无需手工清除。

参考信息

无。