用idea 运行Zookeeper是报错 com.codahale.metrics.Reservoir找不见
   问题现象 用idea 运行Zookeeper是报错 com.codahale.metrics.Reservoir找不见。 问题原因 Zookeeper-server下面的pom.xml 里面引用jar的时候加了<scope>provided</scope>导致IDEA加载不到依赖的包。所以只要将其注释掉即可。 解决办法 将Zookeeper-server下面的pom.xml里面的全部的<scope>provided< ......
zookeeper   |  2025-06-28   0 评论   53 浏览

distributedShell 样例源码详解
   简介 distributedShell是Yarn自带的应用程序,和MR类似,当前工具可以用来对Yarn进行压测。 使用示例 参考命令如下: ./bin/hadoop jar ./share/hadoop/yarn/hadoop-yarn-applications-distributedshell-3.4.1.jar \ -jar ./share/hadoop/yarn/hadoop-yarn-applications-distributedshell-3. ......
hadoop   Yarn   |  2025-06-15   0 评论   105 浏览

HDFS 报错:Permission denied: user=dr.who, access=WRITE, inode="/":hadoop01
   背景 新建的HDFS使用web短上传文件的时候报错: Permission denied: user=dr.who, access=WRITE, inode="/":hadoop01 解决 在core-site.xml中增加下面配置,其中hadoop01为hdfs运行的用户,修改完重启hdfs即可。 <property> <name>hadoop.http.staticuser.user</name> <val ......
hadoop   |  2025-06-08   0 评论   105 浏览

DistCp源码解析
   说明 DistCp(分布式拷贝)是用于大规模集群内部和集群之间拷贝的工具。 它使用Map/Reduce实现文件分发,错误处理和恢复,以及报告生成。 它把文件和目录的列表作为map任务的输入,每个任务会完成源列表中部分文件的拷贝。 由于使用了Map/Reduce方法,这个工具在语义和执行上都会有特殊的地方。 这篇文档会为常用DistCp操作提供指南并阐述它的工作模型。 源码详解 作业启动 作业的启动主要包含初始化和作业提交,在初始化阶段主要是list左右需要拷 ......
mapreduce   hadoop   distcp   |  2025-05-25   0 评论   108 浏览

leaseManager详解
   简介 HDFS作为一个分布式文件系统,只允许一个客户端同时对一个文件进行修改操作。租约就是为了实现独占的写操作的机制。 HDFS租约的主要实现类是LeaseManager。 Lease 的使用场景如下: 客户端在申请创建新的文件或者向文件追加都会先向NameNode申请获得inode或者最后一个块的信息 在NameNode中FSNamesystem会调用recoverLeaseInternal检查文件是否是UnderConstruction,是Under ......
hadoop   hdfs   |  2025-05-25   0 评论   59 浏览

webhdfs详解
   简介 hdfs提供了一种除了通过rpc的方式进行文件操作的方式之外,还提供了http的方式对文件进行操作的方式:webhdfs。支持HDFS 的完整FileSystem / FileContext接口。 其中Router和NameNode都支持了webhdfs的功能,具体实现有差别。 使用 文件系统URI与HTTP URL WebHDFS的文件系统方案为“ webhdfs:// ”。WebHDFS文件系统URI具有以下格式。 webhdfs://<主机 ......
hadoop   hdfs   |  2025-05-16   0 评论   81 浏览

【Hadoop仿真】如何在仿真NodeManager中实现心跳
   Hadoop自带的hadoop-sls只能用于压测调度器,可在实际中影响ResourceManager性能的因素比较多,不能只看调度器。当前项目可构造海量的Fake NM节点,用于模拟线上RM的巨大压力场景,进行优化。首先需要对NM进行仿真。
原创   hadoop   Yarn   ResourceManager   |  2025-04-13   0 评论   74 浏览

Hadoop Yarn的ResourceManager压测指南
   Hadoop自带的hadoop-sls只能用于压测调度器,可在实际中影响ResourceManager性能的因素比较多,不能只看调度器。 当前项目可构造海量的Fake NM节点,用于模拟线上RM的巨大压力场景,进行优化。 详细参见:https://github.com/zeekling/yarnRmTester
hadoop   Yarn   ResourceManager   原创   |  2025-04-13   0 评论   7 浏览

Mapredcue作业启动
   Mapreduce作业启动源码解析,从源码开始理解Mapreduce。
hadoop   mapreduce   |  2025-03-29   0 评论   91 浏览

linux idea 启动慢、运行慢
   解决Idea启动慢,运行慢的问题。
linux   idea   |  2023-07-15   1 评论   6,792 浏览

Gitea 自建代码仓流量大坑
   背景 前端时间租的腾讯云服务器是按照流量计费的,最近一段时间流量走的老快了,并且发现默认1G的带宽老是卡。 原因 通过分析nginx的日志发现有大量的爬虫在大批量的访问代码仓。导致占用了大量带宽。 解决 nginx中过滤爬虫 在nginx中配置下面信息,过滤掉大量爬虫的请求。 if ($http_user_agent ~ "(meta-externalagent|Amazonbot|ClaudeBot|Baiduspider|SemrushBot|bing ......
gitea   |  2025-03-09   0 评论   90 浏览

container-executor 详解
   简介 container-executor 是NodeManager管理Container很重要的一个工具,是深入学习Yarn作业调度不可缺少的一个知识点,值得深入学习。本文只描述比较基础的功能点(目前不会包含Docker相关)。 核心功能点 checksetup 主要是检查container-executor的配置是否ok,没有其他功能。核心代码如下: case CHECK_SETUP: //we already did this exit_code ......
hadoop   |  2025-03-02   0 评论   74 浏览

Idea Hadoop 源码YarnServiceProtos无法补全问题
   问题现象 使用IDEA打开Hadoop源码之后,发现YarnServiceProtos部分代码无法补全,已经安装了protobuf相关的插件。 原因以及解决方法 再打开YarnServiceProtos文件的时候会提示类似文件过大无法打开的文字,所以可能是这个文件过大导致Idea没有加载,所以代码无法补全。 在idea.properties中增加下面配置之后重启Idea发现可以补全了。 idea.max.intellisense.filesize=6000 ......
idea   |  2024-12-01   0 评论   248 浏览

Capacity调度器源码解析
   简介 源码解析 Capacity 调度器的核心类是CapacityScheduler。在初始化CapacityScheduler的时候,在构造函数initAsyncSchedulingProperties,里面会初始化调度器相关。 核心类是AsyncSchedulingConfiguration,主要内容总结为:初始化异步调度器线程AsyncScheduleThread,可以初始化多个,调度支持多线程。 AsyncScheduleThread继承自Thre ......
hadoop   |  2024-11-04   0 评论   137 浏览

router启动详解
   简介 为了解决HDFS的水平扩展性问题,社区从Apache Hadoop 0.23.0版本开始引入了HDFS federation。HDFS Federation是指 HDFS集群可同时存在多个NameNode/Namespace,每个Namespace之间是互相独立的; 单独的一个Namespace里面包含多个 NameNode,其中一个是主,剩余的是备,这个和上面我们介绍的单Namespace里面的架构是一样的。这些Namespace共同管理整个集群的数 ......
hadoop   |  2024-10-10   0 评论   274 浏览