hadoop集群搭建
HADOOP集群具体来说包含两个集群:HDFS集群和YARN集群,两者逻辑上分离,但物理上常在一起
HDFS集群:负责海量数据的存储,集群中的角色主要有 NameNode / DataNode
YARN集群:负责海量数据运算时的资源调度,集群中的角色主要有 ResourceManager /NodeManager
本集群搭建为例,以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 |
部署图如下:
一.服务器准备
本案例使用虚拟机服务器来搭建HADOOP集群,所用软件及版本:
1.Vmware 11.0
2.Centos 6.5 64bit
二.网络环境准备
1.采用NAT方式联网
2. 网关地址:192.168.64.1
3.3个服务器节点IP地址:192.168.64.101、192.168.64.102、192.168.64.103
4.子网掩码:255.255.255.0
三.服务器系统设置
添加HADOOP用户
ü 为HADOOP用户分配sudoer权限
ü 同步时间
ü 设置主机名
n hdp-node-01
n hdp-node-02
n hdp-node-03
ü 配置内网域名映射:
n 192.168.64.131 hdp-node-01
n 192.168.64.137 hdp-node-02
n 192.168.64.134 hdp-node-03
ü 配置ssh免密登陆
ü 配置防火墙
4. Jdk环境安装
ü 上传jdk安装包
ü 规划安装目录 /home/hadoop/apps/jdk_1.7.65
ü 解压安装包
ü 配置环境变量 /etc/profile
4.1.6 HADOOP安装部署
ü 上传HADOOP安装包
ü 规划安装目录 /home/hadoop/apps/hadoop-2.6.1
ü 解压安装包
ü 修改配置文件 $HADOOP_HOME/etc/hadoop/
最简化配置如下:
1.vi hadoop-env.sh //配置hadoop环境,主要是jdk路径
# The java implementation to use. export JAVA_HOME=/home/hadoop/apps/jdk1.7.0_51 |
2.配置maste,以下 的core-site.xml ,hdfs-site.xml,map-site.xml文件目录位置是$HADOOP_HOME/etc/hadoop/: 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> |
<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> |
4.使用yarn资源集群管理: 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> |
5.配置从节点: vi salves
hdp-node-01 hdp-node-02 hdp-node-03 |
4.1.7 启动集群
一.第一次启动集群一定要初始化HDFS,命令如下:
bin/hadoop namenode -format |
启动HDFS
sbin/start-dfs.sh |
启动YARN
sbin/start-yarn.sh |
测试
1、上传文件到HDFS
从本地上传一个文本文件到hdfs的/wordcount/input目录下
[[email protected] ~]$ HADOOP fs -mkdir -p /wordcount/input [[email protected] ~]$ HADOOP fs -put /home/HADOOP/somewords.txt /wordcount/input |
搭建过程常见问题:1.防火墙问题,导致无法通过UI访问hadoop集群
解决方法:关闭防火墙 centos6以上版本可使用命令:systemctl stop firewalld.service
2.datanode无法启动的问题:
解决方法:1.使用命令jsp查询 进程情况,
2. kill掉其对应线程,
3. bin/hadoop namenode -format
4.再重新启动集群