Flink Rest API接口使用

Flink Rest API使用 Flink Rest API使用 ---------------- ### 1. 上传jar包接口 - 请求路径 - http://hadoop3.test.yunwei.puppet.dh:40610/jars/upload - 请求方式 - POST - 请求参数 - 设置请求头 application/java-archive - 返回结果 ... 阅读详情
AI摘要

本文详细介绍了Apache Flink的REST API接口,包括jar包上传、程序运行、job管理等操作步骤,并提供了实际请求示例。掌握这些,有助于有效监控和管理Flink集群中的任务。

官方Flink Rest API文档

REST API | Apache Flink

Flink接口调用地址

       用户可以通过flink提供的Rest API管理应用。Rest API可供用户或脚本直接访问,它可以对外公开有关Flink集群和应用的信息。flink使用Web服务器来同时支持Rest API和Web UI,该服务器会作为Dispatcher进程的一部分(Dispatcher启动JobManager)来运行。默认情况下二者都会使用8081端口。我们可以通过./conf/flink-conf.yaml来设置web服务器的ip和端口:rest.address,rest.port,同时为了避免我们提交的项目在每次集群启动时被删掉,我们需要配置项目的固定存储地址web.upload.dir,这样我们通过web提交的项目就会被保存到这个位置,如果不配置该地址,提交的项目会被放到临时文件中去,集群重启就会被删掉,很不方便。

如下配置:

#==============================================================================
# Rest & web frontend
#==============================================================================

# The port to which the REST client connects to. If rest.bind-port has
# not been specified, then the server will bind to this port as well.
#
rest.port: 8081

# The address to which the REST client will connect to
#
rest.address: 0.0.0.0

# Port range for the REST and web server to bind to.
#
#rest.bind-port: 8080-8090

# The address that the REST & web server binds to
#
#rest.bind-address: 0.0.0.0

# Flag to specify whether job submission is enabled from the web-based
# runtime monitor. Uncomment to disable.

web.submit.enable: true

上传jar包

{
	"filename": "/tmp/flink-web-c3ba80f2-0cd4-47ab-93b3-936dae41a704/flink-web-upload/e366a315-6bd4-43d4-ad29-baf7d6114dd3_ConnectedComponents.jar",
	"status": "success"
}
  • 请求实例:
http://192.168.131.129:8081/v1/jars/upload

或者可以使用Flink的web ui页面自己提交项目程序:

获取提交的项目id

{
	"address": "http://0.0.0.0:8081",
	"files": [
		{
			"id": "e366a315-6bd4-43d4-ad29-baf7d6114dd3_ConnectedComponents.jar",
			"name": "ConnectedComponents.jar",
			"uploaded": 1663050489000,
			"entry": [
				{
					"name": "org.apache.flink.examples.java.graph.ConnectedComponents",
					"description": null
				}
			]
		}
    ]
}

运行程序接口

  1. entry-class 程序入口类
  2. programArgsList:Array
  3. programArg:String
  4. parallelism:Integer

返回结果:jobid

{
    "jobid": "e366a315-6bd4-43d4-ad29-baf7d6114dd3"
}

请求示例1:

1、http://192.168.131.129:8081/jars/6814473b-20fb-49e0-9e2b-08b1c9967014_WordCount.jar/run?entry-class=io.github.streamingwithflink.demo.BatchCountFromJdbc&programArgsList=--bootstrap.servers hadoop2.test.yunwei.puppet.dh:6667,hadoop3.test.yunwei.puppet.dh:6667,hadoop4.test.yunwei.puppet.dh:6667 --group.id m3gcn_tab_map_race_3 --client.id m3gcn_tab_map_race_3 --config.file hdfs://DHTestCluster/user/gezhihui/flink/configuration/m3gcn_tab_map_race2.txt --job.name m3gcn_tab_map_race
2、http://192.168.131.129:8081/jars/6814473b-20fb-49e0-9e2b-08b1c9967014_WordCount.jar/run
{
    "entryClass":"io.github.streamingwithflink.demo.BatchCountFromJdbc"
    "programArgsList": [
        "--name",
        "zhansan"]
}
 
请求体中的programArgsList可以传值到main函数的string[]args,取值可以通过ParameterTool parameters = 
ParameterTool.fromArgs(args);String name = parameters.get("name");所以他的key-value的格式是key为"--key"或者"-key",
value为key的下一行,根据上述代码,value不要以"-"作为开头,这里也可以自己去解析String[],这里args就对应我们programArgsList
的传参,如3所示
 
