flink standalone部署模式

news2024/11/20 9:46:41

standalone模式可以在单台机器以不同进程方式启动,也可以以多机器分布式方式启动。

任务的提交模式有三种:application mode、session model、per-job mode(1.4x版本后过时)。

注意区分任务的提交模式与集群的部署模式区别。

以flink-1.18.1版本实验。

1.单台机器的session模式的standalone部署集群方式

   此种方式启动的flink集群注定任务的提交模式是session模式。

1.1.启动单台机器上session模式的standalone集群

./bin/start-cluster.sh

默认会产生如下两个进程,单台机器,不同进程:

1.2执行一个计算任务

./bin/flink run ./examples/streaming/TopSpeedWindowing.jar

./bin/flink run ./examples/streaming/TopSpeedWindowing.jar执行后,会有进程:

1.3关闭standalone集群

./bin/stop-cluster.sh

2.单台机器的standalone模式,以application mode提交任务

2.1启动一个taskmanager

./bin/taskmanager.sh start

多次执行上面的命令会启动多个taskmanager。

2.2启动任务

$ cp ./examples/streaming/TopSpeedWindowing.jar lib/
$ ./bin/standalone-job.sh start --job-classname org.apache.flink.streaming.examples.windowing.TopSpeedWindowing

 localhost:8081 查看任务,此时单台机器上只有一个taskmanager进程和一个StandaloneApplicationClusterEntryPoint应用进程

除了将自己打包的应用程序放在lib中,还有另外一种方式提交任务[未调试通过]:

------

$ ./bin/standalone-job.sh start -D user.artifacts.base-dir=/tmp/flink-artifacts --jars local:///path/to/TopSpeedWindowing.jar

我的理解:如果调试通过,user.artifacts.base-dir 可以用来存放hadoop、hive相关的依赖。local:///path/to目录可以存放每次发版本的最新应用jar。

报错:“No JAR found on classpath. Please provide a JAR explicitly”

------

2.3关闭taskmanager和提交的任务

$ ./bin/taskmanager.sh stop
$ ./bin/standalone-job.sh stop

Standalone Cluster参考

在 Standalone 模式下,以下 jar 将被识别为用户 jar 并包含在用户类路径中:

Session 模式:启动命令中指定的 JAR 文件。
Application 模式:启动命令中指定的 JAR 文件和 Flink 的 usrlib 文件夹中的所有 JAR 文件。

个人理解:可以把hadoop、hive的jar放到usrlib中。

Standalone工作目录存储内容涵盖:

  1. BlobServer 和 BlobCache 存储的 Blob
  2. 如果启用了 state.backend.local-recovery,则为本地状态
  3. RocksDB 的工作目录

个人理解:

1.bin/start-cluster.sh 启动的session模式的standalone集群[从生成的日志文件standalonesession也可以推测] 

2.conf/workers配置项对./bin/start-cluster.sh命令启动的session模式的standalone有效,对./bin/taskmanager.sh只启动executor计算节点无效,此计算节点用于后续提交application模式应用任务使用

3.只有session模式的standalone集群有HA?

4.为了实现standalone的本地文件目录恢复,需要配置

process.working-dir: /path/to/working/dir/base
state.backend.local-recovery: true
taskmanager.resource-id: TaskManager_1 

参考文档:

deployment-standalone-overview

deployment-standalone-working-dir

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1811285.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

idea从git拉取代码需要输入token问题解决

idea使用git 推送代码时,提示token问题,这是因为你的代码仓库是gitlab, 然后打开修改代码后推送时,会默认使用gitlab插件,所以提示输入token解决方式就是把gitlab插件取消使用这样就好了。 取消之后再进行拉取代码即可…

华为鲲鹏应用开发基础:鲲鹏处理器及关键硬件特性介绍(二)

1. 鲲鹏简介 1.1 鲲鹏处理器简介 鲲鹏处理器是华为自研的基于ARMv8指令集开发的数据中心级处理器 1.2 基于鲲鹏主板的多样化计算产品 1.3 基于鲲鹏920的华为TaiShan(泰山) 200服务器 1.3.1 TaiShan 2280服务器内部视图 1.3.2 TaiShan 2280服务器物理结构 1.3.3 TaiShan 2280服…

4_机械臂位姿求逆理论及代码计算

1、aubo arcs sdk poseInverse 使用例子 auto cur_pose rpc_cli->getRobotInterface(robot_name)->getRobotState()->getTcpPose();// 2.288083 0.035207 1.550335auto pose_inv rpc_cli->getMath()->poseInverse(cur_pose);//结果:0.118611 -0.57…

数据不归路?文件清理的后悔药,2个文件恢复技巧

手机已成为我们生活中不可或缺的重要工具,它不仅仅是一个通讯设备,更是我们存储个人信息、工作文件、照片和视频等宝贵资料的仓库。然而,生活中的意外总是难以预料,有时候我们可能会不小心删除重要的文件,或者因为手机…

【c语言】文件操作,解开你的疑惑

文件操作 为什么使用文件什么是文件文件的分类文件名 二进制文件和文本文件文件的打开与关闭流与标准流流标准流 文件指针文件的打开与关闭 文件的顺序读写文件的随机读写文件读取结束的判定文件缓冲区 为什么使用文件 我们程序运行的数据是运行在内存中的,当成程序…

在线课堂知识付费小程序源码系统 带完整的安装代码包以及搭建教程

