From ec1484f891b9697e46ee4b156706e2dd1db47bb2 Mon Sep 17 00:00:00 2001
From: luoxiang <2806718453@qq.com>
Date: Sun, 2 Jun 2019 16:18:57 +0800
Subject: [PATCH] hadoop-yarn
---
notes/Hadoop-YARN.md | 30 +++++++++++++-----------------
1 file changed, 13 insertions(+), 17 deletions(-)
diff --git a/notes/Hadoop-YARN.md b/notes/Hadoop-YARN.md
index c173c28..ca03678 100644
--- a/notes/Hadoop-YARN.md
+++ b/notes/Hadoop-YARN.md
@@ -4,19 +4,16 @@
一、hadoop yarn 简介
二、YARN架构
1. ResourceManager
- 2. ApplicationMaster
- 3. NodeManager
+ 2. NodeManager
+ 3. ApplicationMaster
+ 4. Contain
三、YARN工作原理简述
四、YARN工作原理详述
- 1. 作业提交
- 2. 作业初始化
- 3. 任务分配
- 4. 任务运行
- 5. 进度和状态更新
- 6. 作业完成
五、提交作业到YARN上运行
+
+
## 一、hadoop yarn 简介
**Apache YARN** (Yet Another Resource Negotiator) 是hadoop 2.0 引入的集群资源管理系统。用户可以将各种服务框架部署在YARN上,由YARN进行统一地管理和资源分配。
@@ -37,18 +34,18 @@
`NodeManager`是YARN集群中的每个具体节点的管理者。主要负责该节点内所有容器的生命周期的管理,监视资源和跟踪节点健康。具体如下:
-1. 启动时向`ResourceManager`注册并定时发送心跳消息,等待`ResourceManager`的指令;
-2. 维护`Container`的生命周期,监控`Container`的资源使用情况;
-3. 管理任务运行时的相关依赖,根据`ApplicationMaster`的需要,在启动`Container`之前将需要的程序及其依赖拷贝到本地。
+- 启动时向`ResourceManager`注册并定时发送心跳消息,等待`ResourceManager`的指令;
+- 维护`Container`的生命周期,监控`Container`的资源使用情况;
+- 管理任务运行时的相关依赖,根据`ApplicationMaster`的需要,在启动`Container`之前将需要的程序及其依赖拷贝到本地。
### 3. ApplicationMaster
在用户提交一个应用程序时,YARN会启动一个轻量级的进程`ApplicationMaster`。`ApplicationMaster`负责协调来自 `ResourceManager`的资源,并通过`NodeManager` 监视容器内资源的使用情况,同时还负责任务的监控与容错。具体如下:
-1. 根据应用的运行状态来决定动态计算资源需求;
-2. 向`ResourceManager`申请资源,监控申请的资源的使用情况;
-3. 跟踪任务状态和进度,报告资源的使用情况和应用的进度信息;
-4. 负责任务的容错。
+- 根据应用的运行状态来决定动态计算资源需求;
+- 向`ResourceManager`申请资源,监控申请的资源的使用情况;
+- 跟踪任务状态和进度,报告资源的使用情况和应用的进度信息;
+- 负责任务的容错。
### 4. Contain
@@ -115,8 +112,7 @@ YARN中的任务将其进度和状态(包括counter)返回给应用管理器,
这里以提交Hadoop Examples中计算Pi的MApReduce程序为例,相关Jar包在Hadoop安装目录的`share/hadoop/mapreduce`目录下:
```shell
-# 提交格式为
-# hadoop jar jar包路径 主类名称 主类参数
+# 提交格式: hadoop jar jar包路径 主类名称 主类参数
# hadoop jar hadoop-mapreduce-examples-2.6.0-cdh5.15.2.jar pi 3 3
```