侯体宗的博客
  • 首页
  • Hyperf版
  • beego仿版
  • 人生(杂谈)
  • 技术
  • 关于我
  • 更多分类
    • 文件下载
    • 文字修仙
    • 中国象棋ai
    • 群聊
    • 九宫格抽奖
    • 拼图
    • 消消乐
    • 相册

Hadoop-3.1.2完全分布式环境搭建过程图文详解(Windows 10)

Windows  /  管理员 发布于 5年前   308

一、前言

  Hadoop原理架构本人就不在此赘述了,可以自行百度,本文仅介绍Hadoop-3.1.2完全分布式环境搭建(本人使用三个虚拟机搭建)。

  首先,步骤:

  ① 准备安装包和工具:

hadoop-3.1.2.tar.gz ◦  jdk-8u221-linux-x64.tar.gz(Linux环境下的JDK) ◦  CertOS-7-x86_64-DVD-1810.iso(CentOS镜像) ◦工具:WinSCP(用于上传文件到虚拟机),SecureCRTP ortable(用于操作虚拟机,可复制粘贴Linux命令。不用该工具也可以,但是要纯手打命令),VMware Workstation Pro

  ② 安装虚拟机:本人使用的是VMware Workstation Pro,需要激活。(先最小化安装一个虚拟机Master,配置完Hadoop之后再克隆两个Slave)

  ③ 配置虚拟机:修改用户名,设置静态IP地址,修改host文件,关闭防火墙,安装Hadoop,安装JDK,配置系统环境,配置免密码登录(必要)。

  ④ 配置Hadoop:配置hadoop-env.sh,hdfs-site.xml,core-site.xml,mepred-site.xml,yarn-site.xml,workers文件(在Hadoop-2×中是slaves文件,用于存放从节点的主机名称,或者IP地址)

  ⑤ 克隆虚拟机:克隆两个Slave,主机名称分别是Slave1,Slave2。然后修改Slave的Hadoop配置。

  ⑥ namenode格式化:分别对Master、Slave1,Slave2执行hadoop namenode -format命令。

  ⑦ 启动hdfs和yarn:在Master上执行start-all.sh命令。待启动完成之后,执行jps命令查看进程,应包含namenode,secondarynamenode,resourcemaneger三个进程。Slave上有datanode,nodemanager进程。

  ⑧ 检查测试:先修改真实主机的host(IP地址与Master的映射)在浏览器中输入Master:9870回车,进入hdfs,点击上方datanode应该可以看到下面有两个节点;输入Master:8088回车,进入资源调度管理(yarn)

好了,开始吧。

二、准备工具

  hadoop-3.1.2.tar.tz下载地址:http://mirror.bit.edu.cn/apache/hadoop/common/hadoop-3.1.2/hadoop-3.1.2.tar.gz

  jdk-8u221-linux-x64.tar.gz下载地址:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

  CentOS下载地址:http://isoredirect.centos.org/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-1810.iso

  WinSCP下载地址: https://winscp.net/eng/download.php

  SecureCRTP ortable下载地址: http://fs2.download82.com/software/bbd8ff9dba17080c0c121804efbd61d5/securecrt-portable/scrt675_u3.exe

  VMware Workstation Pro下载地址:http://download3.vmware.com/software/wkst/file/VMware-workstation-full-15.1.0-13591040.exe

  附VMware Workstation Pro秘钥:

  YG5H2-ANZ0H-M8ERY-TXZZZ-YKRV8

  UG5J2-0ME12-M89WY-NPWXX-WQH88

  UA5DR-2ZD4H-089FY-6YQ5T-YPRX6

三、安装虚拟机

  此步略,详情之后发布

四、配置虚拟机 

 1.修改用户名:   

hostnamectl --static set-hostname Master

2.设置静态IP地址

  首先查看一下原本自动获取到的网关和DNS,记下来

[root@Master ~]# cat /etc/resolv.conf# Generated by NetworkManagernameserver 192.168.28.2 //DNS<br><br> [root@Master ~]# IP routing tableDestination  Gateway   Genmask   Flags MSS Window irtt Ifacedefault   192.168.28.2(网关) 0.0.0.0   UG  0 0   0 ens33192.168.28.0 0.0.0.0   255.255.255.0 U   0 0   0 ens33<br><br> 