系统概述 在线课堂知识付费小程序源码系统是基于当前主流技术栈开发的,支持微信小程序端的在线教育平台解决方案。它不仅包含了课程发布、在线学习、支付系统等基础功能,还融入了社区互动、用户管理、数据分析等高级特性,旨在打造一个全方位…

filezilla-server 1.8.1 设置

filezilla-server 1.8.1 设置: 1. 2. 3. 4. 其他不用配置, 5. 6. 7. 8. 9. 如果外网连不上 filezilla-server 提示无法连接到服务器, 多半是 filezilla-server 所在的电脑没有通过防火墙允许,打开 Windows defender 防…

万兴优转 v15 解锁版安装教程(全能音视频格式转换器)

前言 Wondershare UniConverter(万兴优转)国产全能音视频格式转换器。万兴格式转换器具有音视频格式转换、合并视频、视频压缩、视频编辑、视频录制、下载视频、元数据修复、VR视频转换、字幕编辑器、GIF制作、DVD刻录等一站式视频工具箱功能。万兴转换…

从文本文件中读取博客数据并将其提取到文件中

通常情况下我们可以使用 Python 中的文件操作来实现这个任务。下面是一个简单的示例,演示了如何从一个文本文件中读取博客数据,并将其提取到另一个文件中。 假设你的博客数据文件(例如 blog_data.txt)的格式 1、问题背景 我们需…

如何压缩jpg图片到200k以下?跟着我操作!

在现代社交媒体和网络分享的时代,经常需要上传和分享各种图片。然而,有时候大尺寸的JPEG图片可能会成为上传和分享的一道难题,特别是当需要在网络条件不佳或存储空间有限的情况下。为了解决这个问题,我们需要学会如何压缩jpg图片到…

鸿蒙轻内核M核源码分析系列二十 Newlib C

LiteOS-M内核LibC实现有2种,可以根据需求进行二选一,分别是musl libC和newlibc。本文先学习下Newlib C的实现代码。文中所涉及的源码,均可以在开源站点https://gitee.com/openharmony/kernel_liteos_m 获取。 使用Musl C库的时候&#xff0c…

什么是AIGC?AIGC是否会颠覆未来的内容生产模式?普通人如何利用好AI提高内容生产效率?

2024年是AI元年,正好我在AI公司里面工作,对AIGC有着几年的研究,接下来把我这对AIGC的学习经验毫无保留的给大家分享一下 AIGC 的简要介绍 在狭义上,AIGC是指利用AI自动生成内容的生产方式,比如自动写作、自动设计等。…

【机器学习】基于3D CNN通过CT图像分类预测肺炎

1. 引言 1.1. 研究背景 在医学诊断中,医生通过分析CT影像来预测疾病时,面临一些挑战和局限性: 图像信息的广度与复杂性: CT扫描生成的大量图像对医生来说既是信息的宝库也是处理上的负担。每组CT数据可能包含数百张切片&#xf…

金智易表通流程设置的若干问题

1、审批节点的审批人取应用权限组,权限组内任一人审批即可通过 在流程节点的主要配置环节,选择候选组 二、已审菜单要求看到自己审过的也能看到别人审过的,即能看到所有已审的记录 管理设置中取消按钮对流程的依赖,不根据流程审批…

汇编:数组数据传送

要在32位汇编中实现数组数据的传送,可以使用字符串操作指令 MOVS 以及其前缀 REP,可以高效地复制数组数据。 MOVS 指令是一种字符串操作指令,用于将数据从源地址移动到目标地址。MOVS 指令有不同的变种,可以处理不同大小的数据&a…

Mimio安装

mkdir -p /usr/local/develop/minio/bin mkdir -p /usr/local/develop/minio/bin wget https://dl.min.io/server/minio/release/linux-amd64/minio -O /usr/local/develop/minio/bin/minio 编辑脚本 启动脚本 vim /usr/local/develop/minio/start_minio.sh #!/bin/bash # 设…

HTML,CSS,JavaScript实例 —— 齿轮,按钮

文章目录 一、动态按钮二、CSS实例三、滚动的齿轮 一、动态按钮 <!DOCTYPE html> <html><head><meta charset"utf-8"><title></title><style type"text/css">html,body {background: black;height: 100%;displa…

如何在Bing搜索进行广告推广?2024年必应广告投放怎么做?【附开户攻略】

必应&#xff08;Bing&#xff09;作为全球领先的搜索引擎之一&#xff0c;拥有一个独特且庞大的用户群体&#xff0c;尤其在美国和欧洲市场&#xff0c;很多用户选择必应作为他们的主要搜索引擎。通过必应广告&#xff0c;企业可以触达那些在其他搜索引擎上难以接触到的潜在客…

Redis 7.2.x 主从复制+哨兵模式

IP操作系统服务版本192.168.140.153CentOS 7redis-master,sentinel7.2.5192.168.140.156CentOS 7redis-slave,sentinel7.2.5192.168.140.159CentOS 7redis-slave,sentinel7.2.5 一、安装Redis 配置主从复制 参考下面文档&#xff1a; Redis 7.2.x 主从复制-CSDN博客文章浏览…

时间处理基础:Rust 的 chrono 库教程

在开发过程中&#xff0c;我们经常有对时间和日期处理的需求。不论是日历应用、日程安排、还是时间戳记录&#xff0c;准确的时间数据处理都是必不可少的。Rust 社区提供的 chrono 库以其强大的功能和灵活的接口&#xff0c;在 Rust 开发者中广受欢迎。本文将简单介绍 chrono 库…