部署HDFS集群(完全分布式模式、hadoop用户控制集群、hadoop-3.3.4+安装包)

这篇具有很好参考价值的文章主要介绍了部署HDFS集群(完全分布式模式、hadoop用户控制集群、hadoop-3.3.4+安装包)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

前置

一、上传&解压

(一 )上传

(二)解压

二、修改配置文件

(一)配置workers文件

(二)配置hadoop-env.sh文件

(三)配置core-site.xml文件

(四)配置hdfs-site.xml文件

三、分发到hp2、hp3, 并设置环境变量

(一)准备数据目录   

(二)配置环境变量

四、创建数据目录,并修改文件权限归属hadoop账户

(一)授权为Hadoop用户

(二)格式化整个文件系统

五、查看HDFS WEBUI

六、常见问题


hadoop-3.3.4.tar.gz提取:

链接:https://pan.baidu.com/s/18ILFiIBei8BqUg31MWEGAQ 
提取码:ay17

前置

三台虚拟机硬件配置如下:

节点

CPU

内存

hp1

1核心

4GB

hp2

1核心

2GB

hp3

1核心

2GB

Hadoop HDFS的角色包含:

NameNode:主节点管理者

DataNode:从节点工作者

SecondaryNameNode:主节点辅助

节点

服务

hp1

NameNode、DataNode、SecondaryNameNode

hp2

DataNode

hp3

DataNode

这样的话我们这个集群就是有一个主节点,带领了三个从节点,也就是一个NameNode带领了三个DataNode去工作的一个hdfs集群。此外还有一个SecondaryNameNode的角色也存在。

配置集群之前请确认已经完成前置准备中的服务器创建、固定IP、防火墙关闭、Hadoop用户创建、SSH免密、JDK部署等部署。(没配好的可以参考前面的博客)

一、上传&解压

(一 )上传

1.上传hadoop安装包到hp1节点中

部署HDFS集群(完全分布式模式、hadoop用户控制集群、hadoop-3.3.4+安装包),大数据,hdfs,hadoop,大数据

部署HDFS集群(完全分布式模式、hadoop用户控制集群、hadoop-3.3.4+安装包),大数据,hdfs,hadoop,大数据

(二)解压

1.解压缩安装包到/export/server/中

tar -zxvf hadoop-3.3.4.tar.gz -C /export/server/

部署HDFS集群(完全分布式模式、hadoop用户控制集群、hadoop-3.3.4+安装包),大数据,hdfs,hadoop,大数据

2.构建软链接

先进入/export/server/目录下

部署HDFS集群(完全分布式模式、hadoop用户控制集群、hadoop-3.3.4+安装包),大数据,hdfs,hadoop,大数据

构建软链接

ln -s /export/server/hadoop-3.3.4 hadoop

部署HDFS集群(完全分布式模式、hadoop用户控制集群、hadoop-3.3.4+安装包),大数据,hdfs,hadoop,大数据

可以去看一下hadoop里面的文件

部署HDFS集群(完全分布式模式、hadoop用户控制集群、hadoop-3.3.4+安装包),大数据,hdfs,hadoop,大数据

各个文件夹含义如下

bin , 存放Hadoop的各类程序(命令)

etc , 存放Hadoop的配置文件

include , C语言的一些头文件

lib , 存放Linux系统的动态链接库(.so文件)

libexec , 存放配置Hadoop系统的脚本文件(.sh和.cmd)

licenses-binary , 存放许可证文件

sbin , 管理员程序(super bin)

share , 存放二进制源码(java jar包)

二、修改配置文件

配置HDFS集群,我们主要涉及到如下文件的修改:

workers

配置从节点(DataNode)有哪些

hadoop-env.sh

配置Hadoop的相关环境变量

core-site.xml

Hadoop核心配置文件

hdfs-site.xml

HDFS核心配置文件

这些文件均存在于 $HADOOP_HOME/etc/hadoop文件夹中

Ps: $HADOOP_HOME是后续我们要设置的环境变量,其指代Hadoop安装文件夹即 /export/server/hadoop

部署HDFS集群(完全分布式模式、hadoop用户控制集群、hadoop-3.3.4+安装包),大数据,hdfs,hadoop,大数据

