彻底分布模式:正常的Hadoop集群,由多个各司其职的节点构成。html
安装环境java
操做平台:VMnode
操做系统:CentOS6.4(关闭防火墙)web
软件版本:Hadoop-0.20.二、JDK7 浏览器
集群架构:3个节点--一个Mater,二个Slave。服务器
准备工做架构
JDK安装与配置负载均衡
详情请见:http://www.cnblogs.com/zhangwenjing/p/3580726.htmlssh
安装步骤oop
1、配置hosts文件
修改全部节点的/ect/hosts,使彼此之间都能把主机名解析为ip.
vi /ect/hosts
192.168.1.53 master
192.168.1.113 node1
192.168.1.145 node2
2、创建hadoop运行帐号
在全部的节点建立hadoop运行帐号
groupadd hadoop
useradd -g hadoop grid
id grid
passwd grid
3、配置ssh免密码链接
在三个节点中,均以grid用户登陆,在grid用户的主目录下进行操做:
ssh-keygen -t rsa -P ""
cd ~.ssh
ls
完成以上步骤,把各个节点的authorized_keys的内容互相拷贝加入到对方的此文件中,咱们这里采起的措施是:而后就能够免密码彼此ssh连入
以master为例:
cat /home/grid/.ssh/id_rsa.pub >> /home/grid/.ssh/authorized_keys
ssh node1 cat /grid/hadoop/.ssh/id_rsa.pub >> /home/grid/.ssh/authorized_keys
ssh node2 cat /home/grid/.ssh/id_rsa.pub >> /home/grid/.ssh/authorized_keys
4、Hadoop安装
一、Hadoop下载与安装
解压缩:tar -zxvf hadoop-0.20.2.tar.gz
重命名:mv hadoop-0.20.2 hadoop
#vi ect/profile
HADOOP_PREFIX=/home/grid/hadoop
PATH=$HADOOP_PREFIX/bin:$PATH
export HADOOP_PREFIX PATH
执行环境配置:source /etc/profile
验证:hadoop -version
(注意:三台服务器Hadoop安装目录要保持一致。)
二、Hadoop配置
Hadoop配置在~/hadoop/conf下,做以下修改:
hadoop-env.sh
export JAVA_HOME=/usr/local/java/jdk1.7.0_51(JDK安装目录)
修改内存大小:export HADOOP_CLIENT_OPTS="-Xmx512m $HADOOP_CLIENT_OPTS"
core-site.xml,作以下配置:
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://master:9000</value>
</property>
</configuration>
hdfs-site.xml,作以下配置:
<configuration>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<property>
<name>dfs.permissions</name>
<value>false</value>
</property>
</configuration>
mapred-site.xml,作以下配置:
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>master:9001</value>
</property>
</configuration>
masters,作以下配置:
namenode节点主机名或IP,若是有多个,则用回车分隔
vi masters
master
slaves,作以下配置:
datanode节点主机名或IP,若是有多个,则用回车分隔
vi slaves
node1
node2
三、复制hadoop到各节点
scp -r 原文件目录 目标文件目录
四、在NameNode节点格式化HDFS
在Hadoop安装目录下运行:bin/hadoop namenode –format
五、在NameNode启动Hadoop
在Hadoop安装目录下运行:bin/start-all.sh
六、在各个节点检查进程是否启动,执行以下命令
jps
5、实例运行
切换到安装目录,创建要上传到hadoop的两个文件 test1.txt、test2.txt
mkdir input
cd input
echo "hello world" > test1.txt
echo "hello hadoop" > test2.txt
运行hadoop自带的wordcount实例能够统计一批文本文件中单词出现的次数
bin/hadoop jar hadoop-0.20.2-examples.jar wordcount input output
查看结果:
cat output/*
6、经过web检查Hadoop
经过浏览器监控jobstracker:http://192.168.1.53:50030
经过浏览器监控集群:http://192.168.1.53:50070
附:
如何添加节点?(准备工做JDK安装和配置)
①配置host文件
②创建hadoop运行帐号
③设置ssh免密码进出该节点
④在新的节点安装好hadoop(安装目录和其余节点保持一致)
⑤把namenode的有关配置文件复制到该节点
⑥修改全部节点masters和slaves文件,增长该节点
⑦单独启动该节点上的datanode和tasktracker(hadoop-daemon.sh start datanode/tasktracker)
⑧运行start-balancer.sh进行数据负载均衡