大数据-111 Flink 安装部署 YARN部署模式 FlinkYARN模式申请资源、提交任务

本文主要是介绍大数据-111 Flink 安装部署 YARN部署模式 FlinkYARN模式申请资源、提交任务,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

点一下关注吧!!!非常感谢!!持续更新!!!

目前已经更新到了:

  • Hadoop(已更完)
  • HDFS(已更完)
  • MapReduce(已更完)
  • Hive(已更完)
  • Flume(已更完)
  • Sqoop(已更完)
  • Zookeeper(已更完)
  • HBase(已更完)
  • Redis (已更完)
  • Kafka(已更完)
  • Spark(已更完)
  • Flink(正在更新!)

章节内容

上节完成了如下的内容:

  • 基础环境规划
  • 集群规划
  • 下载安装
  • Standalone模式启动

在这里插入图片描述

YARN模式部署

在这里插入图片描述

环境变量

vim /etc/profile
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export YARN_CONF_DIR=$HADOOP_HOME/etc/hadoop
export HADOOP_CLASSPATH=`hadoop classpath`

配置的结果如下图所示:
在这里插入图片描述
退出保存,并刷新环境变量。

yarn-site

cd /opt/servers/hadoop-2.9.2/etc/hadoop
vim yarn-site.xml

我们需要在原来的基础上,写入一些新的内容:

<!-- YRAN Flink 相关 -->
<property><name>yarn.nodemanager.pmem-check-enabled</name><value>false</value>
</property>
<property><name>yarn.nodemanager.vmem-check-enabled</name><value>false</value>
</property>
<property><name>yarn.resourcemanager.address</name><value>h123.wzk.icu:8032</value>
</property>
<property><name>yarn.resourcemanager.scheduler.address</name><value>h123.wzk.icu:8030</value>
</property>
<property><name>yarn.resourcemanager.resource-tracker.address</name><value>h123.wzk.icu:8031</value>
</property>

配置样式如下图所示:
在这里插入图片描述

同步配置

我们需要在:

  • h121 节点
  • h122 节点
  • h123 节点
    这三台机器上,都配置好一样的内容。

由于配置的过程基本重复,这里就跳过我配置的过程了,大致说一下需要配置的内容:

  • Flink环境
  • 环境变量profile
  • yarn-site
  • 停止Flink服务
  • 停止Hadoop集群等服务
  • 停止YARN集群等服务
  • 重启Hadoop集群
  • 重启YARN集群

我这里使用之前的 rsync-script 工具进行同步了:
在这里插入图片描述
漫长的等待之后,可以看到已经传输完毕了:
在这里插入图片描述

停止Hadoop

cd /opt/servers/hadoop-2.9.2/sbin
stop-all.sh

h121

在这里插入图片描述

停止YARN集群

h123

h123节点执行(ResourceManager节点在这里):
在这里插入图片描述

停止Flink

h121节点执行:

./stop-cluster.sh

在这里插入图片描述

停止结果

h121

(还剩下一个ZK的服务,非必须,想结束的话也可以结束掉)
在这里插入图片描述

h122

在这里插入图片描述

h123

在这里插入图片描述

启动Hadoop集群

一切确认没有问题之后,我们就可以重新启动了。

h121

start-all.sh

在这里插入图片描述

h122

在这里插入图片描述

h123

在这里插入图片描述

启动YARN集群

h123

为了防止YARN启动异常,我们需要到 h123 保证启动一次:

start-yarn.sh

在这里插入图片描述

申请资源

查看帮助

cd /opt/servers/flink-1.11.1/bin/
./yarn-session.sh -h

可以看到该脚本的说明如下:
在这里插入图片描述

测试脚本1 申请资源

./yarn-session.sh -n 2 -tm 800 -s 1 -d

上面的脚本的含义是:

  • -n 表示申请2个容器 这里就是指多少个TaskManager
  • -s 表示每个TaskManager的Slots数量
  • -tm 表示每个 TaskManager的内存大小
  • -d 表示后台的方式运行程序

脚本1 解释

上面的脚本会向YARN申请3个Container,即便写的是2个,因为ApplicationMaster和JobManager有一个额外的容器,一旦将Flink部署到YARN集群中,就会显示JobManger的连接详细信息。

2个Container启动TaskManager -n 2,每个TaskManager拥有1个TaskSlots -s 1,并且向每个TaskManager的Container申请800M的内存,以及一个 ApplicationMaster jobManager
如果不想让Flink YRAN客户端始终运行,那么也可以启动分离的YARN会话,被参数被称为-d或–detached,这种情况下,Flink YARN客户端只会将Flink提交给集群,然后关闭它自己。

整个过程大概是:yarn-session.sh(开辟资源) + Flink run(提交任务)

  • 使用Flink中的yarn-session,会启动两个必要服务JobManager和TaskManager
  • 客户端通过Flink run提交作业
  • yarn-session 会一直启动,不停的接收客户端提交的作业
  • 这种方式创建的Flink集群会独占资源
  • 如果有大量的 作业/任务 较小、工作时间短,适合使用这种方式,减少资源创建的时间。

脚本1 执行结果

可以看到一些日志内容:

