前言
之前寫(xiě)了不少 Flink 文章了玲昧,也有不少 demo栖茉,但是文章寫(xiě)的時(shí)候都是在本地直接運(yùn)行 Main 類(lèi)的 main 方法,其實(shí) Flink 是支持在 UI 上上傳 Flink Job 的 jar 包酌呆,然后運(yùn)行得衡载。最開(kāi)始在第一篇 《從0到1學(xué)習(xí)Flink》—— Mac 上搭建 Flink 1.6.0 環(huán)境并構(gòu)建運(yùn)行簡(jiǎn)單程序入門(mén) 中其實(shí)提到過(guò)了 Flink 自帶的 UI 界面,今天我們就來(lái)看看如何將我們的項(xiàng)目打包在這里發(fā)布運(yùn)行隙袁。
準(zhǔn)備
編譯打包
項(xiàng)目代碼就拿我之前的文章 《從0到1學(xué)習(xí)Flink》—— Flink 寫(xiě)入數(shù)據(jù)到 ElasticSearch 吧痰娱,代碼地址是在 GitHub 倉(cāng)庫(kù)地址:https://github.com/zhisheng17/flink-learning/tree/master/flink-learning-connectors/flink-learning-connectors-es6 ,如果感興趣的可以直接拿來(lái)打包試試水菩收。
我們?cè)谡麄€(gè)項(xiàng)目 (flink-learning)pom.xml 所在文件夾執(zhí)行以下命令打包:
mvn clean install
然后你會(huì)發(fā)現(xiàn)在 flink-learning-connectors-es6 的 target 目錄下有 flink-learning-connectors-es6-1.0-SNAPSHOT.jar 梨睁。
啟動(dòng) ES
注意你的 Kafka 數(shù)據(jù)源和 ES 都已經(jīng)啟動(dòng)好了, 清空了下 ES 目錄下的 data 數(shù)據(jù),為了就是查看是不是真的有數(shù)據(jù)存入進(jìn)來(lái)了娜饵。
提交 jar 包
將此文件提交到 Flinkserver 上坡贺,如下圖:
點(diǎn)擊下圖紅框中的"Upload"按鈕:
如下圖,選中剛剛上傳的文件箱舞,填寫(xiě)類(lèi)名遍坟,再點(diǎn)擊"Submit"按鈕即可啟動(dòng) Job:
查看運(yùn)行結(jié)果
如下圖,在 Overview 頁(yè)面可見(jiàn)正在運(yùn)行的任務(wù):
你可以看到 Task Manager 中關(guān)于任務(wù)的 metric 數(shù)據(jù)
晴股、日志信息以及 Stdout 信息愿伴。
查看 Kibana ,此時(shí) ES 中已經(jīng)有數(shù)據(jù)了:
我們可以在 flink ui 界面上的 overview cancel 這個(gè) job电湘,那么可以看到 job 的日志:
總結(jié)
本篇文章寫(xiě)了下如何將我們的 job 編譯打包并提交到 Flink 自帶到 Server UI 上面去運(yùn)行隔节,也算是對(duì)前面文章的一個(gè)補(bǔ)充,當(dāng)然了寂呛,F(xiàn)link job 不僅支持這種模式的運(yùn)行怎诫,它還可以運(yùn)行在 K8s,Mesos贷痪,等上面幻妓,等以后我接觸到再寫(xiě)寫(xiě)。
本文原創(chuàng)地址是: http://www.54tianzhisheng.cn/2019/01/05/Flink-run/ , 未經(jīng)允許禁止轉(zhuǎn)載劫拢。
關(guān)注我
微信公眾號(hào):zhisheng
另外我自己整理了些 Flink 的學(xué)習(xí)資料涌哲,目前已經(jīng)全部放到微信公眾號(hào)了胖缤。你可以加我的微信:zhisheng_tian,然后回復(fù)關(guān)鍵字:Flink 即可無(wú)條件獲取到阀圾。
更多私密資料請(qǐng)加入知識(shí)星球!
Github 代碼倉(cāng)庫(kù)
https://github.com/zhisheng17/flink-learning/
以后這個(gè)項(xiàng)目的所有代碼都將放在這個(gè)倉(cāng)庫(kù)里狗唉,包含了自己學(xué)習(xí) flink 的一些 demo 和博客初烘。
相關(guān)文章
1、《從0到1學(xué)習(xí)Flink》—— Apache Flink 介紹
2分俯、《從0到1學(xué)習(xí)Flink》—— Mac 上搭建 Flink 1.6.0 環(huán)境并構(gòu)建運(yùn)行簡(jiǎn)單程序入門(mén)
3肾筐、《從0到1學(xué)習(xí)Flink》—— Flink 配置文件詳解
4、《從0到1學(xué)習(xí)Flink》—— Data Source 介紹
5缸剪、《從0到1學(xué)習(xí)Flink》—— 如何自定義 Data Source 吗铐?
6、《從0到1學(xué)習(xí)Flink》—— Data Sink 介紹
7杏节、《從0到1學(xué)習(xí)Flink》—— 如何自定義 Data Sink 唬渗?
8、《從0到1學(xué)習(xí)Flink》—— Flink Data transformation(轉(zhuǎn)換)
9奋渔、《從0到1學(xué)習(xí)Flink》—— 介紹Flink中的Stream Windows
10镊逝、《從0到1學(xué)習(xí)Flink》—— Flink 中的幾種 Time 詳解
11、《從0到1學(xué)習(xí)Flink》—— Flink 寫(xiě)入數(shù)據(jù)到 ElasticSearch
12嫉鲸、《從0到1學(xué)習(xí)Flink》—— Flink 項(xiàng)目如何運(yùn)行撑蒜?
13、《從0到1學(xué)習(xí)Flink》—— Flink 寫(xiě)入數(shù)據(jù)到 Kafka
14玄渗、《從0到1學(xué)習(xí)Flink》—— Flink JobManager 高可用性配置
15座菠、《從0到1學(xué)習(xí)Flink》—— Flink parallelism 和 Slot 介紹
16、《從0到1學(xué)習(xí)Flink》—— Flink 讀取 Kafka 數(shù)據(jù)批量寫(xiě)入到 MySQL