0
点赞
收藏
分享

微信扫一扫

hadoop3.x集群搭建教程

0.Hadoop和Java之间的版本配套

官方描述:https://cwiki.apache.org/confluence/display/HADOOP2/HadoopJavaVersions

hadoop 3.x 版本仅支持 Java8

hadoop 2.7.x及以上版本支持Java7和Java8

hadoop 2.6.x及以下版本支持Java6

1. 准备工作节点布置

IP

主机名

描述

部署软件

节点job

172.66.66.37

hadoop01

主节点/数据节点

jdk,hadoop

nn/dn

172.66.66.38

hadoop02

数据节点

jdk,hadoop

dn

172.66.66.39

hadoop03

数据节点/辅助节点

jdk,hadoop

dn/snn

2.所有节点配置hostname

# 永久生效,修改文件/etc/hostname 
#临时生效
hostnamectl set-hostname name

3.所有节点配置hosts

vim /etc/hosts
172.66.66.36 hadoop01
172.66.66.37 hadoop02
172.66.66.38 hadoop03

4.所有节点配置集群内节点免密登录

ssh-keygen -t rsa
ssh-copy-id hadoop01
ssh-copy-id hadoop02
ssh-copy-id hadoop03

5.准备hadoop二进制包,jdk二进制包,并配置环境变量

vim /etc/profile
export JAVA_HOME=/opt/jdk1.8.0_351
export HADOOP_HOME=/opt/hadoop-3.2.4
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$JAVA_HOME/bin
source /etc/profile

6.修改hadoop配置文件

vim hadoop-env.sh
#配置JAVA_HOME HADOOP_HOME
export JAVA_HOME=/opt/jdk1.8.0_351
export HADOOP_HOME=/opt/hadoop-3.2.4
#设置用户以执行对应角色shell命令
export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
export YARN_RESOURCEMANAGER_USER=root
export YARN_NODEMANAGER_USER=root

vim core-site.xml
<configuration>
<!-- HA集群名称,该值要和hdfs-site.xml中的配置保持一致 -->
<property>
<name>fs.defaultFS</name>
<value>hdfs://hadoop01:8020</value>
</property>
<!-- hadoop本地磁盘存放数据的公共目录 -->
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/tmp_data</value>
</property>
<!-- 配置允许通过代理访问的主机节点-->
<property>
<name>hadoop.proxyuser.root.hosts</name>
<value>*</value>
</property>
<!-- 配置允许通过代理访问的用户所属组-->
<property>
<name>hadoop.proxyuser.root.groups</name>
<value>*</value>
</property>
<!-- 回收站中的文件多少分钟后会被系统永久删除-->
<property>
<name>fs.trash.interval</name>
<value>1440</value>
</property>
<!-- 后两次检查点的创建时间间隔(单位也是分钟)-->
<property>
<name>fs.trash.checkpoint.interval</name>
<value>0</value>
</property>
<!-- 配置HDFS网页登录使用的静态用户为hadoop -->
<property>
<name>hadoop.http.staticuser.user</name>
<value>root</value>
</property>
</configuration>

vim hdfs-site.xml
<configuration>
<!-- nn的http通信地址 -->
<property>
<name>dfs.namenode.http-address</name>
<value>hadoop01:9870</value>
</property>
<!-- nn的https通信地址 -->
<property>
<name>dfs.namenode.https-address</name>
<value>hadoop01:9871</value>
</property>
<!-- snn的http通信地址 -->
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>hadoop03:9868</value>
</property>
<!-- snn的https通信地址 -->
<property>
<name>dfs.namenode.secondary.https-address</name>
<value>hadoop03:9869</value>
</property>
<!-- 指定文件切片的副本个数 -->
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
</configuration>

vim mapred-site.xml
<configuration>
<!--用于执行MapReduce作业的运行时框架-->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<!-- 设置历史任务的主机和端口 -->
<property>
<name>mapreduce.jobhistory.address</name>
<value>hadoop01:10020</value>
</property>
<!-- 设置网页访问历史任务的主机和端口 -->
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>hadoop01:19888</value>
</property>
<!-- 设置网页访问历史任务的主机和端口 -->
<property>
<name>mapreduce.jobhistory.webapp.https.address</name>
<value>hadoop01:19890</value>
</property>
<!-- 历史服务器的WEB UI上最多显示50000个历史的作业记录信息 -->
<property>
<name>mapreduce.jobhistory.joblist.cache.size</name>
<value>50000</value>
</property>
</configuration>

vim yarn-site.xml
<configuration>
<!-- 指定RM的地址 -->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>hadoop02</value>
</property>
<!--NodeManager上运行的附属服务。需配置成mapreduce_shuffle,才可运行MapReduce程序-->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<!-- 开启yarn日志聚合功能,收集每个容器的日志集中存储在一个地方 -->
<property>
<name>yarn.log-aggregation-enable</name>
<value>true</value>
</property>
<!-- 日志保留时间 -->
<property>
<name>yarn.log-aggregation.retain-seconds</name>
<value>2592000</value>
</property>
<property>
<name>yarn.log.server.url</name>
<value>http://hadoop01:19888/jobhistory/logs</value>
</property>
</configuration>

vim workers
hadoop01
hadoop02
hadoop03

 7.启动集群

在hadoop01(主节点)上格式化

hdfs namenode  -format

在hadoop01(主节点)上启动dfs

start-dfs.sh

在hadoop02上启动yarn

start-yarn.sh

  

  

  

 



举报

相关推荐

0 条评论