您好,登錄后才能下訂單哦!
本篇內(nèi)容主要講解“application部署方式是什么”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“application部署方式是什么”吧!
run-application模式
(此方式一勞永逸,節(jié)省資源+數(shù)據(jù)隔離,集群之間不會相互影響)
①,將自己的項目jar包 和 flink鏡像 打在一起生成新的鏡像(默認jdk是1.8,如果有jdk版本要求可將jdk的home目錄一起打進鏡像,然后通過配置文件內(nèi)添加參數(shù) env.java.home: /opt/flink/jdk-11.0.10+0 來指定jdk )
Dockerfile:
FROM flink RUN mkdir -p /opt/flink/usrlib COPY matest.jar /opt/flink/usrlib/matest.jar COPY jdk-11.0.10+0 /opt/flink/jdk-11.0.10+0 //RUN echo "env.java.home=/opt/flink/jdk-11.0.10+0" > /opt/flink/conf/flink-conf.yaml
②,構(gòu)建鏡像
docker build -t wordcount:1.0(你的鏡像自定義名字) ./
③,如果有本地倉庫的push到本地倉庫,這樣其他kubernetes的節(jié)點就不需要手動拷貝鏡像了
docker tag wordcount:1.0 192.168.xx.xx:30002/gtcom/wordcount:1.0 docker push 192.168.xx.xx:30002/gtcom/wordcount:1.0
④,創(chuàng)建kubernets命名空間
kubectl create namespace flink-application-cluster
⑤,創(chuàng)建該空間的用戶 flink (自定義)
kubectl create serviceaccount flink -n flink-application-cluster
⑥,給該用戶賦權(quán)(不創(chuàng)建用戶和賦權(quán)啟動時候會報 權(quán)限 錯)
kubectl create clusterrolebinding flink-role-binding-flink \ --clusterrole=edit \ --serviceaccount=flink-application-cluster:flink
⑦,到你服務器flink的home目錄下,用flink命令 啟動集群
bin/flink run-application --target kubernetes-application \ -Dkubernetes.cluster-id=gtcom-application-cluster(自定義任務名稱,否則會自動創(chuàng)建) \ -Dkubernetes.namespace=flink-application-cluster \ -Dkubernetes.service-account=flink \ -Dkubernetes.container.image= 192.168.xx.xx:30002/gtcom/wordcount:1.0 \ local:///opt/flink/usrlib/gtcom-governance-2.3.0.jar --driverType AccessGovern --flow news --topicName flink-index --kafkaParallelism 3 --sinkParallelism 3
(從“--driverType” 開始是你的jar包需要傳遞的一些自定義參數(shù))
提供一些圖片:
到此,相信大家對“application部署方式是什么”有了更深的了解,不妨來實際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進入相關(guān)頻道進行查詢,關(guān)注我們,繼續(xù)學習!
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。