HADOOP集群搭建
1.集群简介
HADOOP集群具体来说包含两个集群:HDFS集群和YARN集群,两者逻辑上分离,但物理上常在一起
HDFS集群:
负责海量数据的存储,集群中的角色主要有 NameNode / DataNode
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 |
部署图如下:
2服务器准备
本案例使用虚拟机服务器来搭建HADOOP集群,所用软件及版本:
Vmware 12.0
Centos 7.4 64bit
可以通过 cat /etc/redhat-release 查看版本号
3网络环境准备
采用NAT方式联网
网关地址:192.168.158.1
3个服务器节点IP地址:192.168.158.171、192.168.158.172、192.168.158.173
子网掩码:255.255.255.0
4服务器系统设置
添加HADOOP用户
为HADOOP用户分配sudoer权限
同步时间
设置主机名 vim /etc/hostname
ü 配置内网域名映射: vim /etc/hosts
配置ssh免密登陆
配置防火墙
5 Jdk环境安装
上传jdk安装包
规划安装目录 /usr/local/jdk1.8
解压安装包
配置环境变量 /etc/profile
# java env
export JAVA_HOME=/usr/local/jdk1.8
export PATH=$PATH:$JAVA_HOME/bin
6 HADOOP安装部署
上传HADOOP安装包
规划安装目录 /usr/local/hadoop
解压安装包
修改配置文件 $HADOOP_HOME/etc/hadoop/
最简化配置如下:
vi hadoop-env.sh
# The java implementation to use. export JAVA_HOME=/usr/local/jdk1.8 |
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>/usr/local/hadoop/tmp</value> </property> </configuration> |
vi hdfs-site.xml
<configuration> <property> <name>dfs.namenode.name.dir</name> <value>/usr/local/hadoop/data/name</value> </property> <property> <name>dfs.datanode.data.dir</name> <value>/usr/local/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 |
7 启动集群
初始化HDFS
bin/hadoop namenode -format |
启动HDFS
sbin/start-dfs.sh |
启动YARN
sbin/start-yarn.sh |