
# ALM-16008 Hive服务进程非堆内存使用超出阈值
#### 告警解释
系统每30秒周期性检测Hive非堆内存使用率，并把实际的Hive非堆内存使用率和阈值相比较。当Hive非堆内存使用率超出阈值（默认为最大非堆内存的95%）时产生该告警。
用户可通过"运维 \> 告警 \> 阈值设置 \> *待操作集群的名称* \> Hive"修改阈值。
当Hive非堆内存使用率小于或等于阈值时，告警恢复。
#### 告警属性
| 告警ID  | 告警级别 | 是否自动清除 |
|:---|:---|:---|
| 16008 | 重要   | 是      |
   
#### 告警参数
| 参数名称              | 参数含义                  |
|:---|:---|
| 来源                | 产生告警的集群名称。            |
| 服务名               | 产生告警的服务名称。            |
| 角色名               | 产生告警的角色名称。            |
| 主机名               | 产生告警的主机名。             |
| Trigger Condition | 系统当前指标取值满足自定义的告警设置条件。 |
   
#### 对系统的影响
Hive非堆内存使用率过高，会影响Hive任务运行的性能，甚至造成内存溢出导致Hive服务不可用。
#### 可能原因
该节点Hive实例非堆内存使用量过大，或分配的非堆内存不合理，导致使用率超过阈值。
#### 处理步骤
**检查非堆内存使用率。**
1. 在FusionInsight Manager首页，选择"运维 \> 告警 \> 告警"，选中"告警ID"为"16008"的告警，查看"定位信息"中的角色名并确定实例的IP地址。 
   - 告警上报的角色是HiveServer，执行[步骤 2]。
   
   - 告警上报的角色是MetaStore，执行[步骤 3]。
   
   
   
   
2. 在FusionInsight Manager首页，选择"集群 \> *待操作集群的名称* \> 服务 \> Hive \> 实例"，单击告警上报的HiveServer，进入实例"概览"页面，单击图表区域右上角的下拉菜单，选择"定制 \> CPU和内存"，勾选"HiveServer内存使用率统计" ，单击"确定"，查看HiveServer进程使用的非堆内存是否已达到HiveServer进程设定的最大非堆内存的阈值（默认95%）。
   
   - 是，执行[步骤 4]。
   
   - 否，执行[步骤 7]。
   
   
   图1勾选HiveServer内存使用率统计   
   ![](https://support.huaweicloud.com/usermanual-mrs/zh-cn_image_0000001210371981.png "点击放大")
   
   
3. 在FusionInsight Manager首页，选择"集群 \> *待操作集群的名称* \> 服务 \> Hive \> 实例"，单击告警上报的MetaStore，进入实例"概览"页面，单击图表区域右上角的下拉菜单，选择"定制 \> CPU和内存"，勾选"MetaStore内存使用率统计" ，单击"确定"，查看MetaStore进程使用的非堆内存是否已达到MetaStore进程设定的最大非堆内存的阈值（默认95%）。
   
   - 是，执行[步骤 4]。
   
   - 否，执行[步骤 7]。
   
   
   图2勾选MetaStore内存使用率统计   
   ![](https://support.huaweicloud.com/usermanual-mrs/zh-cn_image_0000001209893467.png "点击放大")
   
   
4. 在FusionInsight Manager首页，选择"集群 \> *待操作集群的名称* \> 服务 \> Hive \> 配置"，选择"全部配置"， 选择"HiveServer/MetaStore \> JVM"，将"HIVE_GC_OPTS/METASTORE_GC_OPTS"参数中"-XX:MaxMetaspaceSize"的值根据如下建议进行调整，并单击"保存"。
   
   ![](https://support.huaweicloud.com/usermanual-mrs/public_sys-resources/note_3.0-zh-cn.png)
   1. HiveServer的GC参数配置建议
      - 建议将"-XX:MaxMetaspaceSize"值设置成为"-Xmx"大小的1/8，比如："-Xmx"设置为2G时，"-XX:MaxMetaspaceSize"设置为256M；"-Xmx"设置为4G时，"-XX:MaxMetaspaceSize"设置为512M。
       
   
   2. MetaServer的GC参数配置建议
      - 建议将"-XX:MaxMetaspaceSize"值设置成为"-Xmx"大小的1/8，比如："-Xmx"设置为2G时，"-XX:MaxMetaspaceSize"设置为256M；"-Xmx"设置为4G时，"-XX:MaxMetaspaceSize"设置为512M。
       
    
   
   
5. 选择"更多 \> 重启服务"重启服务。 
   ![](https://support.huaweicloud.com/usermanual-mrs/public_sys-resources/warning_3.0-zh-cn.png)
   在Hive服务重启期间，正在重启的实例无法对外提供服务，且对应实例上正在执行的SQL任务可能失败。
   
   
6. 观察界面告警是否清除。 
   - 是，处理完毕。
   
   - 否，执行[步骤 7]。
   
   
   
   
**收集故障信息。**
7. 在FusionInsight Manager首页，选择"运维 \> 日志 \> 下载"。
8. 在"服务"中勾选待操作集群的"Hive"。
9. 单击右上角的![](https://support.huaweicloud.com/usermanual-mrs/zh-cn_image_0263895589.png)设置日志收集的"开始时间"和"结束时间"，分别为告警产生时间的前后10分钟，单击"下载"。
10. 请联系运维人员，并发送已收集的故障日志信息。
 
#### 告警清除
此告警修复后，系统会自动清除此告警，无需手工清除。
#### 参考信息
无。
