我们有一个在HDFS 2.7.3上运行的Spark流应用程序,Yarn作为资源管理器。运行应用程序时..这两个文件夹
/tmp/hadoop/data/nm-local-dir/filecache
/tmp/hadoop/data/nm-local-dir/filecache
正在填满,因此磁盘.....
因此,根据我的研究发现,在yarn-site.xml中配置这两个属性会有所帮助
<property>
<name>yarn.nodemanager.localizer.cache.cleanup.interval-ms</name>
<value>2000</value>
</property>
<property>
<name>yarn.nodemanager.localizer.cache.target-size-mb</name>
<value>2048</value>
</property>
我已经在每个名称节点和主节点上配置了它们..并在主节点上重新启动纱线..但似乎仍然没有帮助...如果我错过了什么,请告诉我...在进行配置更改时...这是纱线网站.xml
<!-- Site specific YARN configuration properties -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>hdfs-name-node</value>
</property>
<property>
<name>yarn.nodemanager.resource.memory-mb</name>
<value>16384</value>
</property>
<property>
<name>yarn.nodemanager.resource.cpu-vcores</name>
<value>6</value>
</property>
<property>
<name>yarn.scheduler.maximum-allocation-mb</name>
<value>16384</value>
</property>
<property>
<name>yarn.nodemanager.local-dirs</name>
<value>file:///tmp/hadoop/data/nm-local-dir</value>
</property>
<property>
<name>yarn.nodemanager.localizer.cache.cleanup.interval-ms</name>
<value>2000</value>
</property>
<property>
<name>yarn.nodemanager.localizer.cache.target-size-mb</name>
<value>2048</value>
</property>
</configuration>
更新:我尝试使用此属性,但仍然没有清理并且磁盘已满
<property>
<name>yarn.nodemanager.local-dirs</name>
<value>file:///tmp/hadoop/data/nm-local-dir,file:///tmp/hadoop/data/nm-local-dir/filecache,file:///tmp/hadoop/data/nm-local-dir/usercache</value>
</property>
你说文件夹"/tmp/hadoop/data/nm-local-dir/filecache"正在填满,所以应该定期清理。
但是您为清理指定的参数,特别是"yarn.nodemanager.localizer.cache.cleanup.interval-ms"和"yarn.nodemanager.localizer.cache.target-size-mb"适用于"/tmp/hadoop/data/nm-local-dir/filecache",但"yarn.nodemanager.local-dirs"值"file:///tmp/hadoop/data/nm-local-dir"不包括路径中的"filecache"。将值"file:///tmp/hadoop/data/nm-local-dir"固定为"file:///tmp/hadoop/data/nm-local-dir/filecache"。