3、http://192.168.131.129:8081/jars/6814473b-20fb-49e0-9e2b-08b1c9967014_WordCount.jar/run
{
    "entryClass":"io.github.streamingwithflink.demo.BatchCountFromJdbc"
    "programArgsList": [
        "lisi",
        "zhansan"]
}

删除某个jar包

http://192.168.131.129:8081/jars/6814473b-20fb-49e0-9e2b-08b1c9967014_WordCount.jar

取消某个job

http://192.168.196.3:8081/jobs/e366a315-6bd4-43d4-ad29-baf7d6114dd3/cancel

查看所有的job

http://192.168.131.129:8081/jobs/overview

查看某个job的具体信息

http://192.168.131.129:8081/jobs/f5d30b564a1f90f8fd9f5d4a44e26437

查看某个job的checkpoints

http://192.168.131.129:8081/jobs/f5d30b564a1f90f8fd9f5d4a44e26437/checkpoints

[flink]一Flink部署|配置文件|提交作业|部署模式|独立模式部署|yarn模式部署 同样由客户端运行应用程序(需要客户端先跑一遍代码,把应用拆分成作业,比如并行度为2,会拆成两个作业,需要启动两个集群),然后启动集群,作业提交给JobManager,进而分发给TaskManager执行。我们需要先启动一个集群,保持一个会话,在这个会话中通过客户端提交作业(需要客户端先跑一遍代码,把应用拆分成作业,比如并行度为2,会拆成两个作业,然后将作业提交给jobManager)。一个应用启动一个集群。会话模式、单作业模式,都需要客户端先跑一遍代码,把应用拆分成作业,比如并行度为2,会拆成两个作业。 阅读详情

相关推荐

Flink Configuration 配置文件的配置

Flink 运行命令详细介绍Flink Configuration | flink-conf.yaml中的配置Basic Setup | 默认配置 引流:FLINK 的命令 FLINK 的配置 Flink执行说明 对 FLINK 的运行命令做完整的介绍 参考文章: Flink Configuration - flink-conf.yaml 中的配置 Flink Memory Configuration - 内存配置 Flink Command-Line - 命令行中的配置 Flink Config

半吊子Kyle的博客 1万+

Flink REST API 的使用

一、前言 Flink有一个监视 API,可以用来查询正在运行的作业以及最近完成的作业的状态和统计信息。这个监视API由Flink自己的仪表板使用,但也被设计用于定制监视工具。 监视API是一个REST-ful API,它接受HTTP请求并使用JSON数据进行响应。 默认情况下,此服务器监听8081端口,可以在flink-conf.yaml中配置rest.port。注意...

magic_kid_2010的专栏 7683

Flink 通过 REST API 获取实时 task metric 汇总统计信息

#Flink 通过 REST API 获取实时 task metric 汇总统计信息 运行 flink 程序时会经常需要查看当前程序的运行状况,flink 提供了 UI 界面,有比较详细的统计信息。但是 UI 界面也有不完善的地方,比如想要获取 flink 的实时吞吐。本文通过示例介绍通过 flink REST API 获取 flink 实时吞吐。 为了更简单的表示,以下的 REST API 请求...

yuchuanchen的专栏 1万+

Flink使用RestApi

