[問題]hadoop遇到問題總結

hadoop遇到問題總結 - 蝸牛123 - 博客園
http://www.cnblogs.com/itgg168/archive/2012/11/24/2786088.html

問題一

hadoop fs -ls時出現錯誤如下:

hadoop fs -ls

11/08/31 22:51:39 INFO ipc.Client: Retrying connect to server: localhost/127.0.0.1:8020. Already tried 0 time(s).
Bad connection to FS. command aborted.

解決方案:

  1. 格式化namenode:

hadoop namenode -format

  1. 重新啟動hadoop

sh stop-all.sh

sh start-all.sh

  1. 查看后臺進程

jps

13508 NameNode
11008 SecondaryNameNode
14393 Jps
11096 JobTracker
此時namenode啟動

  1. 運行

hadoop fs -ls

12/01/31 14:04:39 INFO security.Groups: Group mapping impl=org.apache.hadoop.security.ShellBasedUnixGroupsMapping; cacheTimeout=300000
12/01/31 14:04:39 WARN conf.Configuration: mapred.task.id is deprecated. Instead, use mapreduce.task.attempt.id
Found 1 items
drwxr-xr-x - root supergroup 0 2012-01-31 13:57 /user/root/test

問題二# hadoop fs -put ../conf input 時出現錯誤如下:
12/01/31 16:01:25 INFO security.Groups: Group mapping impl=org.apache.hadoop.security.ShellBasedUnixGroupsMapping; cacheTimeout=300000
12/01/31 16:01:25 WARN conf.Configuration: mapred.task.id is deprecated. Instead, use mapreduce.task.attempt.id
12/01/31 16:01:26 WARN hdfs.DFSClient: DataStreamer Exception: java.io.IOException: File /user/root/input/ssl-server.xml.example could only be replicated to 0 nodes, instead of 1
put: File /user/root/input/ssl-server.xml.example could only be replicated to 0 nodes, instead of 1
12/01/31 16:01:26 ERROR hdfs.DFSClient: Exception closing file /user/root/input/ssl-server.xml.example : java.io.IOException: File /user/root/input/ssl-server.xml.example could only be replicated to 0 nodes, instead of 1
解決方案:
這個問題是由于沒有添加節點的原因,也就是說需要先啟動namenode,再啟動datanode,然后啟動jobtracker和tasktracker。這樣就不會存在這個問題了。 目前解決辦法是分別啟動節點#hadoop-daemon.sh start namenode #$hadoop-daemon.sh start datanode

  1. 重新啟動namenode

hadoop-daemon.sh stop namenode

stopping namenode

hadoop-daemon.sh start namenode

starting namenode, logging to /usr/hadoop-0.21.0/bin/../logs/hadoop-root-namenode-www.keli.com.out
DEPRECATED: Use of this script to execute hdfs command is deprecated.
Instead use the hdfs command for it.

  1. 重新啟動datanode

hadoop-daemon.sh stop datanode

stopping datanode

hadoop-daemon.sh start datanode

starting datanode, logging to /usr/hadoop-0.21.0/bin/../logs/hadoop-root-datanode-www.keli.com.out
DEPRECATED: Use of this script to execute hdfs command is deprecated.
Instead use the hdfs command for it.

  1. 切換到hadoop的bin目錄

