背景:

最近在公司的测试服务器上做性能测试, Spark Streaming Job,总是运行一段时间之后就挂掉了。看日志似乎是HDFS出现了问题,数据写不进去了。

但是看了看每台服务器的硬盘,明明都还有空间,最少的都有80%。不管三七二十一,先清一清数据, 把程序启动起来继续跑,并配置了crontab,定时清理磁盘上的日志和临时文件。

当时的预感是YARN上有某种磁盘保护措施,当磁盘使用率达到80%的时候,停止写入。

 

发现:

今天终于找到了这几个参数:

yarn.nodemanager.disk-health-checker.min-healthy-disks:NodeManager上最少保证健康磁盘比例,当健康磁盘比例低于该值时,NodeManager不会再接收和启动新的Container,默认值是0.25,表示25%;

yarn.nodemanager.disk-health-checker.max-disk-utilization-per-disk-percentage:一块磁盘的最高使用率,当一块磁盘的使用率超过该值时,则认为该盘为坏盘,不再使用该盘,默认是100,表示100%,可以适当调低;

yarn.nodemanager.disk-health-checker.min-free-space-per-disk-mb:一块磁盘最少保证剩余空间大小,当某块磁盘剩余空间低于该值时,将不再使用该盘,默认是0,表示0MB。

 

posted on 2017-12-30 10:59  robynn  阅读(561)  评论(0编辑  收藏  举报