Hadoop3.2.0 源码
张伯毅
某厂技术,Apache DolphinScheduler Committer.
专注于调度&实时&大数据体系~
展开
-
Hadoop3.2.0 源码编译 [一]
1.软件包版本:hadoop-3.2.0链接:https://pan.baidu.com/s/1wo8ysbGcHw5haOfKyKaEKA 密码:ygxj2.环境准备: * Unix System * JDK 1.8 * Maven 3.3 or later * ProtocolBuffer...原创 2019-04-13 09:47:26 · 8533 阅读 · 8 评论 -
Hadoop3.2.0 源码分析: datanode 启动
通过脚本启动 namenode 的时候,不管怎么样都会调用DataNode 类. 至于脚本怎么调用的自行查看一下脚本:bin/hdfslibexec/hadoop-functions.sh输出 debug 模式下 脚本日志:/Library/Java/JavaVirtualMachines/jdk1.8.0_161.jdk/Contents/Home/bin/ja...原创 2019-04-23 18:59:26 · 1022 阅读 · 1 评论 -
Hadoop3.2.0 源码分析: SHELL启动脚本 DEBUG 模式
在调试代码的时候,需要用到 hadoop 的 debug 模式.所有做了一下记录:打开 DEBUG 模式:export HADOOP_SHELL_SCRIPT_DEBUG=true如果不好用,直接调整函数代码,把判断去掉即可 :启动脚本的时候输出的日志:查看日志文件:...原创 2019-04-23 18:24:25 · 957 阅读 · 0 评论 -
Hadoop3.2.0 源码分析: namenode 启动
通过脚本启动 namenode 的时候,不管怎么样都会调用NameNode 类. 至于脚本怎么调用的自行查看一下脚本:bin/hdfslibexec/hadoop-functions.sh输出 debug 模式下 shell 脚本日志:/Library/java/JavaVirtualMachines/jdk1.8.0_161.jdk/Contents/Home/...原创 2019-04-23 18:59:55 · 1628 阅读 · 1 评论 -
Hadoop3.2.0 源码分析: Container 之 DefaultContainerExecutor 与 LinuxContainerExecutor
在yarn 里面Container 是可选的.本文介绍以下两种:DefaultContainerExecutor LinuxContainerExecutor由配置参数控制: yarn.nodemanager.container-executor.class有NodeManager初始化的时候,进行加载org.apache.hadoop.yarn.server.nodema...原创 2019-04-22 16:36:15 · 2801 阅读 · 2 评论 -
Hadoop3.2.0 源码分析: ResourceManager 调度 CapacityScheduler 理论
特点以队列为单位划分资源,每个队列可设定一定比例的资源最低保证和使用上限,同时,每个用户也可设定一定的资源使用上限以防止资源滥用。而当一个队列的资源有剩余时,可暂时将剩余资源共享给其他队列。总之,Capacity Scheduler主要有以下几个特点:容量保证:管理员可为每个队列设置资源最低保证和资源使用上限,而所有提交到该队列的应用程序共享这些资源 灵活性:如果一个队列中的资源有剩余,...原创 2019-04-23 14:05:06 · 927 阅读 · 0 评论 -
Hadoop3.2.0 源码分析: NodeManager
概念NodeManager(NM)是YARN中每个节点上的代理,它管理Hadoop集群中单个计算节点,包括与ResourceManger保持通信,监督Container的生命周期管理,监控每个Container的资源使用(内存、CPU等)情况,追踪节点健康状况,管理日志和不同应用程序用到的附属服务。构造图:类图:...原创 2019-04-18 15:16:09 · 879 阅读 · 1 评论 -
Hadoop3.2.0 源码分析: ResourceManager启动
概述相信开始看源码的你,正在一点点的进入知识的殿堂,一起挖掘吧.ResourceManager 是Yarn 的资源调度中心,很重要,所有的资源申请都需要通过ResourceManager来调度.The ResourceManager is the main class that is a set of components."I am the ResourceMa...原创 2019-04-18 11:50:15 · 2574 阅读 · 1 评论 -
Hadoop3.2.0 源码分析: ResourceManager 调度 CapacityScheduler
在上一节中,只是讲解了ResourceManager 的启动,这次来说另外一个核心的点没说,那就是调度.// Initialize the scheduler// todo ResourceScheduler 调度器的创建,他的子类之一就是FairSchedulerscheduler = createScheduler();scheduler.setRMContext(rmCo...原创 2019-04-23 06:57:57 · 949 阅读 · 0 评论 -
MAC版本: Hadoop3.2.0 源码编译 [ 二 ]
MAC版本,Hadoop3.2.0 提供了 docker 编译的方式.构建方式非常简单, 不过首先你要先安装好 docker.1.安装 docker (自行安装)需要设置一下共享目录:2.运行:start-build-env.sh等待构建完成.安装成功如图:3. 输入命令进行编译 $ mvn packa...原创 2019-04-19 00:02:01 · 1553 阅读 · 0 评论