IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> flink on yarn的实现及交互过程 -> 正文阅读

[大数据]flink on yarn的实现及交互过程

1 yarn 基本架构

yarn是一个资源管理与调度平台,不仅hadoop跑在上面,flink也可以直接向yarn申请资源并运行上去。

  • yarn使用cgroup隔离资源,实现了container。
  • Resource Manager组件管理集群资源。
  • Node Manager组件管理1台机器,在上面运行Container。
  • Container是一个具体容器,分配一定的CPU、内存、磁盘资源,在上面运行具体的任务

2 向yarn提交应用

向yarn提交应用的交互过程,大体如下
在这里插入图片描述

3 Flink on Yarn

3.1 涉及的组件

  • ResourceManager
  • NodeManager
  • AppMater(jobmanager和它运行在一个Container中)
  • Container(taskmanager运行在上面)

flink由JobManager和TaskManager组成。

  • JobManager负责调度,只需要启动1个,它也就是yarn的Application Master角色。
  • TaskManager是执行计算的进程,可以启动多个来分担计算任务

3.2 flink 与yarn的交互

  • flink client上传flink jar、应用jar 和配置文件到HDFS上
  • client向Yarn ResourceManager提交任务并申请资源
  • ResourceManager分配Container资源并启动ApplicationMaster, 然后AppMaster加载Flink的Jar包和配置构建环境,启动JobManager
    • JobManager和ApplicationMaster运行在同一个container上
    • 一旦他们被成功启动,AppMaster就知道JobManager的地址(AM它自己所在的机器)。
    • JobManager 为TaskManager生成一个新的Flink配置文件,这个配置文件也被上传到HDFS上,AppMaster容器也提供了Flink的web服务接口。
    • YARN所分配的所有端口都是临时端口,这允许用户并行执行多个Flink
  • ApplicationMaster向ResourceManager申请工作资源,NodeManager加载Flink的Jar包和配置构建环境并启动TaskManager
  • TaskManager启动后向JobManager发送心跳包,并等待JobManager向其分配任务
    在这里插入图片描述

3.3 Flink On Yarn的好处

  • yarn的资源能按需使用,可以提高集群的资源利用率
  • yarn的任务有优先级,根据优先级运行作业
  • 一套yarn集群,可以执行MR任务,spark任务,flink任务等…,不用维护多套计算集群
  • 基于yarn调度系统,能够自动化地处理各个角色的 Failover(容错)
    • JobManager 进程和 TaskManager 进程都由 Yarn NodeManager 监控
    • 如果 JobManager 进程异常退出,则 Yarn ResourceManager 会重新调度 JobManager 到其他机器
    • 如果 TaskManager 进程异常退出,JobManager 会收到消息并重新向 Yarn ResourceManager 申请资源,重新启动 TaskManager
  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-09-11 18:53:24  更:2021-09-11 18:53:57 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 20:27:11-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码