hadoop集群规划部署

一、集群规划

三台硬件资源,部署hadoop版本,hadoop-3.3.5 ,部署后配置文件。

Hadoop配置文件分两类:默认配置文件自定义配置文件。

hadoop102hadoop103hadoop104
HDFS

NameNode

DataNode

DataNode

SecondaryNameNode

DataNode

YARN

NodeManager

ResourceManager

NodeManager

NodeManager

需要知道的知识点

1-HDFS 进行了GFS 的开源实现,Hadoop 的 MapReduce 是 Google 的 MapReduce 分布式处理的开源实现,而 HBase 作为一种 Hadoop 生态系统的分布式数据库,是 BigTable 的开源实现。

2-Hadoop 2.0以上版本有4个重要组成部分: HDFS (Hadoop Distributed File System)、       MapReduce、YARN( Yet Another Resource Negotiator)、COMMON (Hadoop 生态圈).

3-Hadoop 最突出的两个特点是分布式容错机制

4-Hadoop 的分布式体现在它是主从结构,不管是进行计算还是存储,都采用主从结构。
1)任务调度中的分布式特点—YARN,YARN机制,主节点接受一个由客户端发起的作业请求之后便选择一个普通节点,也称为从节点或工作节点,在该节点上成立对于作业的执行机构,再由这个执行机构操办和管理作业的从节点运行,而主节点则专门负责资源分配。
2)文件存储中的分布式特点—HDFS,HDFS是Hadoop的分布式文件系统。HDFS的目录服务器主节点上并不存储数据块备份,而是存储所有文件和目录的“元数据”。
存储着数据块的从节点称为DataNode。应用程序需要访问某个文件中某个位置上的数据时,首先需要向主节点询问该数据位于第几个从节点上,然后去该从节点访问数据。

5-Hadoop的容错机制主要体现在两个里面:HDFS  和  MapReduce。

---------------------------------

二、默认配置文件

hadoop安装包解压以后,到目录:hadoop-3.3.5\share\hadoop 寻找下面的jar包:

获取的默认文件

文件存放在Hadoop的jar包中的位置

[core-default.xml]

hadoop-common-3.3.5.jar/core-default.xml

[hdfs-default.xml]

hadoop-hdfs-3.3.5.jar/hdfs-default.xml

[yarn-default.xml]

hadoop-yarn-common-3.3.5.jar/yarn-default.xml

[mapred-default.xml]

hadoop-mapreduce-client-core-3.3.5.jar/mapred-default.xml

三、自定义配置文件

core-site.xmlhdfs-site.xmlyarn-site.xmlmapred-site.xml四个配置文件存放在$HADOOP_HOME/etc/hadoop这个路径上用户可以根据项目需求重新进行修改配置。

按照hadoop路径为opt/module/hadoop-3.3.5 所以配置文件在这个路径下继续/etc/hadoop

四、配置集群

4-1-核心配置文件

按之前设定的配置方案配置core-site.xml

[antares@hadoop102 ~]$ cd  $HADOOP_HOME/etc/hadoop

[antares@hadoop102 hadoop]$ vim core-site.xml

<?xml version="1.0" encoding="UTF-8"?>

<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<configuration>

    <!-- 指定NameNode的地址 -->

    <property>

        <name>fs.defaultFS</name>

        <value>hdfs://hadoop102:8020</value>

    </property>

    <!-- 指定hadoop数据的存储目录 -->

    <property>

        <name>hadoop.tmp.dir</name>

        <value>/opt/module/hadoop-3.3.5/data</value>

    </property>

    <!-- 配置HDFS网页登录使用的静态用户为antares -->

    <property>

        <name>hadoop.http.staticuser.user</name>

        <value>antares</value>

    </property>

</configuration>

4-2-配置hdfs-site.xml

[antares@hadoop102 hadoop]$ vim hdfs-site.xml

<?xml version="1.0" encoding="UTF-8"?>

<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<configuration>

    <!-- namenode web端访问地址-->

    <property>

        <name>dfs.namenode.http-address</name>

        <value>hadoop102:9870</value>

    </property>

    <!-- secondary namenode web端访问地址-->

    <property>

        <name>dfs.namenode.secondary.http-address</name>

        <value>hadoop104:9868</value>

    </property>

</configuration>

4-3-YARN配置文件

[antares@hadoop102 hadoop]$ vim yarn-site.xml

