简介: 本文由阿里巴巴技术专家景丽宁(砚田)分享,次要介绍如何迁徙Flink工作到实时计算 Flink 中来。

通常用户在线下次要应用 Flink run,这会造成一些问题,比方:同一个配置因版本而变动;无奈疾速切换不同版本;无奈从之前的作业复原。

那么如何从线下迁徙到线上呢?本文将通过上面四局部来向大家介绍。

一、如何迁徙:从 Flink run 到流计算平台

如下图的线下命令如何迁徙到线上。首先关上 VVP UI,增加根底配置,次要包含:作业名称、Jar URI、一些主要参数和并行度。还能够点击高级配置,配置更多信息。

比方高级配置里的行为配置,分为三局部:降级策略、初始状态和复原策略。降级策略个别抉择Stateless,初始状态抉择Running,复原策略抉择Latest State。

降级策略抉择Stateless,示意针对曾经在运行的作业,编辑并保留配置后,会间接把原作业停掉,而后重新启动一个更新的作业;抉择Stateble,针对正在运行的作业做配置编辑并保留的话,作业会先做一次Savepoint,而后加载新的配置并应用该 Savepoint启动新的作业。
复原策略抉择LatestSavepoint,是指作业在暂停状况下,如果再启动,将应用最新的Savepoint启动。
下面介绍的是 Flink 配置中比拟重要的局部,上面图片显示的是另外一部分能够设置Checkpoint距离等的配置,接下来是资源配置。日志配置局部能够抉择日志保留地位,不便日后如果作业呈现问题,能够不便的排查问题。

Flink 作业配置实现并启动运行后,如果出现异常,能够通过运行事件查看运行状况和问题。也能够关上 Flink UI的Job Manager,查看日志状况。

二、多Jar状况下,用户如何增加其余依赖的Jar

一些用户有自定义依赖且无奈通过 fat jar 解决问题。举个例子,A用户有本人的main Jar和一些其余的Jar,这些Jar的利用场景不一样,那么首先须要在资源管理页面上传Jar包,上传实现之后就能够在页面应用该文件。
上传后再到高级配置中,找到“额定依赖的Jar”,下拉并抉择刚刚上传的Jar 包就能够了。

三、用户如何通过配置文件定义作业

在资源管理里上传文件,而后在高级配置里选增加依赖,抉择须要的依赖。如果启动函数里,main class是须要读取某个文件,先通过依赖增加文件,而后再依据提醒的形式读取文件。

以上两个形式是搁置用户Jar的形式,jar 和其余文件都能够在这里寄存。

四、如何复用原来的state减速作业复原

如果在运行作业时发现问题,个别状况下是停下来而后找到问题修复后再重启。用户须要在创立的时候指定 Checkpoint 须要的 OSS。 如果开启了Checkpoint,后续作业就能够间接从Checkpoint中复原。
首先确认高级配置中复原策略抉择LatestState或LatestSavepoint。在这个前提下,能够暂停作业(千万不要进行作业),暂停会触发Savepoint,当再次点击启动时,会从这次Savepoint点复原。

关上 Flink UI ,而后点击作业快照,在作业快照中能够查看 Flink Checkpoint指标,外面会显示Restore的次数和最初一次Restore的地址等信息,可确定作业是从最新的 State 复原。

当作业正在运行,想对以后作业出项拷贝,如何操作呢?在作业控制页面点击Checkpoint,找到历史快照并点击其对应的最右侧的“从该快照复制作业”,那么就实现了把以后作业复制的操作,复制内容包含正在运行作业的Jar 包配置等。点击启动后,能够从作业快照中查看到新作业是从上个作业最近的一次Savepoint中复制启动的。

作者:景丽宁(砚田)
原文链接
本文为阿里云原创内容,未经容许不得转载