1、安装1.5以上JDK,我安装的是JDK1.7,安装目录是/opt/java/jdk1.7.0_09
3、下载Hadoop
从http://hadoop.apache.org/core/releases.html 下载最近发布的版本
我下载的是 hadoop-1.1.0.tar.gz
4、在用户的目录下创建hadoop目录,即/home/user1/hadoop
user1是用户名
6、进入到hadoop的解压目录,配置conf/hadoop-env.sh的JAVA_HOME
7、测试安装是否成功
进入到hadoop的解压目录
8、测试在本用户下:ssh localhsot命令对自己SSH是否需要输入密码,
如果需要输入密码则要用两个命令配置SSH
9、配置conf/core-site.xml
hadoop.tmp.dir配置为想要的路径,${user.name}会自动扩展为运行hadoop的用户名
10、配置conf/hdfs-site.xml
13、启动
14、测试启动是否成功
2、安装ssh:
$ sudo apt-get install ssh
$ sudo apt-get install rsync
3、下载Hadoop
从http://hadoop.apache.org/core/releases.html 下载最近发布的版本
我下载的是 hadoop-1.1.0.tar.gz
4、在用户的目录下创建hadoop目录,即/home/user1/hadoop
user1是用户名
5、把hadoop-1.1.0.tar.gz解压到/home/user1/hadoop目录下(最好把压缩包解压到用户的目录下,否则有可能出现没有权限的问题)
$sudo tar -zxvf hadoop-1.1.0.tar.gz -C /home/user1/hadoop
6、进入到hadoop的解压目录,配置conf/hadoop-env.sh的JAVA_HOME
# export JAVA_HOME=/usr/lib/j2sdk1.5-sun
改为:
export JAVA_HOME=/opt/java/jdk1.7.0_09
7、测试安装是否成功
进入到hadoop的解压目录
$ mkdir input
$ cp conf/*.xml input
$ bin/hadoop jar hadoop-*-examples.jar grep input output 'dfs[a-z.]+'
$ cat output/*
8、测试在本用户下:ssh localhsot命令对自己SSH是否需要输入密码,
如果需要输入密码则要用两个命令配置SSH
$ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
$cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
9、配置conf/core-site.xml
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/huangjinhui/hadoop/hadoop-datastore/hadoop-${user.name}</value>
</property>
<property>
<name>fs.default.name</name>
<value>hdfs://192.168.1.107:9000</value>
</property>
</configuration>
hadoop.tmp.dir配置为想要的路径,${user.name}会自动扩展为运行hadoop的用户名
10、配置conf/hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
dfs.replication为默认block复制数量
11、配置conf/mapred-site.xml
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>192.168.1.107:9001</value>
</property>
</configuration>
12、格式化分布式文件系统
$ bin/hadoop namenode -format
13、启动
$ bin/start-all.sh
14、测试启动是否成功
NameNode - http://localhost:50070/
JobTracker - http://localhost:50030/
$ bin/hadoop fs -get output output
$ cat output/*