
# ALM-19000 HBase服务不可用
#### 告警解释
告警模块按120秒周期检测HBase服务状态。当HBase服务不可用时产生该告警。
HBase服务恢复时，告警清除。
#### 告警属性
| 告警ID  | 告警级别 | 是否自动清除 |
|:---|:---|:---|
| 19000 | 紧急   | 是      |
   
#### 告警参数
| 参数名称 | 参数含义       |
|:---|:---|
| 来源   | 产生告警的集群名称。 |
| 服务名  | 产生告警的服务名称。 |
| 角色名  | 产生告警的角色名称。 |
| 主机名  | 产生告警的主机名。  |
   
#### 对系统的影响
无法进行数据读写和创建表等操作。
#### 可能原因
- ZooKeeper服务异常。
- HDFS服务异常。
- HBase服务异常。
- 网络异常。
- 服务配置值修改不正确。
 
#### 处理步骤
**检查ZooKeeper服务状态。**
1. 在FusionInsight Manager的服务列表中，查看ZooKeeper运行状态是否为"良好"。 
   - 是，执行[步骤 5]。
   
   - 否，执行[步骤 2]。
   
   
   
   
2. 在告警列表中，查看是否有"ALM-13000 ZooKeeper服务不可用"告警产生。
   
   - 是，执行[步骤 3]。
   
   - 否，执行[步骤 5]。
   
   
   
   
