暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

0105.C CDP升级后Hive Metastore Server宕机(OOM)处理记录

rundba 2021-12-02
2731


0. ENV

CentOS 7.6;

CM 7.4.4;

CDP 7.1.6。


1. 现象

测试环境CDP7.1.4升级到CDP7.1.6后,hive运行数小时后,HMS服务异常。在11月26日 18:16:26  HMS服务异常宕机,当前hive不可用。


HMS服务异常,其它服务正常:


HMS服务异常宕机:



2. 处理过程

2.1 metastore进程查看

登录每台HMS主机,查看metastore进程是否存在:

[root@namenode01 hive]# ps -ef|grep metastore
root 121490 106525 0 15:13 pts/0 00:00:00 grep --color=auto

metastore各HMS节点metastore进程均不存在。


2.2 网络验证

从HS2主机到HMS主机ping验证

HS2有两台主机:namenode01、namenode02,到对方HMS主机进行ping测试,确保网络畅通。

[in namenode01]:
[root@namenode01 ~]# ping namenode02
PING namenode02.rundba.com (192.168.80.123) 56(84) bytes of data.
64 bytes from namenode02.rundba.com (192.168.80.123): icmp_seq=1 ttl=64 time=0.138 ms


2.3 收集堆栈跟踪-metastore进程存在时

如果HMS进程存在,收集HMS jstack文件进一步判断。

CM -> Hive -> 实例 -> 点击“Hive Metastore Server”连接 -> 操作 -> 收集堆栈跟踪(jstack).

近一步查看jstack文件,当前metastore进程不存在。


2.4 HMS服务端口是否正常--metastore进程存在时

从HS2验证HMS服务端口是否正常

HS2有两台主机:namenode01、namenode02。

[in namenode01]:
[root@namenode01 ~]# telnet namenode02.rundba.com 9083
Trying 192.168.80.123...
telnet: connect to address 192.168.80.123: Connection refused


2.5 分析metastore日志

进入到hive日志目录

[root@namenode01 hive]# cd /var/log/hive/

查看所有HMS节点在故障时间所有hive metastore日志(非HIVESERVER2日志)

[root@namenode01 hive]# ls -l *HIVEMETASTORE*
-rw-r--r--. 1 hive hive 8163265 Nov 27 17:19 hadoop-cmf-hive-HIVEMETASTORE-namenode01.rundba.com.log.out
-rw-r--r--. 1 hive hive 8029833 Nov 22 12:50 hadoop-cmf-hive-HIVEMETASTORE-namenode01.log.out


查看日志,截止报错时间,无更多可用参考


2.6 分析HMS process日志文件


1) 查看HMS process日志文件

[root@namenode02 ~]# cd /var/run/cloudera-scm-agent/process/

2) 查看HMS process目录

[root@namenode02 process]# ls -ldt *HIVEMETASTORE*
drwxr-x--x. 4 hive hive 500 Nov 27 15:45 653-hive-HIVEMETASTORE
drwxr-x--x. 3 hive hive 200 Nov 27 15:45 657-HIVE-HIVEMETASTORE-jstack
drwxr-x--x. 4 hive hive 500 Nov 26 16:43 651-hive-HIVEMETASTORE
drwxr-x--x. 4 hive hive 500 Nov 23 11:12 639-hive-HIVEMETASTORE
drwxr-x--x. 4 hive hive 500 Nov 22 15:21 610-hive-HIVEMETASTORE
drwxr-x--x. 4 hive hive 480 Nov 22 13:44 548-hive-HIVEMETASTORE
drwxr-x--x. 4 hive hive 400 Nov 22 13:27 508-hive-HIVEMETASTORE
drwxr-x--x. 4 hive hive 460 Nov 22 13:02 421-hive-HIVEMETASTORE
drwxr-x--x. 4 hive hive 420 Nov 22 10:28 321-hive-HIVEMETASTORE
drwxr-x--x. 4 hive hive 400 Oct 25 16:30 259-hive-HIVEMETASTORE
drwxr-x--x. 4 hive hive 400 Oct 25 16:08 235-hive-HIVEMETASTORE
drwxr-x--x. 4 hive hive 400 Oct 25 15:46 185-hive-HIVEMETASTORE
drwxr-x--x. 4 hive hive 420 Oct 25 14:27 164-hive-HIVEMETASTORE
drwxr-x--x. 4 hive hive 400 Oct 22 18:04 100-hive-HIVEMETASTORE
drwxr-x--x. 4 hive hive 400 Oct 22 17:19 90-hive-HIVEMETASTORE
drwxr-x--x. 4 hive hive 400 Oct 22 17:17 60-hive-HIVEMETASTORE


3) 通过接近报错时间查看日志

从HMS process日志来看, 由于java的OOM(out of memory)执行了HMS kill进程,导致了HMS宕机。

[root@yw-namenode02 process]# view 653-hive-HIVEMETASTORE/logs/stdout.log
...
2021-11-26 16:43:28: Starting Hive Metastore Server
java.lang.OutOfMemoryError: Java heap space
Dumping heap to /tmp/hive_hive-HIVEMETASTORE-0146b4aa7626ce9e27ceae0c630ddefa_pid35634.hprof ...
Heap dump file created [91207946 bytes in 0.683 secs]
#
# java.lang.OutOfMemoryError: Java heap space
# -XX:OnOutOfMemoryError="/opt/cloudera/cm-agent/service/common/killparent.sh"
# Executing /bin/sh -c "/opt/cloudera/cm-agent/service/common/killparent.sh"...


说明:

/opt/cloudera/cm-agent/service/common/killparent.sh为HMS相关的进程,可通过已启动的HMS环境,使用ps -ef | grep metastore查看。


3. 问题解决

调大HMS的 Java Heap Size值,来避免OOM发生。

CM -> Hive -> Configuration -> Java Heap Size of Hive Metastore Server in Bytes(搜索java) ,调大为如8G,保存,重启hive服务。

注:Java Heap Size of Hive Metastore Server in Bytes默认为50M。



重启后,HMS恢复正常,运行并观察一段时间,再无报错。


4. 小结

文中通过HMS服务异常,通过服务、网络、metastore日志、HMS process log逐层分析,定位到问题所在,最终解决问题,作为类似问题处理参考。



::rundba

wx: landnow




                                  长按二维码                                   


  欢迎加入>>国产DB学习交流群


       

                      请注明:来自rundba,加入国产DB学习交流群                

             


文章转载自rundba,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论