[root@Master ~]# vi /etc/sysconfig/network-scripts/ifcfg-ens33 //修改ifcfg-ens33文件,执行此命令后进入如下界面

  

  进入界面后按“I”键进入编辑模式,修改或添加图中标红部分。“static”表示静态地址,“netmask”子网掩码,gateways是网关,设置为上一步查看得到的即可。修改后按“esc”退出编辑模式。输入":wq"保存退出。然后输入以下代码更新网络配置。

systemctl restart network

  3.修改hosts文件

  注明:本人设置Master的IP地址为192.168.28.132,Slave1和Slave2分别为192.168.28.133,192.168.28.134

  输入以下代码修改hosts文件(在真实主机中也需要添加):

vi /etc/hosts<br>添加:<br>192.168.28.132 Master<br>192.168.28.133 Slave1<br>192.168.28.134 Slave2

  4.关闭防火墙

  关闭防火墙代码:

systemctl stop firewalld.service //临时关闭systemctl disable firewalld.service //设置开机不自启

  5.安装Hadoop和JDK

  先创建两个文件夹:

mkdir /tools //用来存放安装包mkdir /bigdata //存放解压之后的文件夹

  使用WinSCP上传压缩包:登录后找到已下载好的压缩包按如下步骤点击上传即可。

  上传文件后,虚拟机端进入tools文件夹并解压文件:

cd /tools //进入tools文件夹tar -zvxf jdk-8u221-linux-x64.tar.gz -C /bigdata/  //解压文件到bigdata目录下<br>tar -zvxf hadoop-3.1.2.

  6.配置系统环境  

vi ~/.bash_profile添加:export JAVA_HOME=/bigdata/jdk1.8.0_221export JRE_HOME=$JAVA_HOME/jreexport CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JRE_HOME/libexport PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/binexport HADOOP_HOME=/bigdata/hadoop-3.1.2export HADOOP_INSTALL=$HADOOP_HOMEexport HADOOP_MAPRED_HOME=$HADOOP_HOMEexport HADOOP_HDFS_HOME=$HADOOP_HOMEexport HADOOP_COMMON_HOME=$HADOOP_HOMEexport HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoopexport PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin<br><br>保存退出,让环境变量生效: source ~/.bash_profile 

 7.配置免密登录(重要)

ssh-keygen -t rsa (直接回车3次)cd ~/.ssh/ssh-copy-id -i id_rsa.pub root@Master ssh-copy-id -i id_rsa.pub root@Slave1 ssh-copy-id -i id_rsa.pub root@Slave2 测试是否成功配置(在配置完Slave之后测试):ssh Slave1可以登录到Slave1节点

五、配置Hadoop

  Hadoop-3.1.2中有许多坑,在2X版本中有些默认的不需要特别配置,但在Hadoop-3.1.2中需要。

  hadoop-env.sh配置:

cd /bigdata/hadoop-3.1.2/etc/hadoop/vi hadoop-env.sh添加:export JAVA_HOME=/bigdata/jdk1.8.0_221export HADOOP_HOME=/bigdata/hadoop-3.1.2export PATH=$PATH:/bigdata/hadoop-3.1.2/binexport HADOOP_OPTS="-Djava.library.path=${HADOOP_HOME}/lib/native" export HADOOP_PID_DIR=/bigdata/hadoop-3.1.2/pids //PID存放目录,若没有此配置则默认存放在tmp临时文件夹中,在启动和关闭HDFS时可能会报错#export HADOOP_ROOT_LOGGER=DEBUG,console //先注释掉,有问题可以打开,将调试信息打印在console上

  hdfs-site.xml:

<configuration>    <property>   <name>dfs.replication</name>    //冗余度,默认为3    <value>1</value> </property> <property> <name>dfs.datanode.data.dir</name> <value>/bigdata/hadoop-3.1.2/dfs/tmp/data</value> </property> <property> <name>dfs.namenode.name.dir</name> <value>/bigdata/hadoop-3.1.2/dfs/tmp/name</value> </property> <property> <name>dfs.permissions</name> <value>false</value> </property></configuration>

  mapred.site.xml:

<configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> <property> <name>mapred.job.tracker</name> <value>Master:9001</value> </property></configuration>

  yarn-site.xml:

<configuration> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <property> <name>yarn.resourcemanager.hostname</name> <value>Master</value> </property><property> <name>yarn.log-aggregation-enable</name> <value>true</value></property><property> <name>yarn.log-aggregation.retain-seconds</name> <value>604800</value></property></configuration>

  core-site.xml:

