1、集群简介
HADOOP集群具体来说包含两个集群:HDFS集群和YARN集群,两者逻辑上分离,但物理上常在一起。
HDFS集群:负责海量数据的存储,集群中的角色主要有 NameNode / DataNode
YARN集群:负责海量数据运算时的资源调度,集群中的角色主要有 ResourceManager /NodeManager
2、集群规划
Benz nn dn nm snn rm
Audi dn nm
BMW dn nm
说明:
nn:namenode
dn:datanode
nm:nodemanager
snn:secondary namenode
rm:resourcemanager
3、集群搭建详解
3.1、网络配置
A.各个机器处于同一个网段,以构成一个局域网,同时还应该配置主机名/IP映射,以便于后期使用
B.配置ssh免密登录
ssh-keygen
ssh-copy-id hostname
可以编写shell脚本进行免密登录配置
C.配置防火墙
此处直接把防火墙关闭
service iptables stop
chkconfig iptables off
3.2、jdk环境搭建
下载jdk安装包然后进行解压,配置环境变量
3.3、Hadoop安装
1.在官网上下载hadoop安装包,然后进行解压
2.配置hadoop的环境变量
3.修改配置文件:$HADOOP_HOME/etc/hadoop/
配置文件:hadoop-env.sh
export JAVA_HOME=/home/hadoop/apps/jdk1.7.0_51 (指定jdk安装目录)
配置文件:core-site.xml
<!-- 指定HADOOP所使用的文件系统schema(URI),HDFS的老大(NameNode)的地址 -->
<property>
<name>fs.defaultFS</name>
<value>hdfs://Benz:9000</value>
</property>
<!-- 指定hadoop运行时产生文件的存储目录 -->
<property>
<name>hadoop.tmp.dir</name>
<value>/root/hadoop/tmp</value>
</property>
配置文件:hdfs-site.xml
<!-- 指定HDFS副本的数量 -->
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<property>
<name>dfs.secondary.http.address</name>
<value>192.168.205.9:50090</value>
</property>
配置文件:mapred-site.xml
mv mapred-site.xml.template mapred-site.xml
vim mapred-site.xml
<!-- 指定mr运行在yarn上 -->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
配置文件:yarn-site.xml
<!-- 指定YARN的老大(ResourceManager)的地址 -->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>Benz</value>
</property>
<!-- reducer获取数据的方式 -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
配置文件:salves(此文件将集群的所有机器写到其中)
Benz
Audi
BMW
将配置文件传到其他集群中的机器对应目录上
3.4、启动集群
1.格式化namenode
hdfs namenode -format (hadoop namenode -format)
2.启动HDFS(先启动)
start-dfs.sh
3.启动YARN(后启动)
start-yarn.sh
可以通过hadoop-daemon.sh start/stop namenode/datanode...
进行单个节点的启动和关闭
说明:此处的集群不是HA模式的集群