主要分为以下几个步骤:
安装java环境
配置环境变量
配置ssh
配置hadoop为单节点【伪分布式】模式A
一、安装JDK
1 下载并安装
sudo apt-get install openjdk-6-jdk
( 安装JDK7为:sudo apt-get install openjdk-7-jdk)
2 在命令行下输入java -version 查看是否安装成功
root@cloud1:/home/ubuntu/hadoop-1.0.4# java -version
java version "1.6.0_27"
OpenJDK Runtime Environment (IcedTea6 1.12.3) (6b27-1.12.3-0ubuntu1~12.04.1)
OpenJDK 64-Bit Server VM (build 20.0-b12, mixed mode)
如上则安装成功
3 配置JAVA环境变量
编辑文件/etc/profile,添加如下几行
export JAVA_HOME=/usr/lib/jvm/java-6-openjdk-amd64(JAVA所在的实际目录)
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/
二、配置ssh 免密码登录
1 安装所需软件
sudo apt-get install ssh
2 配置免密码登录
ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
cat ~/.ssh/id_dsa.pub >>~/.ssh/authorized_keys
3 验证是否成功
ssh localhost
三、安装hadoop
1 下载hadoop至服务器
(http://www.carfab.com/apachesoftware/hadoop/common/下载各种版本的网址)
wget http://www.carfab.com/apachesoftware/hadoop/common/hadoop-1.0.4/hadoop-1.0.4.tar.gz
2 解压
tar -xvf hadoop-1.0.4.tar.gz
3 配置hadoop
以下四个配置文件均在Hadoop解压文件夹的conf/目录下
(1)配置hadoop-env.sh
修改JAVA_HOME:
export JAVA_HOME=/usr/lib/jvm/java-6-openjdk-amd64
(2)配置core-site.xml
修改Hadoop核心配置文件core-site.xml,这里配置的是HDFS的地址和端口号
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/ubuntu/tmp</value>
</property>
</configuration>
(3)配置hdfs-site.xml
修改Hadoop中HDFS的配置,配置的备份方式默认为3,因为安装的是单机版,所以需要改为1
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
(4) 配置mapred-site.xml
修改Hadoop中MapReduce的配置文件,配置的是JobTracker的地址和端口
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>localhost:9001</value>
</property>
</configuration>
4 配置hadoop环境变量
vi /etc/profile (添加)
export HADOOP_HOME=/home/ubuntu/hadoop-1.0.4
export PATH=$HADOOP_HOME/bin:$PATH
然后执行source /etc/profile
5 初始化HDFS
bin/hadoop namenode -format或者 hadoop namenode -format
6 启动所有hadoop服务
start-all.sh
7 验证是否能正常启动
jps
如果正确的话,这时会显示已经启动的项目:
root@cloud1:/home/ubuntu/hadoop-1.0.4# jps
11896 JobTracker
13493 Jps
11819 SecondaryNameNode
11482 DataNode
12200 TaskTracker
11155 NameNode
如果没有正常启动,先关闭所有守护进程stop-all.sh,然后再根据提示信息重新启动。
8 跑wordcount
a.准备一个文本文件,
sudo vi /tmp/test.txt
随意输入一些单词,然后保存关闭退出。
b.将准备的测试文件上传到dfs文件系统中的firstTest目录下
hadoop dfs -copyFromLocal /tmp/test.txt firstTest
c.执行wordcount
hadoop jar hadoop-examples-1.0.4.jar wordcount firstTest result
注:hadoop-examples-1.0.4.jar会跟版本有关系,具体的名字可查看安装目录下的文件。
d.查看结果
hadoop dfs -cat result/part-r-00000
(注:结果文件默认是输出到一个名为“part-r-*****”的文件中的,可用指令“hadoopdfs -ls result”查看result目录下包含哪些文件)
至此,hadoop伪分布式模式搭建完成。