<configuration> <property> <name>fs.defaultFS</name> <value>hdfs://Master:9000</value> </property> <property> <name>hadoop.tmp.dir</name> <value>/bigdata/hadoop-3.1.2/tmp</value> </property></configuration>

  workers:把默认的localhost删掉

Slave1 192.168.28.133Slave2 192.168.28.134

  yarn-env.sh 添加:

YARN_RESOURCEMANAGER_USER=rootHADOOP_SECURE_DN_USER=yarnYARN_NODEMANAGER_USER=root

  进入/bigdata/hadoop-3.1.2/sbin,修改start-dfs.sh,stop-dfs.sh,都添加:

  

HDFS_DATANODE_USER=rootHDFS_DATANODE_SECURE_USER=hdfsHDFS_NAMENODE_USER=rootHDFS_SECONDARYNAMENODE_USER=root

六、克隆虚拟机

  克隆两个从节点虚拟机,主机名称分别为Slave1,Slave2(需要进入虚拟机中修改),然后分别修改IP地址(具体方法上面有)重启网络,重启虚拟机。

  重启完成后进行namenode格式化:分别对Master、Slave1,Slave2执行:

hadoop namenode -format

  对Master执行

start-all.sh //启动hdfs和yarn

  待完成后用jps查看进程:

[root@Master ~]# jps7840 ResourceManager8164 Jps7323 NameNode7564 SecondaryNameNode

  两Slave的进程:

包含以下两个:DataNodeNodeManager

七、检查

  浏览器输入:在浏览器中输入Master:9870回车,进入hdfs管理页面,点击上方datanode应该可以看到下面有两个节点;

  输入Master:8088回车,进入资源调度管理(yarn)

总结

以上所述是小编给大家介绍的Hadoop-3.1.2完全分布式环境搭建过程图文详解(Windows 10) ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!


  • 上一条:
    windows开发记事本程序纪实(二)逻辑篇1
    下一条:
    Spark在Windows下的环境搭建方法
  • 昵称:

    邮箱:

    0条评论 (评论内容有缓存机制,请悉知!)
    最新最热
    • 分类目录
    • 人生(杂谈)
    • 技术
    • linux
    • Java
    • php
    • 框架(架构)
    • 前端
    • ThinkPHP
    • 数据库
    • 微信(小程序)
    • Laravel
    • Redis
    • Docker
    • Go
    • swoole
    • Windows
    • Python
    • 苹果(mac/ios)
    • 相关文章
    • Windows 10的告别:2025年10月14日,一段时代的终结(0个评论)
    • windows 11激活_Win11 KMS激活流程步骤(1个评论)
    • 安装Windows 11系统的注意了,看看你的cpu是否在微软兼容列表排除中(1个评论)
    • 微软将于2022年9月20日推送Windows11 22H2新版本,推测2024发布windows 12(0个评论)
    • windows11系统中可以关闭禁止的服务及介绍(1个评论)
    • 近期文章
    • 智能合约Solidity学习CryptoZombie二课:让你的僵尸猎食(0个评论)
    • 智能合约Solidity学习CryptoZombie第一课:生成一只你的僵尸(0个评论)
    • 在go中实现一个常用的先进先出的缓存淘汰算法示例代码(0个评论)
    • 在go+gin中使用"github.com/skip2/go-qrcode"实现url转二维码功能(0个评论)
    • 在go语言中使用api.geonames.org接口实现根据国际邮政编码获取地址信息功能(1个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf分页文件功能(0个评论)
    • gmail发邮件报错:534 5.7.9 Application-specific password required...解决方案(0个评论)
    • 欧盟关于强迫劳动的规定的官方举报渠道及官方举报网站(0个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf文件功能(0个评论)
    • Laravel从Accel获得5700万美元A轮融资(0个评论)
    • 近期评论
    • 122 在

      学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..
    • 123 在

      Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..
    • 原梓番博客 在

      在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..
    • 博主 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..
    • 1111 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
    • 2018-01
    • 2018-06
    • 2020-06
    • 2021-06
    • 2021-07
    • 2022-01
    • 2022-04
    • 2022-08
    • 2023-08
    • 2023-10
    • 2024-04
    Top

    Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号 PHP交流群

    侯体宗的博客