2024-07-24 16:34:33,236 WARN  org.apache.flink.yarn.configuration.YarnLogConfigUtil        [] - The configuration directory ('/opt/servers/flink-1.11.1/conf') already contains a LOG4J config file.If you want to use logback, then please delete or rename the log configuration file.
2024-07-24 16:34:33,381 INFO  org.apache.hadoop.yarn.client.RMProxy                        [] - Connecting to ResourceManager at h123.wzk.icu/124.223.26.81:8032
2024-07-24 16:34:33,724 INFO  org.apache.flink.runtime.util.config.memory.ProcessMemoryUtils [] - The derived from fraction jvm overhead memory (160.000mb (167772162 bytes)) is less than its min value 192.000mb (201326592 bytes), min value will be used instead
2024-07-24 16:34:33,734 INFO  org.apache.flink.runtime.util.config.memory.ProcessMemoryUtils [] - The derived from fraction jvm overhead memory (172.800mb (181193935 bytes)) is less than its min value 192.000mb (201326592 bytes), min value will be used instead
2024-07-24 16:34:34,210 INFO  org.apache.flink.yarn.YarnClusterDescriptor                  [] - The configured JobManager memory is 1600 MB. YARN will allocate 2048 MB to make up an integer multiple of its minimum allocation memory (1024 MB, configured via 'yarn.scheduler.minimum-allocation-mb'). The extra 448 MB may not be used by Flink.
2024-07-24 16:34:34,211 INFO  org.apache.flink.yarn.YarnClusterDescriptor                  [] - The configured TaskManager memory is 1728 MB. YARN will allocate 2048 MB to make up an integer multiple of its minimum allocation memory (1024 MB, configured via 'yarn.scheduler.minimum-allocation-mb'). The extra 320 MB may not be used by Flink.

运行过程如下图所示:
在这里插入图片描述

测试脚本2 提交运行

我们也可以直接在YARN上提交运行Flink作业(Run a Flink job on YARN)

./flink run -m yarn-cluster -yn 2 -yjm 1024 -ytm 1024 /opt/wzk//WordCount.jar

上述参数的一些解释:

  • -m JobManager 的地址
  • -yn TaskManager的个数

停止 yarn-cluster

yarn application -kill application_xxxxxxxxx

脚本2 解释

在这里插入图片描述

这篇关于大数据-111 Flink 安装部署 YARN部署模式 FlinkYARN模式申请资源、提交任务的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1123814

相关文章

Linux流媒体服务器部署流程

《Linux流媒体服务器部署流程》文章详细介绍了流媒体服务器的部署步骤,包括更新系统、安装依赖组件、编译安装Nginx和RTMP模块、配置Nginx和FFmpeg,以及测试流媒体服务器的搭建... 目录流媒体服务器部署部署安装1.更新系统2.安装依赖组件3.解压4.编译安装(添加RTMP和openssl模块

0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型的操作流程

《0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeekR1模型的操作流程》DeepSeekR1模型凭借其强大的自然语言处理能力,在未来具有广阔的应用前景,有望在多个领域发... 目录0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型,3步搞定一个应

redis群集简单部署过程

《redis群集简单部署过程》文章介绍了Redis,一个高性能的键值存储系统,其支持多种数据结构和命令,它还讨论了Redis的服务器端架构、数据存储和获取、协议和命令、高可用性方案、缓存机制以及监控和... 目录Redis介绍1. 基本概念2. 服务器端3. 存储和获取数据4. 协议和命令5. 高可用性6.

Python安装时常见报错以及解决方案

《Python安装时常见报错以及解决方案》:本文主要介绍在安装Python、配置环境变量、使用pip以及运行Python脚本时常见的错误及其解决方案,文中介绍的非常详细,需要的朋友可以参考下... 目录一、安装 python 时常见报错及解决方案(一)安装包下载失败(二)权限不足二、配置环境变量时常见报错及

Deepseek R1模型本地化部署+API接口调用详细教程(释放AI生产力)

《DeepseekR1模型本地化部署+API接口调用详细教程(释放AI生产力)》本文介绍了本地部署DeepSeekR1模型和通过API调用将其集成到VSCode中的过程,作者详细步骤展示了如何下载和... 目录前言一、deepseek R1模型与chatGPT o1系列模型对比二、本地部署步骤1.安装oll

nginx部署https网站的实现步骤(亲测)

《nginx部署https网站的实现步骤(亲测)》本文详细介绍了使用Nginx在保持与http服务兼容的情况下部署HTTPS,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值... 目录步骤 1:安装 Nginx步骤 2:获取 SSL 证书步骤 3:手动配置 Nginx步骤 4:测

Redis的数据过期策略和数据淘汰策略

《Redis的数据过期策略和数据淘汰策略》本文主要介绍了Redis的数据过期策略和数据淘汰策略,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录一、数据过期策略1、惰性删除2、定期删除二、数据淘汰策略1、数据淘汰策略概念2、8种数据淘汰策略

轻松上手MYSQL之JSON函数实现高效数据查询与操作

《轻松上手MYSQL之JSON函数实现高效数据查询与操作》:本文主要介绍轻松上手MYSQL之JSON函数实现高效数据查询与操作的相关资料,MySQL提供了多个JSON函数,用于处理和查询JSON数... 目录一、jsON_EXTRACT 提取指定数据二、JSON_UNQUOTE 取消双引号三、JSON_KE

MySQL8.2.0安装教程分享

《MySQL8.2.0安装教程分享》这篇文章详细介绍了如何在Windows系统上安装MySQL数据库软件,包括下载、安装、配置和设置环境变量的步骤... 目录mysql的安装图文1.python访问网址2javascript.点击3.进入Downloads向下滑动4.选择Community Server5.

Java实现状态模式的示例代码

《Java实现状态模式的示例代码》状态模式是一种行为型设计模式,允许对象根据其内部状态改变行为,本文主要介绍了Java实现状态模式的示例代码,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来... 目录一、简介1、定义2、状态模式的结构二、Java实现案例1、电灯开关状态案例2、番茄工作法状态案例