如何迁移 Flink 任务到实时计算
作者 | 景麗寧(硯田),阿里巴巴技術專家景麗寧(硯田)
本文由阿里巴巴技術專家景麗寧(硯田)分享,主要介紹如何遷移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中復制啟動的。
原文鏈接:https://developer.aliyun.com/article/781175?
版權聲明:本文內容由阿里云實名注冊用戶自發貢獻,版權歸原作者所有,阿里云開發者社區不擁有其著作權,亦不承擔相應法律責任。具體規則請查看《阿里云開發者社區用戶服務協議》和《阿里云開發者社區知識產權保護指引》。如果您發現本社區中有涉嫌抄襲的內容,填寫侵權投訴表單進行舉報,一經查實,本社區將立刻刪除涉嫌侵權內容。總結
以上是生活随笔為你收集整理的如何迁移 Flink 任务到实时计算的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 大促密集,CDN如何保障电商体验如丝般顺
- 下一篇: mPaaS 客户端问题排查之突如其来的“