Hadoop集群搭建指南

 
Hadoop集群搭建指南
 
  1. 集群环境
  2. 修改hosts
  3. 前提条件
  4. 安装hadoop
  5. hadoop的简单使用
  6. 其它
 
集群环境
 
(hadoop00作为namenode)
hadoop00:10.34.14.60
hadoop01:10.34.14.47
hadoop02:10.34.14.31
 
host配置:
 
配置hosts,分别修改三台机器的/etc/hosts如下:
1.hadoop00:能识别自己和所有的datanode机器
10.34.14.60 hadoop00
10.34.14.47 hadoop01
10.34.14.31 hadoop02
 
2.hadoop01:能识别自己和namenode机器
10.34.14.60 hadoop00
10.34.14.47 hadoop01
 
3.hadoop02:能识别自己和namenode机器
10.34.14.60 hadoop00
10.34.14.31 hadoop02
 
 
hadoop安装前提条件:

JDK1.5.x
集群各结点间ssh无密码访问
 
step1:安装jdk1.5.x(注意安装sun-jdk)
的jdk的bin包.
PS:Linux下安装bin包:
./XXX.bin运行一下,如果不可以就再转换一下文件属性:chmod +x XXX.bin
b.设置java_home
 
step2:集群间各结点间无密码访问
假设要建立用户A,B间的无密码访问:
a.进入A的主目录,运行:
ssh-keygen -t rsa
 
在.ssh下生成:
id_rsa为私钥,id_rsa.pub为公钥
B作同样操作生成.ssh文件
 
b.将A的.ssh文件下的id_rsa.pub拷贝至B的.ssh文件夹下并重命名:
scp .ssh/id_rsa.pub B@10.34.14.60:.ssh/id_rsa.pub0 
 
(复制到另一方需重命名,防止覆盖原来机器的公钥)
在B中,拷贝一份id_rsa.pub文件并命名为authorized_keys,并追加到A的公钥上:
cat id_rsa.pub0>>authorized_keys
这样,A访问B就不需要访问密码
c.测试:
做完集群间的无密码访问后,可通过ssh 主机名 来测试是否设置成功
 
 
安装Hadoop
(此过程所有集群机器做相同操作)

1.下载源文件,解压
tar -zxvf hadoop-0.20.2.tar.gz
 
2.编辑conf/hadoop-env.sh文件,至少需要将JAVA_HOME设置为Java安装根路径。
3.编辑环境变量.bashrc或.profile或/etc/environment:
export HADOOP_HOME=/home/hadoop/hadoop-0.20.2
export PATH=$HADOOP_HOME/bin:$PATH
设置完环境变量后,执行当前环境变量
source .bashrc

4.配置文件conf/core-site.xml
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://hadoop00:9000</value>
</property>
</configuration>
 
5.配置文件conf/hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
 
6.配置文件conf/mapred-site.xml
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>hadoop00:9001</value>
</property>
</configuration>
 
7.配置文件conf/masters
hadoop00
 

8.配置文件conf/slaves
hadoop01
hadoop02
 
hadoop的使用举例:
 
1.格式化namenode
hadoop namenode -format
 
2.启动hadoop
start-all.sh
3.查看hadoop是否成功运行:
各台集群机器上运行:
jps
 
Namenode所在机器出现:namenode,JobTracker
Datanode所在机器出现:DataNode,TaskTracker

4.在hdfs中新建文件夹
hadoop fs -mkdir input
 
5.将数据文件拷贝到input中
hadoop fs -put README.txt input
 
6.运行WordCount示例
hadoop jar hadoop-examples-*.jar wordcount input output
 
其它

详细资料见hadoop官网:http://hadoop.apache.org/
 
更新
 
时间 更新内容 更新者
2011-8-19 创建整理 By AndreMouche
2011-12-14 整理 By AndreMouche
 
 

 
posted @ 2011-12-16 14:34  AndreMouche  阅读(604)  评论(0编辑  收藏  举报