(一)配置workers文件

1.进入配置文件目录

cd etc/hadoop   完整路径:cd /export/server/hadoop/etc/hadoop/

编辑workers文件

部署HDFS集群(完全分布式模式、hadoop用户控制集群、hadoop-3.3.4+安装包),大数据,hdfs,hadoop,大数据

vim workers

把原本的内容删掉,

然后填入以下内容

部署HDFS集群(完全分布式模式、hadoop用户控制集群、hadoop-3.3.4+安装包),大数据,hdfs,hadoop,大数据

填入的hp1、hp2、hp3表明集群记录了三个从节点

(二)配置hadoop-env.sh文件

vim hadoop-env.sh

可以在开头或者结尾加入以下内容

export JAVA_HOME=/export/server/jdk

export HADOOP_HOME=/export/server/hadoop

export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop

export HADOOP_LOG_DIR=$HADOOP_HOME/logs

部署HDFS集群(完全分布式模式、hadoop用户控制集群、hadoop-3.3.4+安装包),大数据,hdfs,hadoop,大数据

JAVA_HOME , 指明JDK环境的位置在哪

HADOOP_HOME , 指明Hadoop安装位置

HADOOP_CONF_DIR , 指明Hadoop配置文件目录位置

conf 是configure,配置  dir是文件夹的缩写

HADOOP_LOG_DIR , 指明Hadoop运行日志目录位置

通过记录这些环境变量,来指明上述运行时的重要信息

(三)配置core-site.xml文件

vim core-site.xml

在<configuration></configuration>之间添加如下内容

    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://hp1:8020</value>
    </property>

    <property>
        <name>io.file.buffer.size</name>
        <value>131072</value>
    </property>

部署HDFS集群(完全分布式模式、hadoop用户控制集群、hadoop-3.3.4+安装包),大数据,hdfs,hadoop,大数据

key: fs.defaultFS

含义:HDFS文件系统的网络通讯路径

值:hdfs://hp1:8020

协议为hdfs://

namenode为hp1

namenode通讯端口为8020

hdfs:hp1:8020为整个HDFS内部的通讯地址,应用协议为hdfs://(Hadoop内置协议)

表明DataNode将和hp1的8020端口通讯,hp1是NameNode所在机器

此配置固定了hp1必须启动NameNode进程

(四)配置hdfs-site.xml文件

在<configuration></configuration>之间添加如下内容

    <property>
        <name>dfs.datanode.data.dir.perm</name>
        <value>700</value>
    </property>

    <property>
        <name>dfs.namenode.name.dir</name>
        <value>/data/nn</value>
    </property>
 
   <property>
        <name>dfs.namenode.hosts</name>
        <value>hp1,hp2,hp3</value>
    </property>

    <property>
        <name>dfs.blocksieze</name>
        <value>268435456</value>
    </property>

    <property>
        <name>dfs.namenode.handler.count</name>
        <value>100</value>
   </property>

   <property>
        <name>dfs.datanode.data.dir</name>
        <value>/data/dn</value>
   </property>

 

部署HDFS集群(完全分布式模式、hadoop用户控制集群、hadoop-3.3.4+安装包),大数据,hdfs,hadoop,大数据

key: dfs.datanode.data.dir.perm

含义:hdfs文件系统,默认创建的文件权限设置

值:700,即rwx------

新建文件默认权限是700

key: dfs.namenode.name.dir

含义:NameNode元数据的存储位置

值:/data/nn,在hp1节点的/data/nn目录下

nn是namenode的缩写

key: dfs.namenode.hosts

含义:NameNode允许哪几个节点的DataNode连接(即允许加入集群)

值:hp1、hp2、hp3,这三台服务器被授权

key: dfs.blocksieze

含义:hdfs默认块大小

值:26843546(256MB)

key: dfs.namenode.handler.count

含义:namenode处理的并发线程数

值:100,以100个并行度处理文件系统的管理任务

key: dfs.datanode.data.dir

含义:从节点DataNode的数据存储目录

值:/data/dn,即数据存放在hp1、hp2、hp3,三台机器的/data/dn内

dn即datanode

三、分发到hp2、hp3, 并设置环境变量

(一)准备数据目录   

