我正在用Hbase和Hbase Thrift Server运行Cloudera CDH4。Thrift服务器一天会崩溃好几次。
在/var/log/hbase/hbase-hbase-thrift-myserver.out,中,它是这样的:
#
# java.lang.OutOfMemoryError: Java heap space
# -XX:OnOutOfMemoryError="kill -9 %p"
# Executing /bin/sh -c "kill -9 8151"...在/var/log/hbase/hbase-hbase-thrift-myserver.log,中,文件末尾没有错误消息。只有许多调试消息表明其中一个节点正在缓存特定的文件。
我找不到Hbase Thrift服务器的任何配置选项。/etc/中没有明显的文件。只需/etc/ Hbase /conf及其Hbase文件。
对调试有什么想法吗?
发布于 2013-02-13 10:02:27
使用/etc/hbase/conf/hbase-env.sh,我增加了堆大小,这解决了崩溃问题。
# The maximum amount of heap to use, in MB. Default is 1000.
export HBASE_HEAPSIZE=8000感谢Harsh J on the CDH Users mailing list帮我弄清楚。正如他所指出的,我没有日志消息表明可能正在发生kill -9:
确实,如果在崩溃前的日志尾部中缺少关闭处理程序消息,则可能存在通过
处理程序传递给进程的kill -9。
发布于 2013-02-06 06:21:25
我们的HBase Thrift设置也遇到了同样的问题,最后我们使用了一个watchdog脚本,如果Thrift没有运行,它会重新启动它。
您是否一天多次重创您的HBase服务器?这可能会导致这样的结果。没有办法绕过这一点,每次使用Thrift似乎都会占用(或泄漏)大量内存,因此您需要一个watchdog脚本。
如果看门狗脚本负载太大,您可以使用一个简单的cron作业在频繁的时间间隔内重新启动Thrift,以确保它保持运行。
下面的cron每两个小时重新启动一次Thrift。
0 */2 * * * hbase-daemon.sh restart thrift发布于 2016-06-09 06:18:35
https://stackoverflow.com/questions/14596702
复制相似问题