2013-06-05 36 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。也许你应该尝试这样做。

勒米知道这是否有帮助。

问候。