<property>
        <name>dfs.namenode.name.dir</name>
        <value>/data/nn</value>
    </property>

    <property>
        <name>dfs.datanode.data.dir</name>
        <value>/data/dn</value>
    </property>

namenode数据存放hp1的/data/nn

datanode数据存放hp1、hp2、hp3的/data/dn

所以应该:

1.在hp1节点:

mkdir -p /data/nn

mkdir /data/dn

部署HDFS集群(完全分布式模式、hadoop用户控制集群、hadoop-3.3.4+安装包),大数据,hdfs,hadoop,大数据

hp2hp3节点:

mkdir -p /data/dn

部署HDFS集群(完全分布式模式、hadoop用户控制集群、hadoop-3.3.4+安装包),大数据,hdfs,hadoop,大数据

部署HDFS集群(完全分布式模式、hadoop用户控制集群、hadoop-3.3.4+安装包),大数据,hdfs,hadoop,大数据

2.分发Hadoop文件夹

目前,已经基本完成Hadoop的配置操作,可以从hp1将hadoop安装文件夹远程复制到hp2、hp3

分发

scp -r hadoop-3.3.4 root@hp2:/export/server/

scp -r hadoop-3.3.4 root@hp3:/export/server/

部署HDFS集群(完全分布式模式、hadoop用户控制集群、hadoop-3.3.4+安装包),大数据,hdfs,hadoop,大数据

部署HDFS集群(完全分布式模式、hadoop用户控制集群、hadoop-3.3.4+安装包),大数据,hdfs,hadoop,大数据

部署HDFS集群(完全分布式模式、hadoop用户控制集群、hadoop-3.3.4+安装包),大数据,hdfs,hadoop,大数据

部署HDFS集群(完全分布式模式、hadoop用户控制集群、hadoop-3.3.4+安装包),大数据,hdfs,hadoop,大数据

在hp2为hadoop配置软连接

ln -s /export/server/hadoop-3.3.4 hadoop

部署HDFS集群(完全分布式模式、hadoop用户控制集群、hadoop-3.3.4+安装包),大数据,hdfs,hadoop,大数据

在hp3为hadoop配置软连接

ln -s /export/server/hadoop-3.3.4 hadoop

部署HDFS集群(完全分布式模式、hadoop用户控制集群、hadoop-3.3.4+安装包),大数据,hdfs,hadoop,大数据

(二)配置环境变量

为了方便我们操作Hadoop,可以将Hadoop的一些脚本、程序配置到PATH中,方便后续使用

在Hadoop文件夹中的bin、sbin两个文件夹内有许多的脚本和程序,现在来配置以下环境变量

vim /etc/profile

export HADOOP_HOME=/export/server/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

部署HDFS集群(完全分布式模式、hadoop用户控制集群、hadoop-3.3.4+安装包),大数据,hdfs,hadoop,大数据

内容添加完成之后,source /etc/profile让环境变量生效

在hp2和hp3配置同样的环境变量

四、创建数据目录,并修改文件权限归属hadoop账户

(一)授权为Hadoop用户

Hadoop部署的准备工作基本完成

为了确保安全,hadoop系统不以root用户启动,我们以普通用户hadoop来启动整个Hadoop服务

所以,现在需要对文件权限进行授权

1.以root身份,在hp1、hp2、hp3三台服务器上均执行以下命令

chown -R hadoop:hadoop /data

chown -R hadoop:hadoop /export

部署HDFS集群(完全分布式模式、hadoop用户控制集群、hadoop-3.3.4+安装包),大数据,hdfs,hadoop,大数据

(二)格式化整个文件系统

前期准备全部完成,现在对整个文件系统执行初始化

1.确保以hadoop用户执行

先切换用户

su - hadoop

部署HDFS集群(完全分布式模式、hadoop用户控制集群、hadoop-3.3.4+安装包),大数据,hdfs,hadoop,大数据

格式化namenode

hadoop namenode -format

部署HDFS集群(完全分布式模式、hadoop用户控制集群、hadoop-3.3.4+安装包),大数据,hdfs,hadoop,大数据

可以cd进去看到里面多了一些文件

current里面都是namenode的源数据

部署HDFS集群(完全分布式模式、hadoop用户控制集群、hadoop-3.3.4+安装包),大数据,hdfs,hadoop,大数据

