hdfs
文章平均质量分 88
陈猿解码
这个作者很懒,什么都没留下…
展开
-
hdfs回收站的配置使用与注意事项
【概述】在hdfs使用过程中,通过"rm"命令可以进行文件的删除,然后有时候,难免会出现误删了某个文件。那么hdfs是否存在回收站的功能,文件删除而不是真的删除,而是先进入垃圾回收站,这样可以对误删的文件有机会进行还原。本文就来聊聊hdfs中的回收站功能原理【配置使用】hdfs的回收站功能默认是不开启的,如需使用,只需在namenode的配置文件`core-site.xml`中增加如下配置项即可:...原创 2022-10-15 23:42:27 · 1586 阅读 · 0 评论 -
hdfs的一个运维小技巧
【前言】对于hdfs而言,磁盘故障的处理或者节点的扩容是比较常见的运维操作。对于这种场景的运维操作是相对比较简单的,但关键在于如何快速的使数据在各个dn之间平衡,或者快速的使block数据达到指定的副本数,本文就来聊聊这个小技巧。【块平衡】在hdfs的实际使用过程中,难免会遇到DN的异常停止服务的时候。在这种情况下,当NN检测到DN处于异常后,为保证数据满足指定的副本数,因此会逐步为该DN上的所有...原创 2022-09-27 00:21:57 · 989 阅读 · 0 评论 -
2.X版本又一个极端情况下的偶现严重问题
【概述】前段时间,在异常测试的环境里,发现yarn任务无法提交,经过逐步排查,最后发现在一个极端的场景下,存在JN不会重新向kerberos进行认证,导致整体均无法提供服务的情况。本文就来详细聊聊问题出现时的情况以及分析复现过程。【问题分析】某天下午,突然被拉到一个群里,上层业务的开发兄弟@我,说所有的yarn任务都无法提交了,麻烦看下是怎么回事?知晓问题后,先看了下RM的情况,发现两个RM都是s...原创 2022-09-21 00:01:54 · 574 阅读 · 1 评论 -
被这个参数三杀了
最近接连排查了几个问题,居然都是同一个参数引起的,本文就通过实际案例讲述下该参数如何引发问题的,以及问题最终又是如何解决的~【First Blood】在我们的环境中,RM是基于HA的方式部署的,并且RM是基于容器的方式运行的,即两个RM运行在各自的容器中;同时,我们还开启了kerberos认证,因此两个RM的hostname配置的是域名。主要的配置信息如下所示:<p...原创 2022-06-07 23:57:52 · 1160 阅读 · 1 评论 -
一文讲透hdfs的delegation token
【背景】前一段时间总结了hadoop中的token认证、yarn任务运行中的token,其中也都提到了delegation token。而最近也遇到了一个问题,问题现象是:flink任务运行超过七天后,由于宿主机异常导致任务失败,继而触发任务的重试,但接连重试几次都是失败的,并且任务的日志也没有聚合,导致无法分析问题失败的原因。最后发现是和delegation token...原创 2022-07-25 07:01:57 · 1999 阅读 · 5 评论 -
2.X版本的一个通病问题
【概述】对于配置了HA模式的RM或者NN,客户端如果向standby的节点发送请求,会因为不可连接或standby拒绝提供服务导致请求失败,转而向Active的节点发送请求,这个转换是hadoop客户端内部自动完成的,无须上层业务感知(本质上是向其中一个节点发送请求,如果失败则继续向另外一个节点发送请求)。上周排查了一个相关的问题,在集群正常的情况下,向两个节点发送请求都...原创 2022-06-22 23:02:20 · 1357 阅读 · 0 评论 -
HDFS的集群信息
【概述】我们都知道整个hdfs由nn+zkfc,dn,jn组成,这些可能运行在不同节点上的组件能组成一个集群,其中包含了共同的集群信息,并且各自将集群信息持久化存储到了本地,这个文件就是VERSION文件。本文就来聊聊VERSION文件的相关内容。【各组件中的VERSION文件】1. nn中的version文件version文件的存储位置及具体内容如下:#/home/h...原创 2022-03-25 22:32:48 · 416 阅读 · 0 评论 -
一文搞懂hadoop中的用户
又有一段时间没有更新了,最近忙着搬砖的同时,也填了一些坑,其中不少坑是有关联的,甚至其中有一个配置项接连引发了两三个问题,后续打算逐个总结输出,这里先进行一些铺垫~【hadoop的用户概述】在hadoop中,客户端不管是向hdfs请求上传下载文件,还是向yarn提交任务、下载查看任务的日志,都会指定一个用户来进行操作。在开启了ACL鉴权机制后,hdfs的namenode,...原创 2022-04-23 00:13:10 · 4799 阅读 · 1 评论 -
HDFS——JN扩容的正确姿势
【前言】有一段时间没有更文了,一方面是之前准备的hudi系列由于一些细节还没研究得很清楚,暂时没有继续更新。另一方面,最近事情相当多,回家后收拾收拾就十一二点了,也就没有再进行总结输出了。...原创 2022-03-10 00:41:22 · 687 阅读 · 2 评论 -
如何系统学习hdfs
这一年多的时间里,hdfs源码(原理)分析累计也写了30多篇文章了,来一篇文章进行汇总。这篇文章将按照自己的理解来系统的梳理下,应该如何系统的学习hdfs。先直接上个脑图:入门首先得了解H...原创 2022-02-07 21:15:03 · 1165 阅读 · 0 评论 -
一文搞懂hadoop的metrics
【概述】一个成熟的项目通常都会自带提供metric,反映运行时内部的各个信息,以方便进行监控运维。hadoop也不例外,通过jmx可以查看内部各个metrics信息,本文就来聊聊hdfs的...原创 2022-01-29 22:04:22 · 2180 阅读 · 0 评论 -
hdfs——nn的启动优化
【概述】上一篇文章讲解了,在一定DN节点规模,一定block数据量下的并发写文件的优化问题。在这种节点、数据量规模的集群中,当HDFS全部重启(nn+dn全部重启),或者两个NN都重启后,...原创 2022-01-24 23:19:26 · 1381 阅读 · 0 评论 -
HDFS用了这个优化后,性能直接翻倍
【背景】前段时间在HDFS的dn节点规模1000+的环境中,并且有1亿block数据量的情况下, 进行大量并发写文件测试时,发现部分客户端写异常并导致最终仅写入了部分数据,本文就该问题进行...原创 2022-01-15 00:08:13 · 2154 阅读 · 2 评论 -
Datanode的磁盘写满了怎么办?
【背景】回家路上,接到运维兄弟的电话,说一线上环境,某个DN异常了,原因是有个磁盘写满了,他准备将这个盘剔除出去,重启下DN,问我数据会不会丢失。我说数据不会丢,我们的数据都是多副本的。这...原创 2021-11-17 23:14:17 · 2095 阅读 · 0 评论 -
5000字12张图讲解nn内存中的元数据信息
namenode作为hdfs中的元数据的管理模块,免不了会提到元数据包括哪些?在内存中又是如何存储管理的,本文就来聊聊nn内存中的元数据信息。【整体概况】在HDFS中,NN的主要作用是元数...原创 2021-12-09 23:16:10 · 1157 阅读 · 0 评论 -
说说hdfs是如何处理块副本多余和缺失的
上一文,我们讲了nn在内存中如何对元数据进行存储和管理的,文章最后也提到了nn内部如何保证块的副本数维持在指定个数,即对副本缺失的块触发块副本复制,对副本多余的块触发块副本删除。本文就来详...原创 2021-12-17 01:20:09 · 1969 阅读 · 2 评论 -
一文搞懂Hadoop Archive
【概述】在HDFS存储体系中,可存储的文件数量受限于NN的内存大小。因为在NN内存中,存储了所有文件的block信息。因此,对于大量小文件问题,可通过联邦(Federation)和归档(A...原创 2021-11-11 01:04:29 · 3593 阅读 · 0 评论 -
BlockToken原理剖析
【简介】Hadoop安全需要解决两个问题:一个是认证,即解决用户身份合法性验证问题;另一个是授权,即解决认证用户的操作范围问题。对于认证,Hadoop设计了Security特性和Block...原创 2021-10-29 08:37:43 · 1015 阅读 · 0 评论 -
一文搞定Journal Node原理
【概述】hdfs的HA机制,具体来说可以分为两部分,一部分是基于zkfc、zookeeper完成nn之间的选主;而另一部分则是nn之间的元数据共享与同步。从hdfs2.0版本开始,引入了H...原创 2021-10-23 01:06:53 · 3484 阅读 · 2 评论 -
聊聊HDFS中的权限管理
HDFS是一个面向多用户的分布式文件系统。既然是多用户,那么不同用户存储的文件通常需要进行权限隔离,防止被其他用户修改或误删。本文就来聊聊HDFS中的权限管理。权限校验要启用权限校验,首先...原创 2021-08-18 23:55:55 · 3205 阅读 · 0 评论 -
HDFS——块汇报
在《HDFS——写文件流程》一文中,讲述了HDFS的写文件流程。来考虑这么一个问题,客户端在申请block时,是否可以连续多申请几个block,然后对不同的block并发写,以提升写的速度...原创 2021-08-14 00:14:09 · 1888 阅读 · 0 评论 -
HDFS——写文件中的异常处理
记得看过一本书,里面是这么写的,软件开发中的二八原则,80%的时间运行的是正常流程,20%的时间是异常流程。而实际代码中,80%的代码是在处理异常逻辑,而正常流程只占20%。由此可见,异常...原创 2021-08-11 00:11:26 · 2397 阅读 · 0 评论 -
HDFS——写文件流程
上篇文章讲了数据传输的格式,本文就来说说hdfs中写文件的流程。hdfs客户端写文件的流程,大体可以分为两个步骤:第一步是创建或打开文件,第二步是进行block的写操作。block的写操作...原创 2021-08-06 23:19:35 · 1838 阅读 · 0 评论 -
HDFS——读写文件的数据传输格式
hdfs中很重要的一个流程就是数据的读写,但在此之前,需要先了解数据是如何传输的,数据包的具体的传输格式是怎样的,本文就此进行总结说明。【数据包格式】要了解客户端写hdfs是如何组织数据的...原创 2021-08-04 00:07:12 · 1601 阅读 · 0 评论 -
HDFS——配额
【配额】HDFS中,配额用于限制目录的使用空间,具体可分为名称配额和空间配额。空间配额指的是单个目录中所有文件总的大小限制,文件副本的大小也计算在内。名称配额指的是根目录树中的文件和目录的...原创 2021-04-17 22:59:03 · 1861 阅读 · 0 评论 -
HDFS——Namenode的HA机制
【整体设计】NN(Namenode)的HA机制主要依靠zkfc完成,zkfc在NN所在节点以独立进程的方式运行。其内部主要由主控模块(ZKFailoverController)、健康检测模...原创 2021-03-16 00:29:05 · 1511 阅读 · 0 评论 -
Hadoop中的RPC
【概述】在hadoop中,客户端与namenode、datanode与namenode、dfsadmin与namenode、客户端与resourcemanager等模块之间的交互都采用rp...原创 2021-02-22 23:30:16 · 2250 阅读 · 2 评论 -
HDFS——DN启动慢的分析
【前言】在测试过程中,发现了一个问题,记录相关的分析过程、内部原理与优化。【问题与分析】在测试过程中,发现一个问题:单个dn在配置一块磁盘,存储900w+的block的情况下,重启dn后...原创 2021-01-27 23:38:01 · 1155 阅读 · 0 评论 -
HDFS——块扫描与目录扫描
【前言】在dn整体架构一文中提到了逻辑业务层包括BP管理、块扫描和目录扫描,文本就来聊聊块扫描和目录扫描的大概原理。【块扫描】块扫描主要是对dn上存储的所有block进行数据完整性校验。...原创 2021-01-26 22:47:59 · 1332 阅读 · 3 评论 -
HDFS——DN整体架构与启动流程
前面文件介绍了dn的持久化文件与对应的数据结构,本文来介绍写dn的整体架构,以及dn的启动流程。【整体架构】如图所示,从功能逻辑上来划分,dn的架构可以分为三层。最上层为服务层,这一层主...原创 2021-01-24 00:00:54 · 1174 阅读 · 2 评论 -
HDFS——DN的存储数据结构
【前言】在《DN的持久化文件》一文中介绍了dn持久化文件以及对应的目录结构,那么在dn的内部实现中,又是怎样将这些数据结构串联起来的呢?文本就来介绍dn存储实现的相关内容。【数据结构】在...原创 2021-01-22 23:33:00 · 1412 阅读 · 0 评论 -
HDFS——DN的持久化文件
【前言】在HDFS中,NameNode存储了整个集群的元数据信息,DataNode(下面都简称dn)负责实际数据的存储,这些数据最终持久化到磁盘中。那么这些持久化的文件都包括哪些?分别都...原创 2021-01-16 23:12:09 · 1177 阅读 · 2 评论 -
HDFS——editLog文件
【概述】在HDFS中,namenode保存了整个HDFS的元数据信息,而这些数据最终会被持久化到fsimage文件和editLog文件。换而言之,namenode的元数据信息由fsima...原创 2020-03-28 22:47:47 · 3204 阅读 · 0 评论 -
Hadoop——健康检测
【前言】通常后端服务都会设计自身的健康检测逻辑。所谓的健康检测,就是定期检测节点运行所必须的环境是否满足需求,如果不满足则拒绝提供服务。HDFS和YARN中涉及的各个服务也不例外,基本上...原创 2020-05-10 22:05:24 · 2163 阅读 · 0 评论 -
HDFS——fsimage
【前言】在《HDFS——editLog文件》一文中提到了namenode(后面简称nn)的元数据信息由editlog和fsimage文件组成。editlog文件记录对文件系统的写操作,f...原创 2020-05-19 12:53:40 · 3274 阅读 · 0 评论 -
HDFS——租约
【概述】HDFS客户端在写文件之前需要先获得租约,该租约充当文件的锁,以防止多个客户端对该文件的同时写入。只要HDFS客户端持有文件的租约,就不允许其他客户端写入该文件。如果客户端没有在...原创 2020-08-01 23:58:38 · 1264 阅读 · 0 评论