大数据集群JVM调优&内存管理

大数据集群的工作,很大一部分精力花在了调整集群的jvm参数上面。由于现在的开源大数据产品无论是hadoop、hbase、yarn还是spark等等,都运行于jvm环境中,因此而产生的垃圾收集问题是影响集群可用性的是工作中的重点。

本文首先归纳一些常见的因jvm垃圾收集导致的常见集群问题,这些归纳来自于平时工作的总结,欢迎和大家一起交流:

1、Namenode的堆内存配置过小导致频繁产生full GC导致namenode宕机,在hadoop中,数据的写入&读取经由namenode,所以namenode的jvm内存需要足够多,尤其是在出现大量数据流动的场景中。

      此外Hadoop集群中的文件数越多,Namenode的内存压力越大,可以通过archive归档命令定期合并一些目录以减少namenode的压力。hadoop不适于存储海量小文件的原因也在于此。

2、DataNode的内存可以相应调小。

3、NodeManager充当shuffle任务的server端,内存应该调大,否则会出现任务连接错误,日志Too Many fetch failures.Failing the attempt。

4、ResourceManager垃圾回收时间过长导致与zk的连接超时,出现active RM的频繁切换,此过程中会导致一些MR任务失败。

5、HRegionServer的堆内存配置过少,HBase的读写直接与RegionServer交换,Regionserver中预留了数据读写的缓存,入Memstore&blockCache等等,因此留给RegionServer的堆内存应足够其缓存数据库中的数据。

JVM的参数调整视应用环境、集群环境、业务背景的不同而不同,因此,很难统一出一个适用的标准,更多的是

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值