2.一键启动hdfs集群

start-dfs.sh

部署HDFS集群(完全分布式模式、hadoop用户控制集群、hadoop-3.3.4+安装包),大数据,hdfs,hadoop,大数据

第一次启动的时候会有个警告说logs这个文件不存在,不用管它。这是运行的日志文件夹。

(第一次忘记截图了,所以从别的地方找的图,由于连接工具不一样,所以图形界面有差异)

Jps可以查看当前运行的进程

部署HDFS集群(完全分布式模式、hadoop用户控制集群、hadoop-3.3.4+安装包),大数据,hdfs,hadoop,大数据

部署HDFS集群(完全分布式模式、hadoop用户控制集群、hadoop-3.3.4+安装包),大数据,hdfs,hadoop,大数据

部署HDFS集群(完全分布式模式、hadoop用户控制集群、hadoop-3.3.4+安装包),大数据,hdfs,hadoop,大数据

一键关闭hdfs集群

stop-dfs.sh

如果遇到命令未找到的错误,表面环境变量未配置好,可以以绝对路径执行

/export/server/hadoop/sbin/start-dfs.sh

/export/server/hadoop/sbin/stop-dfs.sh

五、查看HDFS WEBUI

http://hp1:9870 ,即可查看到hdfs文件系统的管理网页。

部署HDFS集群(完全分布式模式、hadoop用户控制集群、hadoop-3.3.4+安装包),大数据,hdfs,hadoop,大数据

hdfs在运行的时候,会给我们提供一个管理平台网站页面,它是namenode所在服务器。

9870是namenode所在服务器的端口

往下翻,有汇总信息

部署HDFS集群(完全分布式模式、hadoop用户控制集群、hadoop-3.3.4+安装包),大数据,hdfs,hadoop,大数据

在线node就是我们naemnode下面的小弟,

点进去可以看到整个hdfs文件系统的一些基本信息

部署HDFS集群(完全分布式模式、hadoop用户控制集群、hadoop-3.3.4+安装包),大数据,hdfs,hadoop,大数据

注意!!一定要hadoop用户去操作集群,以root执行的话所有权就会回归root,后续以hadoop用户启动会出错(没有权限)!

关闭集群后再关闭虚拟机,就可以进行快照的拍摄

每一台都需要进行快照的拍摄

部署HDFS集群(完全分布式模式、hadoop用户控制集群、hadoop-3.3.4+安装包),大数据,hdfs,hadoop,大数据

六、常见问题

Permission denied(权限被拒绝)

hadoop安装文件夹或/data文件夹,未授权给hadoop用户,则无权限操作,所有的Permission denied提示,都是权限导致的。

出现command not found

没有配置好环境变量导致的

启动后仅hp1有进程出现

hp2、hp3没反应

检查workers文件有没有正确配置

start-dfs.sh脚本会:

在当前机器启动SecondaryNameNode , 并根据core-site.xml的记录启动NameNode

根据workers文件的记录,启动各个机器的datanode文章来源地址https://www.toymoban.com/news/detail-850767.html

