如何为在yarn上运行的spark作业更改java.io.tmpdir

时间:2018-03-16 09:46:15

标签: hadoop apache-spark yarn

如何更改在YARN上运行的Hadoop 3群集的java.io.tmpdir文件夹?

默认情况下,它会得到类似/tmp/***的内容,但我的/tmp文件系统对于EveryYNN Job将在那里写的所有内容都很小。

有没有办法改变它?

我还在hadoop.tmp.dir中设置core-site.xml,但看起来,它并没有真正使用过。

2 个答案:

答案 0 :(得分:0)

也许它是What should be hadoop.tmp.dir ?的副本。另外,浏览/ etc / hadoop / conf中的所有.conf并搜索tmp,看看是否有任何硬编码。同时指定:

  • 您是否看到(任何)文件被创建@您指定为hadoop.tmp.dir。
  • 应用更改后,@ / tmp / **形成了哪种文件模式。

我还注意到hive在/ tmp中创建文件。所以,你也可以看一下@hive-site.xml。与您正在使用的任何其他生态系统产品类似。

答案 1 :(得分:0)

我在yarn-site.xml中配置了yarn.nodemanager.local-dirs属性并重新启动了群集。之后火花停止使用/ tmp文件系统和使用的目录,在yarn.nodemanager.local-dirs中配置。 spark executors的java.io.tmpdir属性也设置为yarn.nodemanager.local-dirs属性中定义的目录。

<property>
      <name>yarn.nodemanager.local-dirs</name>
      <value>/somepath1,/anotherpath2</value>
</property>