一、集群简介
HADOOP集群具体来说包含两个集群:HDFS集群和YARN集群,两者逻辑上分离,但物理上常在一起
(1)HDFS集群:
负责海量数据的存储,集群中的角色主要有NameNode / DataNode
(2)YARN集群:
负责海量数据运算时的资源调度,集群中的角色主要有 ResourceManager /NodeManager
(mapreduce是一个应用程序开发包)
本集群搭建案例,以5节点为例进行搭建,角色分配如下:
hdp-node-01 NameNode SecondaryNameNode
hdp-node-02 ResourceManager
hdp-node-03 DataNode NodeManager
hdp-node-04 DataNode NodeManager
hdp-node-05 DataNode NodeManager
部署图如下:
二、网络环境准备
(1) 采用NAT方式联网
(2) 网关地址:192.168.33.1
(3)3个服务器节点IP地址:192.168.33.101、192.168.33.102、192.168.33.103
(4) 子网掩码:255.255.255.0
三、服务器系统设置
(1)添加HADOOP用户
(2) 为HADOOP用户分配sudoer权限
(3) 同步时间
(4) 设置主机名
n hdp-node-01
n hdp-node-02
n hdp-node-03
(5) 配置内网域名映射:
192.168.33.101 hdp-node-01
192.168.33.102 hdp-node-02
192.168.33.103 hdp-node-03
(6) 配置ssh免密登陆
(7) 配置防火墙
四、Jdk环境安装
五、Hadoop安装部署
(1)上传HADOOP安装包
(2) 规划安装目录 /home/hadoop/apps/hadoop-2.6.1
(3) 解压安装包
(4) 修改配置文件 $HADOOP_HOME/etc/hadoop/
最简化配置如下:
vi hadoop-env.sh# The java implementation to use.
export JAVA_HOME=/home/hadoop/apps/jdk1.7.0_51
vi core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://hdp-node-01:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/HADOOP/apps/hadoop-2.6.1/tmp</value>
</property>
</configuration>
vi hdfs-site.xml
<configuration>
<property>
<name>dfs.namenode.name.dir</name>
<value>/home/hadoop/data/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/home/hadoop/data/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<property>
<name>dfs.secondary.http.address</name>
<value>hdp-node-01:50090</value>
</property>
</configuration>
vi mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
vi yarn-site.xml
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>hadoop01</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
vi salves
hdp-node-01
hdp-node-02
hdp-node-03
六、启动集群
初始化HDFS
bin/hadoop namenode -format
启动HDFS
sbin/start-dfs.sh
启动YARN
sbin/start-yarn.sh
七、测试
从本地上传一个文本文件到hdfs的/wordcount/input目录下
HADOOP fs -mkdir -p /wordcount/input
HADOOP fs -put /home/HADOOP/somewords.txt /wordcount/input
2、运行一个MapReduce程序
在HADOOP安装目录下,运行一个示例mr程序
cd $HADOOP_HOME/share/hadoop/mapreduce/
hadoop jar mapredcue-example-2.6.1.jar wordcount /wordcount/input /wordcount/output
八、HDFS使用
hdfs dfsadmin –report
打印结果
从上图可以看出集群共有3个datanode可用
2、打开web控制台查看HDFS集群信息,在浏览器打开http://hdp-node-01:50070/
3、上传文件到HDFS
(1) 查看HDFS中的目录信息
hadoop fs –ls /
(2) 上传文件
hadoop fs -put ./ scala-2.10.6.tgz to /
hadoop fs -get /yarn-site.xml