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
二、刷新后就可以看到Flink啦,此处我已经安装完成,只要三步走就可以。
下载->分配->**
下载
分配
**
三、添加Flink服务组件
此处我使用的是Standalone模式
此处注意,点右侧问号,我把有坑的地方都做了描述。
安装完成截图
任务跑起来的截图