ClouderaManager上部署Flink组件
ClouderaManager本身不支持部署Flink,如果需要使用ClouderaManager管理Flink组件,需要先将
Flink组件的离线parcel包下载下来
ClouderaManager上部署Flink组件
前提:
制作Flink的parcel包和csd文件
修改flink-parcel.properties文件
制作 Flink 的Parcel包和CSD文件并校验
查看parcel包并发布
重启ClouderaManager服务
在ClouderaManager中配置远程parcel库
可能遇到的问题
集群测试
前提:
Flink本身不支持Hadoop3.0以上的版本,若需要使用Flink集成Hadoop3.x需要对Flink重新进行编译。
官方下载flink源码包:https://flink.apache.org/downloads.html
官方下载flink-shaded包:https://flink.apache.org/downloads.html
注意:
使用flink 1.10或以上的版本,必须依赖 flink-shaded 9.0或以上版本的版本
1、修改 flink-shaded中的pom.xml
vim flink-shaded/pom.xml
添加:
cloudera
https://repository.cloudera.com/artifactory/cloudera-repos/
在 flink-shaded/flink-shaded-hadoop-2-uber/pom.xml 中的 dependencyManagement 标签中添加
如下依赖:
commons-cli
commons-cli
1.3.1
2、编译flink-shaded
mvn -T10C clean install -Dhadoop.version=3.0.0-cdh6.3.2
3、编译flink
vim flink/pom.xml 添加:
cloudera
https://repository.cloudera.com/artifactory/cloudera-repos/
vim flink/flink-yarn/pom.xml 添加屏蔽插件:
org.apache.maven.plugins
maven-compiler-plugin
3.8.0
${java.version}${java.version}
true
-Xpkginfo:always
编译:
mvn -T10C clean package -DskipTests -Pvendor-repos -Dhadoop.version=3.0.0-
cdh6.3.2 -Dscala-2.11 -Pinclude-hadoop
4、编译完成后打包:
路径是: flink-1.x.x/flink-disk/target/flink-1.x.x-bin
打包: tar -czf flink-1.x.x-bin-scala_2.11.tgz flink-1.x.x
制作Flink的parcel包和csd文件
1、准备JDK环境变量:
[jdk-8u144-linux-x64.tar.gz](file:///E:/%E5%AE%89%E8%A3%85%E5%8C%85/01_jdk/jdk-8u144-linux-x64.tar.gz)
# JAVA_HOME
export JAVA_HOME=/export/servers/jdk # jdk安装路径
export PATH= P A T H : PATH: PATH:JAVA_HOME/bin
[apache-maven-3.3.9-bin.zip](file:///E:/%E5%AE%89%E8%A3%85%E5%8C%85/%E8%BD%AF%E4%BB%B6%E5%8C%85/environment/Maven/apache-maven-3.3.9-bin.zip)
export MAVEN_HOME=/export/servers/maven
export PATH= P A T H : PATH: PATH:MAVEN_HOME/bin
将maven的仓库镜像修改为aliyun
alimaven
aliyun maven
http://maven.aliyun.com/nexus/content/groups/public/
central
2、使用Linux git clone从https://github.com/Git-Charles/flink-parcel.git拉取Flink文件
[root@hadoop01 software]# git clone https://github.com/Git-Charles/flink-
parcel.git
Initialized empty Git repository in /export/software/flink-parcel/.git/
remote: Enumerating objects: 32, done.
remote: Counting objects: 100% (32/32), done.
remote: Compressing objects: 100% (21/21), done.
remote: Total 32 (delta 8), reused 30 (delta 6), pack-reused 0
Unpacking objects: 100% (32/32), done.
[root@hadoop01 software]#
注意:直接从Github上获取Flink文件会因为网络原因而失败,可以修改 flink-parcel.properties中
的 FLINK_URL为:https://archive.apache.org/dist/flink/flink-1.9.1/flink-1.9.1-bin-scala_2.12.tgz
3、将之前编译好的 flink-1.x.x-bin-scala_2.11.tgz放到根目录中
修改flink-parcel.properties文件
#FLINK 下载地址(因为