hadoop不使用配置文件?

mepcadol  于 2021-05-29  发布在  Hadoop
关注(0)|答案(2)|浏览(435)

我正在工作中部署hadoop,几天来我一直在排除故障。昨天它工作得很好,但今天发生了一些奇怪的事情。
我在core-site.xml中设置了hadoop.tmp.dir以及hdfs的其他目录(hdfs site.xml中的datanode、namenode和secondarynamenode)。但是今天,当我格式化fs时,它在/tmp中创建所有文件,而不是在/usr/local/hadoop/tmp中创建文件,我已经配置了这个文件。

$ bin/hdfs namenode -format
[...]    
INFO common.Storage: Storage directory /tmp/hadoop-hadoop/dfs/name has been successfully formatted.
[...]

core-site.xml文件

<property>
      <name>hadoop.tmp.dir</name>                
      <value>/usr/local/hadoop/tmp</value>
</property>

hdfs-site.xml文件

<property>
        <name>dfs.namenode.name.dir</name>
        <value>file:/usr/local/hadoop/hdfs/namenode</value>
   </property>

   <property>
        <name>dfs.namenode.checkpoint.dir</name>
        <value>/usr/local/hadoop/hdfs/secondname</value>
   </property>

   <property>
        <name>dfs.datanode.data.dir</name>
        <value>/usr/local/hadoop/hdfs/datanode</value>
   </property>

有人知道发生了什么事吗?
谢谢!

4ioopgfo

4ioopgfo1#

确保此目录存在并具有足够的权限
将路径指定为 file:///usr/local/hadoop/tmp

uplii1fm

uplii1fm2#

发现了问题,真的很尴尬。我的hadoop用户将bash作为默认sh,但直到我在命令行上显式地执行了“bash”之后,才正确加载配置文件。用printenv命令看到了。

相关问题