CDH 6.1.1(Hadoop 3.0.0)、Flink 1.10.1、Centos7.4、Maven3.6.3、Scala-2.12和CDH的原生jdk1.8
https://archive.apache.org/dist/flink/flink-1.10.1/flink-1.10.1-src.tgz
其他版本可以通过该方法下载资源
https://mirrors.tuna.tsinghua.edu.cn/apache/flink/flink-shaded-10.0/flink-shaded-10.0-src.tgz
https://mirror.bit.edu.cn/apache/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz
命令: tar -xf apache-maven-3.6.3-bin.tar
命令:1.vi /etc/profile
2.source /etc/profile
并查看maven是否配置成功,命令:mvn --version
配置内容如下(注意可能需要删掉前后的标签):
alimaven
central
aliyun maven
http://maven.aliyun.com/nexus/content/repositories/central/
alimaven
aliyun maven
http://maven.aliyun.com/nexus/content/groups/public/
central
central
Maven Repository Switchboard
http://repo1.maven.org/maven2/
central
repo2
central
Human Readable Name for this Mirror.
http://repo2.maven.org/maven2/
ibiblio
central
Human Readable Name for this Mirror.
http://mirrors.ibiblio.org/pub/mirrors/maven2/
jboss-public-repository-group
central
JBoss Public Repository Group
http://repository.jboss.org/nexus/content/groups/public
google-maven-central
Google Maven Central
https://maven-central.storage.googleapis.com
central
<!-- 中央仓库在中国的镜像 -->
maven.net.cn
oneof the central mirrors in china
http://maven.net.cn/content/groups/public/
central
命令:tar -xf flink-shaded-10.00-src.tar
命令:vi flink-shaded-10.0/pom.xml
在里面的profiles中添加如下配置参数:
vendor-repos
vendor-repos
<!-- Add vendor maven repositories -->
<!-- Cloudera -->
cloudera-releases
https://repository.cloudera.com/artifactory/cloudera-repos
true
false
<!-- Hortonworks -->
HDPReleases
HDP Releases
https://repo.hortonworks.com/content/repositories/releases/
false
true
HortonworksJettyHadoop
HDP Jetty
https://repo.hortonworks.com/content/repositories/jetty-hadoop
false
true
<!-- MapR -->
mapr-releases
https://repository.mapr.com/maven/
false
true
进入到flink-shaded-10文件夹下执行一下命令:
mvn clean install -DskipTests -Pvendor-repos -Dhadoop.version=3.0.0-cdh6.1.1 -Dscala-2.12 -Drat.skip=true -T10C
本次编译失败了一次,用时30分钟,网络因素会影响编译速度,如果失败了只需 重新输入该命令,重新编译即可。最后编译成功。
命令: tar -xf flink-1.10.1-src.tgz
命令:1.cd flink-1.10.1
2.mvn clean install -DskipTests -Dfast -Drat.skip=true -Dhaoop.version=3.0.0-cdh6.1.1 -Pvendor-repos -Dinclude-hadoop -Dscala-2.12 -T10C
编译结果:build success
第一次在3台公司的集群编译花了56分钟,这次在项目集群编译。所以时间不会短,可以去干点别的,抽空看看有没有断掉。
路径:flink-dist/target/flink-1.10.1-bin/
*注意:我们是基于scala2.12编译的,压缩包的名称必须是:flink-1.10.1-bin-scala_2.12.tgz*
打包命令:tar -zcf flink-1.10.1-bin-scala_2.12.tgz flink-1.10.1/
yum -y install git
mkdir -p /data/software/flink
cd /data/software/flink
git clone https://github.com/pkeropen/flink-parcel.git
根据自己的配置情况做修改
命令:cd flink-parcel
vi flink-parcel.properties
此时build.sh的权限为-rw-r–r--,需要修改权限,命令:chmod 755 build.sh
命令:./build.sh parcel
on yarn版本 命令:./build.sh csd_on_yarn
standalone版本 命令:./build.sh csh_standalone
命令: cp FLINK-1.10.1.jar FLINK_ON_YARN-1.10.1.jar /opt/cloudera/csd/
命令:mkdir /var/www/html/flink-1.10.1
cp FLINK-1.10.1-BIN-SCALA_2.12_build/* /var/www/html/flink-1.10.1/
命令:createrepo .
*注意:如果连接访问不了 需要查看httpd服务是否开启或者直接执行 systemctl restart httpd 再刷新页面就可以了*
重启cloudera-scm-server,并登录Cloudera Manager管理界面,点击主机,进入parcel界面
命令:systemctl restart cloudera-scm-server
新增一栏,添加上六-10中的flink地址
有可能会提示Parcel FLINK-1.10.1-BIN-SCALA_2.12-el7.parcel 的错误:哈希验证失败。如若没有可忽略。
1.文件的哈希值不对,如果不一样就sha1sum后的值更新到.sha文件中
2.如果上图hash值是对的,依然上面的错
命令:vi /etc/httpd/conf/httpd.conf
添加此内容,然后重启httpd服务,命令:systemctl restart httpd
此时,flink可以正常添加服务
如果CDH集群没有应用到kerberos,不要删掉这两个里面的内容,否则安装会失败
添加完成
注意可能出现的问题:Error found before invoking supervisord: ‘getpwnam(): name not found: flink’
解决方法:在添加Flink-yarn服务所在的节点添加flink用户和角色
命令:groupadd flink
useradd flink -g flink
1.进入yarn,点击应用程序,并点击flink的id,进入
此时,可以得知我的flink界面的地址是我的slave3的地址,而不是我的master的地址,端口是8081。需要根据该方式,找到自己的地址和端口号。