flink是一个非常好用的流任务计算框架, 这次我们来试用flink的restApi来提交任务. 1, 上传jar包 public static boolean uploadJar( File jarFile) { RequestBody requestBody = new MultipartBody.Builder() .setType(MultipartBody.FORM) .addFormDataPart("fil

jeseva的博客 5606

Flink Rest Basic Auth - 安全认证

背景 公司目前需要将Flink实时作业云化,构建多租户实时计算平台。目前考虑为了资源高效利用,并不打算为每个租户部署一套独立的Kubernetes集群。也就意味着多个租户的作业可能会运行在同一套kubernets集群中。此时实时作业的任务就变的很危险,因为网络可能是通的,就会存在危险的REST API暴露出去,被一些不坏好意的人利用,从而影响其他租户的作业。鉴于此考虑给Flink的作业添加一个认证方式,可以是Kerberos或者是Http 用户名密码Baisc认证。各种搜索和询问,最终发现了一些线索FLIP

麦田里的守望者-蒋中洲【相信相信的力量】 1501

记录用yarn restfulapi 取消或者杀死任务historyserver不记录问题

flink historyserver flink on yarn restful api调用 获取yarn任务的checkpoint路径

qq_31866793的博客 1423

常用的Flink Rest API接口使用

上传jar包接口 请求路径:http://hadoop3.test.yunwei.puppet.dh:40610/jars/upload 请求方式:POST 请求参数: 设置请求头 application/java-archive 返回结果: { "status": "success", "filename": "d750fe29-7d5b-404f-a984-d0690f35ea6e_flink-4.jar" } 请求实例: 提交任务接口 请求路径:http...

weixin_41062002的博客 1万+

Flink Dispatcher原理与代码实例讲解

Flink Dispatcher原理与代码实例讲解 1. 背景介绍 1.1 Flink简介 Apache Flink是一个开源的分布式流处理和批处理框架,它提供了高吞吐、低延迟、高可靠的数据处理能力。Flink支持有状态的

AI天才研究院 1190

Flink 1.19 REST API

/ getters本文档详细设计了一个基于 Spring Boot 的 Flink 1.19 REST API 集成方案,提供了获取作业信息、日志信息、状态统计等核心功能。通过合理的架构设计和服务划分,确保了系统的可维护性和扩展性。后续开发过程中可以根据实际需求进行适当调整和完善。

wudonglianga的专栏 1104

Flink历史服务器-History Server

讲解 flink的历史服务器 如何查看历史作业信息

chanyue123的博客 1520

flink实战--HistoryServer配置与应用

背景 回想一下,在实际线上开发flink任务时是否存在这样需求,flink实时任务夜间掉线了,此时我们再去查看yarn的页面最多也只能查看JobManager 的日志了,像检查点,处理的数据量,水印等指标如果没有Metrics监控,那么很遗憾这些信息就丢失了,对我们分析任务出现的bug很不友好,此时flink的HistoryServer出现了,本文将详细介绍HistoryServer的配置与使用。 HistoryServer flink任务停止后,JobMan...

阿华田的博客 2078

Flink Rest API

通过curl 或者Rest API工具测试web UI对应的接口返回信息。Flink官网API。

xingyuelhb的博客 619

SAP PCC成本收集器实战:从配置到结算的完整流程解析

本文详细解析了SAP PCC成本收集器从配置到结算的完整流程,特别适用于重复制造行业。通过实战案例和配置要点,帮助用户掌握物料分类账管理、成本中心费用归集及差异分析等核心功能,提升企业生产成本控制效率。

weixin_29251567的博客 896

Flink REST API #

官方文档: https://ci.apache.org/projects/flink/flink-docs-release-1.13/docs/ops/rest_api/ https://ci.apache.org/projects/flink/flink-docs-release-1.12/ops/rest_api.html /jars Returns a list of all jars previously uploaded via '/jars/upload'. /jars/uplo.

CarloPan的博客 2267

大疆mini 3 pro rtmp推流(带屏遥控器不支持)windows

大疆mini 3 pro无人机rtmp推流(带屏遥控器不支持)至windows电脑

xbsigeibwkouvfcj的博客 3431

ESP32编译卡在‘Cannot establish a connection to the component registry’?别急着重装,先试试这两个国内镜像配置

本文详细解析了ESP32编译过程中常见的‘Cannot establish a connection to the component registry’报错问题,并提供了国内镜像源的配置方案。通过对比Gitee、清华大学、阿里云和中科大等镜像源的性能,帮助开发者快速解决网络连接问题,提升编译效率。文章还包含手把手的配置教程和进阶技巧,适用于ESP-IDF开发环境的优化。

weixin_34088048的博客 341

Flink常用监控API

通常,我们可以通过Flink WebUI来查看和监控Flink任务的运行状态,如图 但如果我们要基于Flink自建一个实时计算平台,则不能依赖于Flink WebUI,而需要自己实现Flink任务状态的查看和监控了。 实际上,Flink有一套自己的监控REST API,Flink WebUI也是基于这套监控API实现的,我们可以调用官方提供的监控API,来实现我们自己想要的参数查看和状态监控功能。 下面的表格列举了常用的Flink监控REST API: 请求方法 接口 功能 参数 GET

白夜的随笔 4972

【KDD2024】ShapeFormer:用于多元时间序列分类的Shapelet Transformer

多元时间序列分类(MTSC)因其在现实世界中的广泛应用而吸引了大量研究关注。最近,Transformer在MTSC中取得了先进的性能。然而,

m0_52597077的博客 4747

Flink 监控

基本的需求 监控 job 的内存、网络、CPU 的使用情况 监控 job 的状态,running or dead 监控 job exception 总之,我的目的是不能让 job 因内存、网络、cpu 不足造成的程序崩溃 metric 的类型 了解什么是 Metric 看看下面这个 blog , 应该会有一个大概的了解: http://wuchong.me/blog/2015/08/01/ge...

bluedraam_pp的博客 3741

数据助力行业发展:BJTU-RAO转向架数据集介绍

BJTU-RAO转向架数据集是完全公开的,何研究人员皆可以通过后文的下载链接免费下载数据,且在标注数据来源的前提下,研究人员可以自由使用BJTU-RAO转向架数据集。因此,聚焦各类列车转向架传动系统在途安全保障新技术研究和新算法开发,实现牵引电机、驱动齿轮箱和轴箱等关键部件的实时状态监测与智能故障诊断,对保障列车安全可靠运行具有重要的现实意义。BJTU-RAO转向架数据集包含51种健康状态的样本,涵盖正常状态、部件级单一故障、部件级复合故障以及系统级关联复合故障,数据量达116GB。

2401_88870554的博客 3501

【RK3399 Ubuntu】基于rk3399的lxde的lubuntu桌面移植适配记录之第二步:最基本Ubuntu根文件系统的相关常用工具完善

文章目录1.使能系统网络管理服务1.1 安装驱动modules管理工具1.2 使能网络服务2.终端自动补全命令功能3.安装ssh服务4.安装系统信息查看工具5.安装resize工具6.安装lrzsz工具7.使能rc.local服务7.1 修改服务Install块7.2 使能rc.local.service服务7.3 添加执行脚本且赋予执行权限 续接上文,本文主要完善前面已经制作好的rootfs 1.使能系统网络管理服务 1.1 安装驱动modules管理工具 apt-get install kmod 1.

wang 恒 的博客 1387

Iceberg API 层(API Layer)详解

摘要:Iceberg API层为数据湖表提供了全面的操作接口,包括Java API、SQL API和REST API三种主要类型。Java API提供最底层的表操作能力,支持创建、读写、Schema演进等复杂功能;SQL API与主流计算引擎集成,实现标准化的表管理;REST API便于云原生环境下的自动化治理。

onlymscn的博客 1722

AI智能体丨使用Coze生成自媒体短视频分镜生成器(附保姆级教程)

【短视频分镜脚本生成器】是一款由Coze平台开发出来的智能体,可快速解析某音/某书视频或本地文件,自动生成专业分镜脚本。用户只需输入视频链接或上传文件,系统即会分析镜头节奏、叙事逻辑和画面内容,输出包含画面、模板和话术参考的标准化脚本(支持3分钟内视频)。该工具还能生成HTML网页和可下载图片,提供可视化呈现。工作流程包括视频解析、帧提取、AI画面理解、脚本生成和网页制作,大幅提升短视频创作效率。

李同学Lino的博客 1535

Aimsun交通仿真软件API接口开发与应用实践

交通仿真技术通过建立数字化的交通系统模型,能够对复杂路网运行状态进行精确模拟。其核心原理是将交通流理论、控制算法与计算机仿真技术相结合,通过参数化建模实现不同场景下的交通态势推演。在智慧城市建设中,交通仿真软件与实时数据系统的集成应用,显著提升了交通管理决策的科学性。Aimsun作为支持宏观-中观-微观一体化仿真的专业平台,其开放的API接口体系实现了与SCATS信号控制系统、Kafka实时数据流的深度集成,典型应用于动态OD矩阵调整、信号配时优化等场景。本文详解其Python接口开发方法,包含实时交通数据

weixin_30314793的博客 292

达梦数据库修改最大连接数

达梦数据库的最大连接数推荐配置与服务器内存有关。不应设置得过大,否则容易导致出现OOM。文件中整型的参数值。DSC环境下,除了特殊参数以外,其他参数值会在OK节点上同步。返回值:当前DM.INI文件中对应的参数值。功能说明:返回DM.INI文件中。:DM.INI文件中的参数名。

Sebastien23的博客 3336

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

Flink SQL Gateway 把 Flink SQL 变成“多客户端并发可用”的统一服务入口

本文介绍了 Apache Flink SQL Gateway 的核心功能与应用场景。SQL Gateway 作为 Flink 的 SQL 服务化入口,支持多用户并发访问、标准协议接入和统一资源管理。文章详细解析了其架构设计(Endpoint + SqlGatewayService)、会话与操作机制,并提供了快速部署指南和 REST API 使用示例。重点阐述了 SQL Gateway 的关键能力,包括多集群路由、多种客户端接入方式(SQL Client/JDBC/HiveServer2)以及生产环境配置调优

hello.reader 1859

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

上一篇: Mybatis报错: Parameter ‘XXX‘ not found. Available parameters are [arg1, arg0, param1, param2]解决方案及问题根源
下一篇: PostgreSQL两个日期的时间差比较分钟/小时
angelasp
博客等级 码龄15年 516粉丝 230原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

angelasp

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值