Flink Job 如何集成到自己的系统,方便管理

classic Classic list List threaded Threaded
11 messages Options
Reply | Threaded
Open this post in threaded view
|

Flink Job 如何集成到自己的系统,方便管理

Jacob
我们现在提交Flink Job 是通过flink客户端run命令提交job,进行实时任务的计算,每次提交都要登录prd机器,上传jar包,过程比较麻烦。


后期规划把实时计算的任务集成到我们已有的一个系统中,把上面描述的过程封装起来,给用户提供一些按钮、菜单等,理想状态下,在这个系统增加一些模块、菜单之类的东西,就能完成对Job的维护,包括提交Job、查看正在运行的Job、停止Job等等          

上面所说的这个系统是我们自研的一个数据处理平台,实时计算任务也是其中的一环,因此就想把实时计算的任务的模块也集成到其中去。


不知道这有没有可能实现

请大佬提供些许思路!感谢



-----
Thanks!
Jacob
--
Sent from: http://apache-flink.147419.n8.nabble.com/
Thanks!
Jacob
Reply | Threaded
Open this post in threaded view
|

Re: Flink Job 如何集成到自己的系统,方便管理

tison
有的,通过 FLINK 和 YARN 或 k8s 的接口进行编程,管理元数据,管理用户文件,支持提交作业及之后管理作业状态,这是许多公司应用
Flink 的实现方式。

你说的前端的东西是对接口返回值的友好展示,Flink 本身有一个 Web 前端,可以支持你要的大部分功能,但是多任务可能会有一些缺陷,尤其你不是使用
session 模式的情况下。

向下整合 Flink 能力以及实际部署的集群信息,向上提供人性化的交互页面,按照传统的 Web App 开发思路就可以的。

Best,
tison.


Jacob <[hidden email]> 于2021年3月6日周六 下午4:00写道:

> 我们现在提交Flink Job
> 是通过flink客户端run命令提交job,进行实时任务的计算,每次提交都要登录prd机器,上传jar包,过程比较麻烦。
>
>
> 后期规划把实时计算的任务集成到我们已有的一个系统中,把上面描述的过程封装起来,给用户提供一些按钮、菜单等,理想状态下,在这个系统增加一些模块、菜单之类的东西,就能完成对Job的维护,包括提交Job、查看正在运行的Job、停止Job等等
>
>
> 上面所说的这个系统是我们自研的一个数据处理平台,实时计算任务也是其中的一环,因此就想把实时计算的任务的模块也集成到其中去。
>
>
> 不知道这有没有可能实现
>
> 请大佬提供些许思路!感谢
>
>
>
> -----
> Thanks!
> Jacob
> --
> Sent from: http://apache-flink.147419.n8.nabble.com/
Reply | Threaded
Open this post in threaded view
|

Re: Flink Job 如何集成到自己的系统,方便管理

DanielGu
>有的,通过 FLINK 和 YARN 或 k8s 的接口进行编程,管理元数据,管理用户文件,支持提交作业及之后管理作业状态,这是许多公司应用Flink
的实现方式。

请问有什么可以参考的资料吗?有相关意愿,不知道从哪里下手,希望整个 flink on k8s



--
Sent from: http://apache-flink.147419.n8.nabble.com/
Reply | Threaded
Open this post in threaded view
|

Re: Flink Job 如何集成到自己的系统,方便管理

shimin huang
可以看下flink源码的flink k8s模块,里面的test pachage下有需求flink k8s的使用姿势,希望对你有帮助。

DanielGu <[hidden email]> 于2021年3月7日周日 下午4:34写道:

> >有的,通过 FLINK 和 YARN 或 k8s
> 的接口进行编程,管理元数据,管理用户文件,支持提交作业及之后管理作业状态,这是许多公司应用Flink
> 的实现方式。
>
> 请问有什么可以参考的资料吗?有相关意愿,不知道从哪里下手,希望整个 flink on k8s
>
>
>
> --
> Sent from: http://apache-flink.147419.n8.nabble.com/
Reply | Threaded
Open this post in threaded view
|

Re: Flink Job 如何集成到自己的系统,方便管理

Jacob
In reply to this post by tison
谢谢回复!

这两天有事回复晚了抱歉。

我flink job是运行在hadoop集群的,即On Yarn模式。
根据您所说的


