參考文章:Flink-1.9.1-CDH6.3.2源碼編譯、CDH-Flink-Parcel製作、CDH6.3.2集成Flink1.9.1
一、下載兩個Tag包(已經修改好配置文件)
maven指向私服具體修改內容可以參考 Flink1.9系列-CDH版本源碼編譯篇
flink-shaded-7.0-src.tar.gz
flink-1.9.1-src.tar.gz
二、編譯flink-shaded
flink-shaded-7.0-src.tar.gz
vim flink-shaded-7.0/pom.xml
<!--添加Maven私服的倉庫(私服中需要添加cdh倉庫)-->
<repositories>
<repository>
<id>privateMaven</id>
<url>http://10.88.202.21:8882/repository/maven-public/</url>
</repository>
</repositories>
在 flink-shaded-7.0/flink-shaded-hadoop-2-uber/pom.xml 中的 dependencyManagement 標籤中添加如下依賴
<dependency>
<groupId>commons-cli</groupId>
<artifactId>commons-cli</artifactId>
<version>1.3.1</version>
</dependency>
注意:這一步一定要添加,不然編譯成功後,啓動不了,並 .out 文件中拋出如下錯誤:Exception in thread "main" java.lang.NoSuchMethodError: org.apache.commons.cli.Option.builder(Ljava/lang/String;)Lorg/apache/commons/cli/Option$Builder;
原因是項目打包後,依賴的 commons-cli 是1.2版本的,build 方法在該版本中不存在
進入目錄mvn打包
mvn -T10C clean install -Dhadoop.version=3.0.0-cdh6.3.2
三、結束後編譯flink1.9.1
flink-1.9.1-src.tar.gz
vim flink-1.9.1/pom.xml
<!--添加Maven私服的倉庫(私服中需要添加cdh倉庫)-->
<repositories>
<repository>
<id>privateMaven</id>
<url>http://10.88.202.21:8882/repository/maven-public/</url>
</repository>
</repositories>
vim flink-1.9.1/flink-yarn/pom.xml
在<build>-><plugins>下添加屏蔽插件
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.0</version>
<configuration>
<source>${java.version}</source>
<target>${java.version}</target>
<!-- 略過測試代碼的編譯 -->
<skip>true</skip>
<!-- The semantics of this option are reversed, see MCOMPILER-209. -->
<useIncrementalCompilation>false</useIncrementalCompilation>
<compilerArgs>
<!-- Prevents recompilation due to missing package-info.class, see MCOMPILER-205 -->
<arg>-Xpkginfo:always</arg>
</compilerArgs>
</configuration>
</plugin>
mvn -T10C clean package -DskipTests -Pvendor-repos -Dhadoop.version=3.0.0-cdh6.3.2 -Dscala-2.11 -Pinclude-hadoop
四、編譯flink1.9.1完成,打包
路徑是:flink-1.9.1/flink-dist/target/flink-1.9.1-bin
注意:我們是基於scala2.11編譯的,壓縮包的名稱必須是:flink-1.9.1-bin-scala_2.11.tgz
tar -czf flink-1.9.1-bin-scala_2.11.tgz flink-1.9.1
可以看下hadoop的依賴包也編譯完成
1、解壓 flink-parcel.tar.gz
2、將之前編譯好的flink-1.9.1-bin-scala_2.11.tgz 放到跟目錄中
3、修改配置文件flink-parcel.properties(此處我已經修改完畢)
4、修改build.sh(修改後的腳本,此處需要修改var/www/html路徑,以及cdh的csd路徑)
5、編譯parcel
sh build.sh parcel
6、編譯flink-on-yarn
sh build.sh csd_on_yarn
7、編譯flink-standalone
sh build.sh csd_standalone
8、完成Flink-Parcel製作
查看路徑文件
9、查看界面是否可以訪問
我們再看看 manifest.json文件的內容
CDH界面安裝注意事項
一、在Parcel中新增存儲庫URL
http://10.88.202.25/FLINK-1.9.1-poros
二、刷新後就可以看到Flink啦,此處我已經安裝完成,只要三步走就可以。
下載->分配->激活
下載
分配
激活
三、添加Flink服務組件
此處我使用的是Standalone模式
此處注意,點右側問號,我把有坑的地方都做了描述。
安裝完成截圖
任務跑起來的截圖
如果幫到了你,歡迎打賞
下載地址:
鏈接:https://pan.baidu.com/s/1Udbt3t9ttrEfoTcNFi-OAw
提取碼:3ozf
複製這段內容後打開百度網盤手機App,操作更方便哦