2013-06-05 37 views
6

我試圖在單個節點集羣上安裝Hadoop(我自己的labtop-ubuntu 12.04)。 我按照這個教程,並逐行檢查它兩次。 http://www.michael-noll.com/tutorials/running-hadoop-on-ubuntu-linux-single-node-cluster/

一切似乎都正確。我設置了所有的core-site.xml,mapred-site.xml,hdfs-site.xml。

當我運行在hduser蘇以下命令:

[email protected]:~$ /usr/local/hadoop/usr/sbin/start-all.sh 

我收到以下錯誤:

Warning: $HADOOP_HOME is deprecated. 

starting namenode, logging to /usr/local/hadoop/usr/libexec/../logs/hadoop-hduser-namenode-maziyar-Lenovo-IdeaPad-U300s.out 
cat: /usr/local/hadoop/usr/libexec/../etc/hadoop/slaves: No such file or directory 
cat: /usr/local/hadoop/usr/libexec/../etc/hadoop/masters: No such file or directory 
starting jobtracker, logging to /usr/local/hadoop/usr/libexec/../logs/hadoop-hduser-jobtracker-maziyar-Lenovo-IdeaPad-U300s.out 
cat: /usr/local/hadoop/usr/libexec/../etc/hadoop/slaves: No such file or directory 

我增加了出口HADOOP_HOME_WARN_SUPPRESS = 「TRUE」 到hadoop-env.sh和還是一樣的錯誤。

在文件/home/hduser/.bashrc,我想我的錯誤從正在添加我:

# Set Hadoop-related environment variables 
export HADOOP_HOME=/usr/local/hadoop 

# Set JAVA_HOME (we will also configure JAVA_HOME directly for Hadoop later on) 
export JAVA_HOME=/usr/lib/jvm/jdk-7u10-linuxi586/usr/java/jdk1.7.0_10 

# Some convenient aliases and functions for running Hadoop-related commands 
unalias fs &> /dev/null 
alias fs="hadoop fs" 
unalias hls &> /dev/null 
alias hls="fs -ls" 

# If you have LZO compression enabled in your Hadoop cluster and 
# compress job outputs with LZOP (not covered in this tutorial): 
# Conveniently inspect an LZOP compressed file from the command 
# line; run via: 
# 
# $ lzohead /hdfs/path/to/lzop/compressed/file.lzo 
# 
# Requires installed 'lzop' command. 
# 
lzohead() { 
    hadoop fs -cat $1 | lzop -dc | head -1000 | less 
} 

# Add Hadoop bin/ directory to PATH 
export PATH=$PATH:$HADOOP_HOME/usr/sbin 

我添加/ usr/sbin目錄的bin目錄,因爲start-all.sh和命令那裏。

我也在bashrc文件中試過「HADOOP_PREFIX」而不是「HADOOP_HOME」,但仍然是同樣的錯誤。

我有這個文件夾在我的hadoop目錄,

[email protected]:/usr/local/hadoop$ ls -lha 
total 20K 
drwxr-xr-x 5 hduser hadoop 4.0K May 30 15:25 . 
drwxr-xr-x 12 root root 4.0K May 30 15:25 .. 
drwxr-xr-x 4 hduser hadoop 4.0K May 30 15:25 etc 
drwxr-xr-x 12 hduser hadoop 4.0K Jun 4 21:29 usr 
drwxr-xr-x 4 hduser hadoop 4.0K May 30 15:25 var 

我下載了最新版本的Apache的Hadoop的上週:Hadoop的1.1.2-1.i386.rpm

+0

您使用的是什麼版本的hadoop? – twid

+0

@twid - 看起來像1.1.2 –

+0

你可以通過'hadoop version'獲得版本 – twid

回答

6

我試着設置export HADOOP_HOME_WARN_SUPPRESS="TRUE"在我的conf/hadoop-env.sh文件中,警告消失。雖然,我仍然不確定爲什麼這個警告首先出現。

2

您的bash會話仍可能有HADOOP_HOME變量定義。嘗試echo $HADOOP_HOME,看看你是否有任何價值。

如果你得到HADOOP_HOME值就意味着外殼得到它的一些配置文件,檢查這些文件(~/.bashrc~/.profile/etc/profile//etc/bash.bashrc等),並刪除出口HADOOP_HOME變量。

打開一個新的會話你設置後HADOOP_PREFIX環境變量,而不是在HADOOP_HOME~/.bashrc你一定$HADOOP_HOME未在任何配置文件導出,你不應該看到警告信息。

0

$HADOOP_HOME已棄用是警告消息。今天我在Ubuntu上安裝了使用Micheal網站的指令,並且它工作正常。

3

替換HADOOP_HOMEHADOOP_PREFIX~/.bashrc爲我解決了這個問題。

您是否嘗試在進行此更改後嘗試退出當前會話並重試?當您再次登錄到shell時,對bash配置文件所做的更改將生效。

1

棄用的錯誤意味着您使用的特定版本被認爲不重要,或者在網站上閱讀時立即停止支持。

通過這個我的意思是說你已經在hadoop上安裝了Openjdk。我所做的是不是安裝openjdk我安裝了Oraclejdk。也許你應該嘗試這樣做。

勒米知道這是否有幫助。

問候。