下载hadoop
hadoop下载地址:
http://www.apache.org/dyn/closer.cgi/hadoop/core/
这里下载的版本是1.0.3
$ mkdir hadoop
$ wget http://www.fayea.com/apache-mirr ... hadoop-1.0.3.tar.gz .
安装java
首先用“java -version”查看是否已安装,如果显示类似于java version "1.7.0_147-icedtea 则表示已安装
没有安装可以参考: Ubuntu 11.04 下安装配置 JDK 7 linux(ubuntu)安装Java jdk环境变量设置总结
安装必须设置JAVA_HOME和CLASSPATH
我的配置:
export PATH=${PATH}:/usr/lib/jvm/java-6-openjdk-amd64/bin
export JAVA_HOME=/usr/lib/jvm/java-6-openjdk-amd64/
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JRE_HOME}/lib:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar
并将这两行语句放在:~/.bashrc中
下面对里面的每一个进行注释:
export PATH=${PATH}:/usr/lib/jvm/java-6-openjdk-amd64/bin
这里是你安装java的路径,上面操作代表:你需要创建jvm文件夹(mkdir jvm),然后解压到jvm中,解压完毕,你会看到java-6-openjdk-amd64文件夹,文件夹中,有一个bin文件。上面就是对bin路径对PATH的赋值。
上面修改因为安装的路径可能不一样,所以需要填写自己的安装路径,即为bin的路径。这里很多的文档误导成jdk路径。这里填写错误,后面命令就不能执行。
安装ssh
$ sudo apt-get install ssh
安装完成后,需要确认可以用ssh免密码登录localhost
$ ssh localhost
如果需要密码才能登录,则需要设置:
$ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
这两个命令的解释可以查看云技术基础:集群搭建SSH的作用及这些命令的含义
安装rsync
rsync是linux实现远程同步的软件
$ sudo apt-get install rsync
配置启动hadoop
解压:
$ tar -zxvf hadoop-1.0.3.tar.gz
设置JAVA_HOME
编辑conf/hadoop-env.sh文件,找到:
# export JAVA_HOME=/usr/lib/j2sdk1.5-sun
修改为:
export JAVA_HOME=/usr/lib/jvm/java-6-openjdk-amd64/
(注意的是JAVA_HOME为jdk的路径,不是你其他文件夹的路径)
修改配置文件:
想知道对于配置文件中参数的说明可以查看Hadoop1.x安装配置文件及参数说明
如果不知道java在什么地方请用whereis java查询
修改conf/core-site.xml:
-
<configuration>
-
<property>
-
<name>fs.default.name</name>
-
<value>hdfs://localhost:9000</value>
-
</property>
-
-
</configuration>
修改conf/hdfs-site.xml:
-
<configuration>
-
<property>
-
<name>dfs.replication</name>
-
<value>1</value>
-
</property>
-
<property>
-
<name>hadoop.tmp.dir</name>
-
<value>/home/work/hadoop_tmp</value>
-
</property>
-
</configuration>
修改conf/mapred-site.xml:
-
<configuration>
-
<property>
-
<name>mapred.job.tracker</name>
-
<value>localhost:9001</value>
-
</property>
-
</configuration>
初始化hadoop Namenode:
$ bin/hadoop namenode –format
在这里可能会遇到错误出现 命令不识别,是因为环境变量没有配置
第一步:配置环境变量
也可通过vim,但是需要安装包
第二步:把hadoop中bin路径添加到PATH中。
目的能够识别hadoop命令
第三步:执行命令
-
$ bin/hadoop namenode –format
这里需要注意的时候xml一定要设置正确,否则format会报错。
上面问题解决,继续下面
启动:
$ bin/start-all.sh
确认启动:
$ jps
5146 Jps
4538 TaskTracker
4312 JobTracker
4015 DataNode
4228 SecondaryNameNode
3789 NameNode
表示启动成功
以下内容写入~/.bashrc:
-
alias hadoop='/home/zxm/hadoop/hadoop-1.0.3/bin/hadoop'
-
alias hls='hadoop fs -ls'
-
alias hlsr='hadoop fs -lsr'
-
alias hcp='hadoop fs -cp '
-
alias hmv='hadoop fs -mv'
-
alias hget='hadoop fs -get'
-
alias hput='hadoop fs -put'
-
alias hrm='hadoop fs -rm'
-
alias hmkdir='hadoop fs -mkdir'
-
alias hcat='hadoop fs -cat'
-
alias hrmr='hadoop fs -rmr'
-
alias hstat='hadoop fs -stat'
-
alias htest='hadoop fs -test'
-
alias htext='hadoop fs -text'
-
alias htouchz='hadoop fs -touchz'
-
alias hdu='hadoop fs -du'
-
alias hdus='hadoop fs -dus'
-
alias hchmod='hadoop fs -chmod'
-
alias hchgrp='hadoop fs -chgrp'
-
alias hchown='hadoop fs -chown'
-
alias htail='hadoop fs -tail'
常见问题解决方案:
问题1:运行hadoop命令是出现“Warning: $HADOOP_HOME is deprecated.”报警
解决:添加 export HADOOP_HOME_WARN_SUPPRESS=TRUE 到 hadoop-env.sh 中
问题2:namenode无法启动
解决:删除/tmp/hadoop* 执行bin/hadoop namenode –format
安装完毕,我们该怎么用,该怎么测试安装成功。
(责任编辑:IT) |