宇文氏 发表于 2016-12-8 07:48:07

hadoop搭建手册--集群分布式

搭建准备工作:
1.四台主机:
                   192.168.1.34—master-namenode
                   192.168.1.32—slave-datanode1
192.168.1.33—slave-datanode2
192.168.1.37—slave-datanode3
编辑每台主机的/etc/hosts文件内容,在最后面添加:
192.168.1.34            namenode
192.168.1.33            datanode1
192.168.1.32            datanode2
192.168.1.37            datanode3
使得各个主机之间能够相互ping的通
关闭每台机器的防火墙以及SELinux
2.JDK安装:
每台主机都需要安装
要求版本在jdk1.6以上
# rpm -qa | grepjava
输出如下内容:
java-1.4.2-gcj-compat-1.4.2.0-40jpp.115
java-1.6.0-openjdk-1.6.0.0-1.7.b09.el5
进行卸载:
#rpm -e --nodepsjava-1.4.2-gcj-compat-1.4.2.0-40jpp.115
#rpm -e --nodeps java-1.6.0-openjdk-1.6.0.0-1.7.b09.el5
然后现在就可以使用从官网下载的完整jdk进行安装了(最简单的RPM安装)
接下来进行JDK环境变量配置:
# vi /etc/profile
在最后面加上以下几行:
export JAVA_HOME=/usr/java/jdk1.6.0_27
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
然后修改默认的jdk设置:
# cd /usr/bin/
# ln –s –f /usr/java/jdk1.6.0_18/jre/bin/java
# ln –s –f /usr/java/jdk1.6.0_18/jre/bin/javac
此时在检测下jdk版本
# java –version
SSH环境搭建:
每台主机都需要安装
yum install –y openssh
添加一个用户grid
#useradd –m grid
设置密码
#passwd grid
设置密钥
#cd ~
#mkdir .ssh
#ssh-keygen –t rsa
然后一直按回车下去,既可以形成一对公私密钥对。
#cd .ssh
把公钥拷贝到各个主机上,是的各个主机之间能够实现无密码连接
#cp id_rsa.pub authorized_keys
#scp authorized_keys datanode2:/home/grid/.ssh
#scp authorized_keys datanode3:/home/grid/.ssh
进入所有主机的.ssh目录,改变authorized_keys文件的许可权限:
#chmod 644 authorized_keys
以后各台主机相连接只需要第一次输入密码:
配置Hadoop
Hadoop-0-20.2版本(最新版本)下载
http://mirror.bjtu.edu.cn/apache/hadoop/core/hadoop-0.20.2/
解压
#tar –zxvf hadoop-0.20.2.tar.gz
#cp –r hadoop-0.20.2/home/grid/
a.配置core-site.xml hdfs-site.xml mapred-site.xml
 
b.配置conf/masters
 删除localhost,加入namenode(主机名称)
c.配置conf/slaves
 删除localhost,加入数据节点。每行一个主机名称
datanode1
datanode2
datanode3
d.配置conf/hadoop-env.sh
  知道到JAVA_HOME那一行,改动如下:
  export JAVA_HOME=/usr/java/jdk1.6.0_27
e.将配置好的hadoop文件拷贝到其他几台数据节点上面
#scp –rhadoop-0.20.2 datanode1:/home/grid/
#scp –rhadoop-0.20.2 datanode2:/home/grid/
#scp –rhadoop-0.20.2 datanode3:/home/grid/
Hadoop运行(从namenode启动即可)
文件系统格式化
#bin/hadoopnamenode –format
启动所有namenode datanode JobTrackerSecondary TaskTracker
#bin/start-all.sh
使用命令检查各个节点上得启动情况:
#/usr/java/jdk1.6.027/bin/jps
 
 
访问Web界面:
修改Windows的hosts
使得浏览器可以访问
http://namenode:50070/
http://namenode:50030/
 
 
测试WordCount(在前台节点测试)
#mkdir in
#cd in
#echo “hello world” >f1.txt
#echo “hello hadoop” >f2.txt
在hdfs上创建一个/tmp/input文件夹
#bin/hadoop fs -mkdir /tmp/input
把本地的in文件内容考到hdfs中的/tmp/input文件夹中去
#bin/hadoop fs -put /home/grid/hadoop-0.20.2/in/tmp/input
# bin/hadoop jar hadoop-0.20.2-examples.jarwordcount /tmp/input/  output
查看结果(在hdfs中的默认目录是/user/root/)
#bin/hadoop dfs –cat /user/root/output/*
 
 
 
页: [1]
查看完整版本: hadoop搭建手册--集群分布式