1.[通过 FLINK 和 YARN 或 k8s
的接口进行编程,管理元数据,管理用户文件,支持提交作业及之后管理作业状态],意思是可以通过相关API,去读一个jar包并提交Job吗?要提交到的集群也是通过配置参数传入代码里,是大概这样的一个过程吗?有相关的文档或者demo吗?我在网上一直找不到相关内容。


2. [Flink 本身有一个 Web
前端,可以支持你要的大部分功能],这个我清楚,也经常打开这个webUI查看日志,那如果和自己系统集成的话,是把这些页面以超链接的形式集成到系统里面吗,在系统dashboard中点某个按钮,跳转到flink
webui的某一个模块里?



-----
Thanks!
Jacob
--
Sent from: http://apache-flink.147419.n8.nabble.com/
Thanks!
Jacob
Reply | Threaded
Open this post in threaded view
|

Re: Flink Job 如何集成到自己的系统,方便管理

Jacob
In reply to this post by tison
谢谢提供思路,刚通过接口编程这个思路找到了一些文章和demo。



-----
Thanks!
Jacob
--
Sent from: http://apache-flink.147419.n8.nabble.com/
Thanks!
Jacob
Reply | Threaded
Open this post in threaded view
|

Re: Flink Job 如何集成到自己的系统,方便管理

tison
>意思是可以通过相关API,去读一个jar包并提交Job吗?要提交到的集群也是通过配置参数传入代码里,是大
概这样的一个过程吗?有相关的文档或者demo吗?我在网上一直找不到相关内容。

是的,目前公开的 API 是命令行,内部是 ClusterDescriptor、CliFrontend
等一系列类在驱动。定制的时候通常直接根据内部类来编程,但是它们不是公开接口,可能随时会改变。目前没有更好的办法。

>如果和自己系统集成的话,是把这些页面以超链接的形式集成到系统里面吗,在系统dashboard中点某个按钮,跳转到flink webui的某一个模块里?

这个集成有很多种办法了,包括你页面嵌套页面,或者页面跳转页面,或者直接二开 Flink Web 模块,或者在完全自主开发的页面里调用 REST
API,等等。

Best,
tison.


Jacob <[hidden email]> 于2021年3月9日周二 上午9:42写道:

> 谢谢提供思路,刚通过接口编程这个思路找到了一些文章和demo。
>
>
>
> -----
> Thanks!
> Jacob
> --
> Sent from: http://apache-flink.147419.n8.nabble.com/
>
Reply | Threaded
Open this post in threaded view
|

Re: Flink Job 如何集成到自己的系统,方便管理

Jacob
谢谢大佬答疑。
我先尝试使用 YarnClusterDescriptor 这些类提交Job。看看后续使用情况 是否合适



-----
Thanks!
Jacob
--
Sent from: http://apache-flink.147419.n8.nabble.com/
Thanks!
Jacob
Reply | Threaded
Open this post in threaded view
|

Re: Flink Job 如何集成到自己的系统,方便管理

HunterXHunter
Reply | Threaded
Open this post in threaded view
|

Re: Flink Job 如何集成到自己的系统,方便管理

silence-2
In reply to this post by Jacob
个人也维护了个flink平台的开源项目,希望可以帮助到你
https://github.com/hairless/plink



--
Sent from: http://apache-flink.147419.n8.nabble.com/
Reply | Threaded
Open this post in threaded view
|

Re: Flink Job 如何集成到自己的系统,方便管理

Level1accelerator
In reply to this post by Jacob
有啊,现在很多公司都做了数据平台,并且对外出售,你可以找一个公司的产品试用,然后照着它的功能,自己开发

> 2021年3月6日 16:00,Jacob <[hidden email]> 写道:
>
> 我们现在提交Flink Job 是通过flink客户端run命令提交job,进行实时任务的计算,每次提交都要登录prd机器,上传jar包,过程比较麻烦。
>
>
> 后期规划把实时计算的任务集成到我们已有的一个系统中,把上面描述的过程封装起来,给用户提供一些按钮、菜单等,理想状态下,在这个系统增加一些模块、菜单之类的东西,就能完成对Job的维护,包括提交Job、查看正在运行的Job、停止Job等等          
>
> 上面所说的这个系统是我们自研的一个数据处理平台,实时计算任务也是其中的一环,因此就想把实时计算的任务的模块也集成到其中去。
>
>
> 不知道这有没有可能实现
>
> 请大佬提供些许思路!感谢
>
>
>
> -----
> Thanks!
> Jacob
> --
> Sent from: http://apache-flink.147419.n8.nabble.com/