<configuration>

    <!-- 指定MRshuffle -->

    <property>

        <name>yarn.nodemanager.aux-services</name>

        <value>mapreduce_shuffle</value>

    </property>

    <!-- 指定ResourceManager的地址-->

    <property>

        <name>yarn.resourcemanager.hostname</name>

        <value>hadoop103</value>

    </property>

    <!-- 环境变量的继承 -->

    <property>

        <name>yarn.nodemanager.env-whitelist</name>

       <value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value>

    </property>

</configuration>

4-4-MapReduce配置文件

[antares@hadoop102 hadoop]$ vim mapred-site.xml

<?xml version="1.0" encoding="UTF-8"?>

<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<configuration>

    <!-- 指定MapReduce程序运行在Yarn -->

    <property>

        <name>mapreduce.framework.name</name>

        <value>yarn</value>

    </property>

</configuration>

4-5在集群上分发配置好的Hadoop配置文件

可以自己创建统一分发命令,或是使用scp拷贝的方式,不过需要删除其他资源上原来的文件或是重命名原文件。这里不再累述。关于文件分发命令需要单独做个自定义的命令。

确认资源103104上已有配置文件

cat /opt/module/hadoop-3.3.5/etc/hadoop/core-site.xml

五、配置worker

[antares@hadoop102 hadoop]$ vim /opt/module/hadoop-3.3.5/etc/hadoop/workers

文件中添加下述内容:

hadoop102

hadoop103

hadoop104

同步所有节点配置文件 :Hadoop103 & hadoop104 都需要配置上worker.

六、启动集群

6-1 如果集群是第一次启动

根据上述的部署规划,102资源上 部署的是NameNode,需要在hadoop102节点格式化NameNode。

这里有个必坑指南:(注意:格式化NameNode,会产生新的集群id,导致NameNode和DataNode的集群id不一致,集群找不到已往数据。如果集群在运行过程中报错,需要重新格式化NameNode的话,一定要先停止namenode和datanode进程,并且要删除所有机器的data和logs目录,然后再进行格式化。)

回到hadoop根目录,hadoop102节点格式化NameNode

[antares@hadoop102 hadoop-3.3.5]$ pwd

/opt/module/hadoop-3.3.5

[antares@hadoop102 hadoop-3.3.5]$ hdfs namenode -format

# 查看data中的namenode信息hdfs namenode -format

[antares@hadoop102 hadoop-3.3.5]$ ls data/dfs/name/current/

6-2 启动HDFS

[antares@hadoop102 hadoop-3.3.5]$ sbin/start-dfs.sh 

6-3 启动YARN

在配置了ResourceManager的节点(hadoop103)启动YARN

[antares@hadoop103 hadoop-3.3.5]$ sbin/start-yarn.sh

6-4 Web端查看HDFS的NameNode

a)浏览器中输入:http://hadoop102:9870

b)查看HDFS上存储的数据信息(顶部导航栏Utilities下拉菜单)

6-5 Web端查看YARN的ResourceManager

(a)浏览器中输入:http://hadoop103:8088
(b)查看YARN上运行的Job信息

七、集群基本测试

1)上传文件到集群

Ø 上传小文件,在浏览器中查看文件内容

[antares@hadoop102 ~]$ hadoop fs -mkdir /test