cd /usr/hadoop-0.21.0/bin/

  1. 瀏覽hdfs目錄
    [root@www bin]# hadoop fs -ls
    12/01/31 16:09:45 INFO security.Groups: Group mapping impl=org.apache.hadoop.security.ShellBasedUnixGroupsMapping; cacheTimeout=300000
    12/01/31 16:09:45 WARN conf.Configuration: mapred.task.id is deprecated. Instead, use mapreduce.task.attempt.id
    Found 4 items
    drwxr-xr-x - root supergroup 0 2012-01-31 16:01 /user/root/input
    drwxr-xr-x - root supergroup 0 2012-01-31 15:24 /user/root/test
    -rw-r--r-- 1 root supergroup 0 2012-01-31 14:37 /user/root/test-in
    drwxr-xr-x - root supergroup 0 2012-01-31 14:32 /user/root/test1

  2. 刪除hdfs中的input目錄
    [root@www bin]# hadoop fs -rmr input
    12/01/31 16:10:09 INFO security.Groups: Group mapping impl=org.apache.hadoop.security.ShellBasedUnixGroupsMapping; cacheTimeout=300000
    12/01/31 16:10:09 WARN conf.Configuration: mapred.task.id is deprecated. Instead, use mapreduce.task.attempt.id
    Deleted hdfs://m106:9000/user/root/input

  3. 上傳數據到hdfs中的input目錄
    [root@www bin]# hadoop fs -put ../conf input
    12/01/31 16:10:14 INFO security.Groups: Group mapping impl=org.apache.hadoop.security.ShellBasedUnixGroupsMapping; cacheTimeout=300000
    12/01/31 16:10:14 WARN conf.Configuration: mapred.task.id is deprecated. Instead, use mapreduce.task.attempt.id

  4. 瀏覽input目錄,檢查已上傳的數據
    [root@www bin]# hadoop fs -ls input
    12/01/31 16:10:21 INFO security.Groups: Group mapping impl=org.apache.hadoop.security.ShellBasedUnixGroupsMapping; cacheTimeout=300000
    12/01/31 16:10:21 WARN conf.Configuration: mapred.task.id is deprecated. Instead, use mapreduce.task.attempt.id
    Found 16 items
    -rw-r--r-- 1 root supergroup 3426 2012-01-31 16:10 /user/root/input/capacity-scheduler.xml
    -rw-r--r-- 1 root supergroup 1335 2012-01-31 16:10 /user/root/input/configuration.xsl
    -rw-r--r-- 1 root supergroup 757 2012-01-31 16:10 /user/root/input/core-site.xml
    -rw-r--r-- 1 root supergroup 321 2012-01-31 16:10 /user/root/input/fair-scheduler.xml
    -rw-r--r-- 1 root supergroup 2237 2012-01-31 16:10 /user/root/input/hadoop-env.sh
    -rw-r--r-- 1 root supergroup 1650 2012-01-31 16:10 /user/root/input/hadoop-metrics.properties
    -rw-r--r-- 1 root supergroup 4644 2012-01-31 16:10 /user/root/input/hadoop-policy.xml
    -rw-r--r-- 1 root supergroup 252 2012-01-31 16:10 /user/root/input/hdfs-site.xml
    -rw-r--r-- 1 root supergroup 4141 2012-01-31 16:10 /user/root/input/log4j.properties
    -rw-r--r-- 1 root supergroup 2997 2012-01-31 16:10 /user/root/input/mapred-queues.xml
    -rw-r--r-- 1 root supergroup 430 2012-01-31 16:10 /user/root/input/mapred-site.xml
    -rw-r--r-- 1 root supergroup 25 2012-01-31 16:10 /user/root/input/masters
    -rw-r--r-- 1 root supergroup 26 2012-01-31 16:10 /user/root/input/slaves
    -rw-r--r-- 1 root supergroup 1243 2012-01-31 16:10 /user/root/input/ssl-client.xml.example
    -rw-r--r-- 1 root supergroup 1195 2012-01-31 16:10 /user/root/input/ssl-server.xml.example
    -rw-r--r-- 1 root supergroup 250 2012-01-31 16:10 /user/root/input/taskcontroller.cfg
    [root@www bin]#
    問題三Hadoop啟動datanode時出現Unrecognized option: -jvm 和 Could not create the Java virtual machine.
    [root@www bin]# hadoop-daemon.sh start datanode
    starting datanode, logging to /usr/hadoop-0.20.203.0/bin/../logs/hadoop-root-datanode-www.keli.com.out
    Unrecognized option: -jvm
    Could not create the Java virtual machine.

解決辦法:
在hadoop安裝目錄/bin/hadoop中有如下一段shell:
CLASS='org.apache.hadoop.hdfs.server.datanode.DataNode'
if [[ $EUID -eq 0 ]]; then
HADOOP_OPTS="$HADOOP_OPTS -jvm server $HADOOP_DATANODE_OPTS"
else
HADOOP_OPTS="$HADOOP_OPTS -server $HADOOP_DATANODE_OPTS"
fi

其中的
if [[ $EUID -eq 0 ]]; then
HADOOP_OPTS="$HADOOP_OPTS -jvm server $HADOOP_DATANODE_OPTS"
如果 $EUID 為 0,什么意思呢?
有效用戶標識號(EUID):該標識號負責標識以什么用戶身份來給新創建的進程賦所有權、檢查文件的存取權限和檢查通過系統調用kill向進程發送軟中斷信號的許可權限。
在root用戶下echo $EUID,echo結果為 0。
ok,在root下會有-jvm選項添加上去,上面說的Unrecognized option: -jvm難道就是這里產生的。

兩個想法。一個想法是自己改了這shell代碼,去掉里面的-jvm。另外一個想法是既然這里要求 $EUID -eq 0,那別用$EUID不為0的(root用戶)用戶運行即可。果斷試試,換上普通用戶根據文檔提示做。ok,成功。好奇的再試試第一個想法,其實暫時還是不太想動源碼。但是這shell動動也沒妨,果斷去掉上面的-jvm,直接把上面的if else 結構直接去掉改為

HADOOP_OPTS="$HADOOP_OPTS -server $HADOOP_DATANODE_OPTS",
同樣運行成功。
問題四[root@www bin]# jps
3283 NameNode
2791 SecondaryNameNode
2856 JobTracker
3348 Jps
hadoop沒有啟動datanode

解決辦法:
format之后之前的datanode會有一個ID,這個ID沒有刪除,所以會拒絕當前Namenode鏈接和分配。所以需要刪除原來的datanode中的hdfs目錄。
[root@freepp ~]# rm -rf /hadoopdata/
重啟hadoop
[root@www bin]# jps
4132 Jps
3907 NameNode
4056 DataNode
2791 SecondaryNameNode
2856 JobTracker

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 228,461評論 6 532
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,538評論 3 417
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 176,423評論 0 375
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,991評論 1 312
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,761評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,207評論 1 324
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,268評論 3 441
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,419評論 0 288
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 48,959評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,782評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,983評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,528評論 5 359
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,222評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,653評論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,901評論 1 286
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,678評論 3 392
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,978評論 2 374

推薦閱讀更多精彩內容