3. 参考[ALM-13000 ZooKeeper服务不可用](https://support.huaweicloud.com/usermanual-mrs/ALM-13000.html)的处理步骤处理该故障。
4. 等待几分钟后检查本告警是否恢复。 
   - 是，处理完毕。
   
   - 否，执行[步骤 5]。
   
   
   
   
**检查HDFS服务状态。**
5. 在告警列表中，查看是否有"ALM-14000 HDFS服务不可用"告警产生。
   
   - 是，执行[步骤 6]。
   
   - 否，执行[步骤 8]。
   
   
   
   
6. 参考[ALM-14000 HDFS服务不可用](https://support.huaweicloud.com/usermanual-mrs/ALM-14000.html)的处理步骤处理该故障。
7. 等待几分钟后检查本告警是否恢复。 
   - 是，处理完毕。
   
   - 否，执行[步骤 8]。
   
   
   
   
8. 在FusionInsight Manager，选择"集群 \> 服务 \> HDFS"，查看HDFS"安全模式"是否为"ON"。
   
   - 是，执行[步骤 9]。
   
   - 否，执行[步骤 12]。
   
   
   
   
9. 以**root** 用户登录HDFS客户端所在节点，用户密码为安装前用户自定义，请咨询系统管理员。
   
   关于HDFS客户端安装与操作，请参考[使用HDFS客户端](https://support.huaweicloud.com/cmpntguide-lts-mrs/mrs_01_1663.html)。
   执行命令进入客户端安装目录并加载环境变量。
   ```
   cd 客户端安装目录
   ```
   ```
   source bigdata_env
   ```
   如果集群开启了Kerberos认证，要进行安全认证。
   ```
   kinit 具有HDFS操作权限的业务用户名
   ```
   按系统提示输入密码。
   
   
10. 执行以下命令手动退出安全模式。 
    ```
    hdfs dfsadmin -safemode leave
    ```
    
    
11. 等待几分钟后检查本告警是否恢复。 
    - 是，处理完毕。
    
    - 否，执行[步骤 12]。
    
    
    
    
**检查HBase服务状态。**
12. 在FusionInsight Manager，选择"集群 \> 服务 \> HBase"。
13. 查看2个HMaster的状态是否为一主一备。 
    - 是，执行[步骤 15]。
    
    - 否，执行[步骤 14]。
    
    
    
    
14. 单击"实例"，选择非主状态的HMaster实例，单击"更多 \> 重启实例"重启HMaster，再次查看2个HMaster的状态是否为一主一备。
    
    - 是，执行[步骤 15]。
    
    - 否，执行[步骤 21]。
    
    
    ![](https://support.huaweicloud.com/usermanual-mrs/public_sys-resources/notice_3.0-zh-cn.png)
    HMaster重启期间，无法执行表相关操作和访问HBase WebUI页面，数据读写操作可正常进行不受影响。
    
    
15. 选择"集群 \> 服务 \> HBase \> HMaster(主)"，进入HMaster的WebUI页面。
    
    **admin**用户默认不具备其他组件的管理权限，如果访问组件原生界面时出现因权限不足而打不开页面或内容显示不全时，可手动创建具备对应组件管理权限的用户进行登录。
    
    
16. 查看Region Servers下是否存在至少一个RegionServer。 
    - 是，执行[步骤 17]。
    
    - 否，执行[步骤 21]。
    
    
    
    
17. 查看"Tables \> System Tables"，如[图1]，查看该标签的"Table Name"列下是否存在"hbase:meta"、"hbase:namespace"和"hbase:acl"。
    
    - 是，执行[步骤 18]。
    
    - 否，执行[步骤 19]。
      图1HBase系统表   
      ![](https://support.huaweicloud.com/usermanual-mrs/zh-cn_image_0263895846.png "点击放大") 
    
    
    
    
18. 如[图1]，分别单击"hbase:meta"、"hbase:namespace"和"hbase:acl"超链接，查看所有页面是否能正常打开。如果页面能正常打开，说明表都正常。
    
    - 是，执行[步骤 19]。
    
    - 否，执行[步骤 25]。
      ![](https://support.huaweicloud.com/usermanual-mrs/public_sys-resources/note_3.0-zh-cn.png)
      由于普通模式下的HBase默认未开启ACL权限控制，只有在手动开启ACL权限控制后才会存在"hbase:acl"表，需要检查该表，否则不需要检查该表。
      
    
    
    
    
19. 查看HMaster的启动状态。
    
    如[图2]在"Tasks" 下有"RUNNING"的状态表示HMaster正在启动，"State"列有HMaster处于"RUNNING"状态的时间。如[图3]中的"COMPLETE"状态表示HMaster启动完成。
    查看HMaster是否持续了很长一段时间处于"RUNNING"状态。
    图2HMaster正在启动的状态   
    ![](https://support.huaweicloud.com/usermanual-mrs/zh-cn_image_0263895812.png "点击放大")
    图3HMaster启动完成的状态   
    ![](https://support.huaweicloud.com/usermanual-mrs/zh-cn_image_0263895434.png "点击放大")
    - 是，执行[步骤 20]。
    
    - 否，执行[步骤 21]。
    
    
    
    
20. 查看HMaster页面是否有hbase:meta长时间处于"Region in Transition"的状态。
    
    图4Region处于Region in Transition的状态   
    ![](https://support.huaweicloud.com/usermanual-mrs/zh-cn_image_0263895450.png "点击放大")
    - 是，执行[步骤 21]。
    
    - 否，执行[步骤 22]。
    
    
    
    
21. 确认在不影响业务的情况下，登录FusionInsight Manager，选择"集群 \> 服务 \> HBase \> 更多 \> 重启服务"，输入密码，单击"确定"。
    
    - 是，执行[步骤 22]。
    
    - 否，执行[步骤 25]。
    
    
    ![](https://support.huaweicloud.com/usermanual-mrs/public_sys-resources/notice_3.0-zh-cn.png)
    HBase服务重启期间，HBase服务的业务无法使用，包括数据读写、表相关操作、访问HBase WebUI界面等。
    
    
22. 等待几分钟后检查本告警是否恢复。
    
    - 是，处理完毕。
    
    - 否，执行[步骤 25]。
    
    
    
    
**检查HBase相关配置修改是否正确。**
23. 在FusionInsight Manager界面，单击"审计"，在审计页面单击"高级搜索"，单击"操作类型"右侧的![](https://support.huaweicloud.com/usermanual-mrs/zh-cn_image_0000001600137985.png)，选择"保存配置 \> 确定"，再单击"搜索"。
24. 查看搜索结果中"服务"列为与HBase相关的服务，例如ZooKeeper、HDFS、HBase等，历史修改的配置是否可能影响HBase服务状态，[表1]为部分可能影响HBase服务状态的配置：
    
     表1影响HBase服务状态的配置 
    | 参数名称                                       | 可能影响                                                        |
    |:---|:---|
    | GC_OPTS                                    | 内存配置可能存在不合理，需要排查实例进程健康情况。                                   |
    | hbase.rpc.protection                       | 该配置值修改后，未离线重启整个HBase服务，将导致服务内连接认证失败，服务异常。                   |
    | hbase.regionserver.metahandler.count       | 集群Region过多时，该配置过小可能导致Region长时间RIT无法上线。                      |
    | hbase.regionserver.thread.compaction.large | 该配置过大时可能导致节点CPU使用率过高。                                       |
    | hbase.regionserver.thread.compaction.small | 该配置过大时可能导致节点CPU使用率过高。                                       |
    | hbase.coprocessor.master.classes           | 配置中使用了自定义协处理器时，逻辑错误将可能导致服务不可用。                              |
    | hbase.coprocessor.region.classes           | 配置中使用了自定义协处理器时，逻辑错误将可能导致服务不可用。                              |
    | hbase.coprocessor.regionserver.classes     | 配置中使用了自定义协处理器时，逻辑错误将可能导致服务不可用。                              |
    | zookeeper.session.timeout                  | 该配置过小时，HBase连接ZooKeeper超时过快，可能导致HMaster实例和RegionServer反复重启。 |
       
    
    
**检查HMaster和依赖组件之间的网络连接。**
25. 在FusionInsight Manager界面，选择"集群 \> 服务 \> HBase"。
26. 单击"实例"，显示HMaster实例列表，记录"HMaster(主)"行的"管理IP"。
27. 以**omm** 用户通过[步骤 26]获取的IP地址登录主HMaster节点。
28. 执行**ping** 命令，查看主HMaster节点和依赖组件所在主机的网络连接是否正常。（依赖组件包括ZooKeeper、HDFS和Yarn等，获取依赖组件所在主机的IP地址的方式和获取主HMaster的IP地址的方式相同。）
    
    - 是，执行[步骤 31]。
    
    - 否，执行[步骤 29]。
    
    
    
    
29. 联系网络管理员恢复网络。
30. 在告警列表中，查看"HBase服务不可用"告警是否清除。 
    - 是，处理完毕。
    
    - 否，执行[步骤 31]。
    
    
    
    
**收集故障信息。**
31. 在FusionInsight Manager界面，选择"运维 \> 日志 \> 下载"。
32. 在"服务"中勾选待操作集群的如下节点信息。 
    - ZooKeeper
    
    - HDFS
    
    - HBase
    
    
    
    
33. 单击右上角的![](https://support.huaweicloud.com/usermanual-mrs/zh-cn_image_0263895445.png)设置日志收集的"开始时间"和"结束时间"分别为告警产生时间的前后10分钟，单击"下载"。
34. 请联系运维人员，并发送已收集的故障日志信息。
 
#### 告警清除
此告警修复后，系统会自动清除此告警，无需手工清除。
#### 参考信息
无。
