[英]Setting hadoop.tmp.dir in /tmp
我在Hadoop文檔1中看到hadoop.tmp.dir
的默認值為/tmp/hadoop-${user.name}
但是如果以這種方式進行設置,那么當機器重啟時,是否會丟失數據?
我的意思是,也許我不必在真實的/tmp
設置它,但是我需要在/home/myuser/tmp/hadoop-${user.name}
它?
先感謝您!
添加信息:
我在/ tmp / hadoop-hduser中進行了設置,但是由於電源問題計算機被中斷,今天我收到了以下消息: Call From java.net.UnknownHostException: hduser-machine: hduser-machine to localhost:54310 failed on connection exception: java.net.ConnectException: Connection refused; For more details see: http://wiki.apache.org/hadoop/ConnectionRefused
Call From java.net.UnknownHostException: hduser-machine: hduser-machine to localhost:54310 failed on connection exception: java.net.ConnectException: Connection refused; For more details see: http://wiki.apache.org/hadoop/ConnectionRefused
,我運行了此命令hadoop namenode
並且得到了以下消息: ERROR namenode.NameNode: Failed to start namenode. org.apache.hadoop.hdfs.server.common.InconsistentFSStateException: Directory /tmp/hadoop-hduser/dfs/name is in an inconsistent state: storage directory does not exist or is not accessible.
ERROR namenode.NameNode: Failed to start namenode. org.apache.hadoop.hdfs.server.common.InconsistentFSStateException: Directory /tmp/hadoop-hduser/dfs/name is in an inconsistent state: storage directory does not exist or is not accessible.
而且我認為這是由於/ tmp配置造成的...
默認情況下,Hadoop配置為開箱即用。 為此,所有重要的(非臨時)目錄都指向${hadoop.tmp.dir}
,而${hadoop.tmp.dir}
則指向/tmp
,而/tmp
則存在於所有Linux系統上。
因此,您還需要調整其他重要路徑,請參見hdfs-default.xml :
dfs.namenode.name.dir
dfs.datanode.data.dir
dfs.namenode.checkpoint.dir
它們是單獨的選項,因為在現實環境中,可以在不同的物理存儲設備之間分發臨時和非臨時數據是可行的。 但是,如果設置很小,那么從技術上講是可以的,您可以將${hadoop.tmp.dir}
指向某個持久性(非-/ tmp)位置,而忽略我在上面寫的內容。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.