[antares@hadoop102 ~]$ hadoop fs -put $HADOOP_HOME/testinput/kk.txt /test
put: `/opt/module/hadoop-3.3.5/testinput/kk.txt': No such file or directory

若出现上述报错,可以找到$HADOOP_HOME 看下面有哪些目录有小文件

可以利用现有的文件夹重新上传小文件,建立了两个小文件:

[antares@hadoop102 ~]$ hadoop fs -put $HADOOP_HOME/wcinput/word.txt /input

[antares@hadoop102 ~]$ hadoop fs -put $HADOOP_HOME/wcinput/word.txt /test

 

进入102资源的浏览器下查看上传的小文件情况

Ø 上传大文件,在浏览器中查看文件内容

[antares@hadoop102 ~]$ hadoop fs -put  /opt/software/jdk-8u391-linux-x64.tar.gz  /test

下述浏览器可以看到该文件做了3个副本,相当于备份了3份。 

上传文件后查看文件存放在什么位置-查看HDFS文件存储路径

[antares@hadoop102 subdir0]$ pwd
/opt/module/hadoop-3.3.5/data/dfs/data/current/BP-1445008223-192.168.193.161-1706011370209/current/finalized/subdir0/subdir0

 [antares@hadoop102 subdir0]$ cat blk_1073741826

 小文件得时候不做切片,大文件会出现切片:

检查103 和 104 资源上的备份情况如下:

 

测试通过,集群搭建完成。 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/427953.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何在 Ubuntu 20.04 上安装 Nginx

前些天发现了一个人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;最重要的屌图甚多&#xff0c;忍不住分享一下给大家。点击跳转到网站。 如何在 Ubuntu 20.04 上安装 Nginx 介绍 Nginx是世界上最受欢迎的 Web 服务器之一&#xff0c;负责托管互联网…

Visual Studio 2022使用Git流程

前提已配置好SSH密钥 1)找到github上的项目&#xff0c;先fork到自己仓库 2)使用Visual Studio 2022克隆项目地址 本地存储库名&#xff1a;wind_json 3)更改代码&#xff0c;会变成打勾状态 4)右键Git,点提交或存储 5&#xff09;点击暂存&#xff0c;类似git add到本地 …

48V转5V 48V转3.3V 60V转5V 60V转3.3V 降压恒压芯片 单片机供电芯片-H6601

单片机供电芯片的工作原理是确保单片机稳定可靠地工作所需的电源供应。以下是一般单片机供电芯片的工作原理&#xff1a; 电源输入&#xff1a;单片机供电芯片通常从外部电源或电池获得电能。这个电源输入可以是直流&#xff08;DC&#xff09;电压&#xff0c;其电压范围根据…

uniapp scroll-view 点击左右方向按键自动滚动到设置位置

//左按钮<image src"" click"slideLeft"></image><scroll-view class"uni-swiper-tab" scroll-x ref"scrollView" :scroll-left"scrollLeft"><view class"scrollx_items" v-for"(img…

Zephyr 源码调试

背景 调试环境对于学习源码非常重要&#xff0c;但嵌入式系统的调试环境搭建稍微有点复杂&#xff0c;需要的条件略多。本文章介绍如何在 Zephyr 提供的 qemu 上调试 Zephyr 源码&#xff0c;为后续分析 Zephyr OS 相关原理做铺垫。 环境 我的开发环境为 wsl ubuntu&#xf…

spire.doc合并word文档

文章目录 spire.doc合并word文档1. 引入maven依赖2. 需要合并的word3. 合并文档代码4. 合并结果 spire.doc合并word文档 1. 引入maven依赖 <repositories><repository><id>com.e-iceblue</id><name>e-iceblue</name><url>https://r…

网安培训第一期——sql注入+文件

文章目录 sql inject报错注入time盲注联合查询万能密码拦截和过滤ascii注入流程base64查询的列名为mysql保留关键字key 文件上传ffuf脚本要做的三件事网络端口进程用户权限文件文件包含文件下载XSS跨站请求攻击csrf跨站请求伪造 sql inject 判断输入字段是字符串还是数字 方法…

【C++修炼秘籍】List深度剖析

【C修炼秘籍】STL-List ☀️心有所向&#xff0c;日复一日&#xff0c;必有精进 ☀️专栏《C修炼秘籍》 ☀️作者&#xff1a;早凉 ☀️如果有错误&#xff0c;烦请指正&#xff0c;如有疑问可私信联系&#xff1b; 目录 【C修炼秘籍】STL-List 文章目录 前言 一、list介绍…

5G-A:“繁花”盛开在2024

2019年&#xff0c;我国正式发牌5G&#xff0c;开启5G商用新时代。通信技术十年一代&#xff0c;五年过去了&#xff0c;5G是否要进入“半代更迭”阶段&#xff1f; 2024年被视为5G-A商用元年&#xff0c;是5G走向6G的关键一跃。5G-A以R18为演进起点&#xff0c;在连接速率、网…

matlab appdesigner系列-容器2-选项卡组

所谓容器&#xff0c;就是可以放置常有组件的空间&#xff0c;类似一种画布。默认背景画布就是一张画布&#xff0c;选项卡组&#xff0c;可以同时增加好几个画布空间&#xff0c;以满足不的组件放置需求。 1&#xff09;将选项卡组拖拽到画布上 2&#xff09;将选项卡组拉大背…

CSS3基础知识总结

目录 一、CSS3 边框 1.border-radius&#xff1a;圆角边框 2.box-shadow&#xff1a;添加阴影 3.border-image&#xff1a;图片边框 二、CSS3 渐变 1.线性渐变(Linear Gradients) a.由上到下&#xff08;默认&#xff09; b.从左到右 c.对角 d.使用角度 2.径向渐变(…

HTTP与HTTPS的工作流程

HTTP与HTTPS的工作流程 http知识点回顾1、HTTP访问的过程2、HTTP常见状态码3、HTTP 协议一共五大特点 https的工作流程1、对称加密2、非对称加密3、https工作流程 http知识点回顾 1、HTTP访问的过程 &#xff08;1&#xff09;解析url&#xff0c;获取 url 中包含的域名&…