到了这里,关于部署HDFS集群(完全分布式模式、hadoop用户控制集群、hadoop-3.3.4+安装包)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • HadoopHA模式(由于Hadoop的HA模式是在Hadoop完全分布式基础上,利用zookeeper等协调工具配置的高可用的Hadoop集群模式)

    目录 1.前期准备 1.1.hadoop-3.1.3.tar.gz,jdk-8u212-linux-x64.tar.gz,apache-zookeeper-3.5.7-bin.tar.gz三个包提取码:k5y6 2.解压安装包,配置环境变量 3. 将三个节点分别命名为master、slave1、slave2并做免密登录 免密在前面Hadoop完全分布式搭建说过,这里不再赘述 4.搭建zookeeper集群  根据配置的

    2024年02月04日
    浏览(30)
  • 大数据技术栈-Hadoop3.3.4-完全分布式集群搭建部署-centos7(完全超详细-小白注释版)虚拟机安装+平台部署

    目录 环境条件: 1、安装虚拟机(已安装好虚拟机的可跳转至  二、安装JDK与Hadoop) (1)直接新建一台虚拟机 (2)首次启用虚拟机,进行安装 一、集群前置环境搭建(三台机器分别设置hostname、网卡(ip)配置、ssh免密登录) 1、查看一下本机与虚拟机的网卡和ip信息 (1)

    2024年02月06日
    浏览(40)
  • 【Hadoop】完全分布式集群搭建

    大家好,我是向阳花花花花,这篇文章是我历时三天,推翻重做两小时进行搭建的Hadoop集群(完全分布式)个人笔记和感想,收录于初心的《大数据》专栏。 🏠 个人主页:初心%个人主页 🧑 个人简介:大家好,我是初心,一名正在努力的双非二本院校计算机专业学生 💕

    2024年02月15日
    浏览(27)
  • Hadoop 完全分布式集群搭建

    部署前可以先了解下 Hadoop运行模式及目录结构-CSDN博客 服务 hadoop102 hadoop103 hadoop104 NameNode √ DataNode √ √ √ Secondary NameNode √ ResourceManager √ NodeManager √ √ √ JobHistoryServer √ IPv4 192.168.88.102 192.168.88.103 192.168.88.104 NodeObject master worker1 worker2 最小化安装 Neokylin7.0 用于搭建 Had

    2024年02月04日
    浏览(42)
  • Hadoop完全分布式集群搭建

    1.在虚拟机关机的状态下选择克隆 2.开始克隆 3.选择从当前状态创建 4.创建一个完整的克隆 5.选择新的虚拟机存储位置(选择内存充足的磁盘) 6.开始克隆 7.克隆完成 8.同样的方法克隆第二台虚拟机 9.在计算机中存在三台虚拟机 将第一台虚拟机更名为hadoop01 修改hadoop01的主机

    2024年02月02日
    浏览(33)
  • 1.1完全分布式Hadoop署集群

    大家好,我是行不更名,坐不改姓的宋晓刚,下面将带领大家从基础到小白Hadoop学习,跟上我的步伐进入Hadoop的世界。 微信:15319589104 QQ: 2981345658 文章介绍: 在大数据时代,Hadoop已成为处理海量数据的必备工具。但如何从零开始搭建一个完整的Hadoop分布式集群呢?本文将为

    2024年01月23日
    浏览(31)
  • hadoop-3.3.3完全分布式集群搭建

    随着大数据的不断发展,hadoop在前段时间就已经更新到了3.x版本,与2.x版本存在着一些差异,在某大数据竞赛中也是使用的hadoop3.x的版本,本文就介绍hadoop3.x版本的完全分布式集群搭建。 jdk:1.8 hadoop:3.3.3 操作系统:centos7 需要的所有安装包都放在master节点的/opt目录下,安

    2024年02月09日
    浏览(28)
  • hadoop完全分布式集群搭建(超详细)-大数据集群搭建

    本次搭建完全分布式集群用到的环境有: jdk1.8.0 hadoop-2.7.7 本次搭建集群所需环境也给大家准备了,下载链接地址:https://share.weiyun.com/dk7WgaVk 密码:553ubk 本次完全分布式集群搭建需要提前建立好三台虚拟机,我分别把它们的主机名命名为:master,slave1,slave2 一.配置免密登陆 首先

    2024年02月10日
    浏览(33)
  • Hadoop3.1.4完全分布式集群搭建

    在Centos7中直接使用root用户执行hostnamectl命令修改,重启(reboot)后永久生效。 要求:三台主机的名字分别为:master slave1 slave2 关闭后,可查看防火墙状态,当显示disavtive(dead)的字样,说明CentOS 7防火墙已经关闭。 但要注意的是,上面的命令只是临时关闭了CentOS 7防火墙,

    2024年04月17日
    浏览(38)
  • Linux环境搭建Hadoop及完全分布式集群

    Hadoop是一个开源的分布式计算框架,旨在处理大规模数据集和进行并行计算。核心包括两个组件:HFDS、MapReduce。 配置方案 各虚拟机的用户名分别为test0、test1、test2,主机名为hadoop100、hadoop101、hadoop102 虚拟机的分配如下: hadoop100:NameNode + ResourceManager hadoop101:DataNode + NodeM

    2024年03月23日
    浏览(28)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包