CDH整合Flink(CDH6.3.0+Flink1.12.1)

CDH整合Flink(CDH6.3.0+Flink1.12.1)

1 准备环境

Linux版本:CENTOS 7.7.1908 在自己的虚拟机上提前准备好,版本建议高点
JAVA版本: jdk1.8.0_181-cloudera 使用CDH带的JDK1.181版本即可,解压,配置环境变量
​
export JAVA_HOME=/usr/java/jdk1.8.0_181-cloudera
export PATH=$PATH:$JAVA_HOME/bin
​
MAVEN版本:apache-maven-3.6.3 解压,配置环境变量,配置国内源
tar -zxvf apache-maven-3.6.3-bin.tar.gz -C .
​
export MVN_HOME=/home/data/apache-maven-3.6.3
export PATH=$PATH:$JAVA_HOME/bin:$MVN_HOME/bin
​
配置镜像
    
    
      alimaven
      aliyun maven
      http://maven.aliyun.com/nexus/content/repositories/central/
      central
    
    
      nexus-aliyun
      aliyun maven
      http://maven.aliyun.com/nexus/content/groups/public/
      central
    
    
    
      maven cn repo
      oneof the central mirrors in china
      http://maven.net.cn/content/groups/public/
      central
    
    
      maven repo
      Maven Repository Switchboard
      http://repo1.maven.org/maven2/
      central
    
    
      maven repo2
      central
      Human Readable Name for this Mirror.
      http://repo2.maven.org/maven2/
    
​
git版本:1.8.3.1-23.el7_8
yum install -y wget git

2 FLINK相关准备

下载

flink下载地址:https://archive.apache.org/dist/flink/flink-1.12.1/flink-1.12.1-bin-scala_2.12.tgz
parcel制作工具下载地址:https://github.com/pkeropen/flink-parcel.git(github提供的工具包)
使用:git clone https://github.com/pkeropen/flink-parcel.git 下载

准备FLINK1.12.1包

在`/var/www/html`目录下创建flinktar1.12目录,将`flink-1.12.1-bin-scala_2.12.tgz`置于该目录下
通过 http://cdhnode01/flinktar1.12 可以查看到

准备paecel环境

修改配置文件

vim flink-parcel.properties
​
#FLINK 下载地址
#FLINK_URL=https://mirrors.tuna.tsinghua.edu.cn/apache/flink/flink-1.9.1/flink-1.9.1-bin-scala_2.12.tgz
FLINK_URL=http://cdhnode01/flinktar1.12/flink-1.12.1-bin-scala_2.12.tgz
​
#flink版本号
#FLINK_VERSION=1.9.1
FLINK_VERSION=1.12.1
​
#扩展版本号
#EXTENS_VERSION=BIN-SCALA_2.12
EXTENS_VERSION=BIN-SCALA_2.12
​
#操作系统版本,以centos为例
#OS_VERSION=7
OS_VERSION=7
​
#CDH 小版本
#CDH_MIN_FULL=5.2
CDH_MIN_FULL=5.2
#CDH_MAX_FULL=5.15
CDH_MAX_FULL=6.3.3
​
#CDH大版本
#CDH_MIN=5
CDH_MIN=5
#CDH_MAX=5
CDH_MAX=6

3 编译

执行 bash build.sh parcel
​
报错如下:
​
git clone https://github.com/cloudera/cm_ext.git
Cloning into 'cm_ext'...
fatal: unable to access 'https://github.com/cloudera/cm_ext.git/': Failed connect to github.com:443; Connection timed out
​
修改如下:
​
git clone https://github.com/cloudera/cm_ext.git  改为 git clone git://github.com/cloudera/cm_ext.git
​
再次执行

执行这部分操作需要稍等一会,打包结束后执行另外一个操作

bash build.sh csd_on_yarn
​
执行完成后会生成FLINK_ON_YARN-1.12.1.jar

CDH整合Flink(CDH6.3.0+Flink1.12.1)

生成这俩包为:FLINK-1.12.1-BIN-SCALA_2.12.tar FLINK_ON_YARN-1.12.1.jar

4 编译flink-shaded

由于Flink1.12版本编译后确实没有flink-shaded-hadoop-2-uber 3.0.0-cdh6.3.0-10.0文件,但是flink-shaded-10.0也适配flink1.12环境,于是改用官网提供的flink-shaded-10.0-src.tgz进行编译,编译步骤类似。

在flink-shaded-10.0目录下进行编译,首先修改pom.xml文件

    vendor-repos
    
        
            vendor-repos
        
    
    
    
        
        
            cloudera-releases
            https://repository.cloudera.com/artifactory/cloudera-repos
            
                true
            
            
                false
            
        
        
        
            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-releases
            https://repository.mapr.com/maven/
            false
            true
        
    

执行:mvn clean install -DskipTests -Pvendor-repos -Dhadoop.version=3.0.0-cdh6.3.0 -Dscala-2.12 -Drat.skip=true -T10C

CDH整合Flink(CDH6.3.0+Flink1.12.1)

编译成功后已经有目标文件,目标文件位置

/home/data/flink-shaded-10.0/flink-shaded-hadoop-2-parent/flink-shaded-hadoop-2-uber/target

5 集成CDH

将编译好的flink-1.12.1-bin-scala_2.12.tar解压到/var/www/html并重命名为flink1.12

将FLINK_ON_YARN-1.12.1.jar放到CM所在的/opt/cloudera/csd/目录下

重启CM

systemctl stop cloudera-scm-server

systemctl start cloudera-scm-server

会发现添加服务中多了FLINK_ONYARN的服务

CDH整合Flink(CDH6.3.0+Flink1.12.1)

配置pacel,将FLINK1.12.1的服务添加进去

CM页面—>主机—> parcel —> 配置,添加上传的parcel的位置

CDH整合Flink(CDH6.3.0+Flink1.12.1)

检查新Parcel ,然后下载—>分配—>激活

这时候会出现一个问题

CDH整合Flink(CDH6.3.0+Flink1.12.1)

此时我们需要多做一步

先对比文件hash值是否一致,如果不一致就修改一致

CDH整合Flink(CDH6.3.0+Flink1.12.1)

查看发现hash码一致,下载仍然报错,需要修改httpd配置文件 文件在/etc/httpd/conf/httpd.conf

重启httpd服务 systemctl restart httpd

CDH整合Flink(CDH6.3.0+Flink1.12.1)

再次进行上次操作,发现已经激活成功了。

CDH整合Flink(CDH6.3.0+Flink1.12.1)

6 启动FLINK服务

CDH整合Flink(CDH6.3.0+Flink1.12.1)

启动发现第一个报错

CDH整合Flink(CDH6.3.0+Flink1.12.1)

去看这个目录下的日志得到 /var/log/flink下找日志,第一步将有认证的去掉,还是报错,发现错误如下:

CDH整合Flink(CDH6.3.0+Flink1.12.1)

CDH整合Flink(CDH6.3.0+Flink1.12.1)

在这块配置过了HADOOP_CLASSPATH=hadoop classpath 但是问题没有解决。需要将我们打的1.10的包放到/opt/cloudera/parcels/FLINK-1.12.1-BIN-SCALA_2.12/lib/flink/lib,再次启动。

CDH整合Flink(CDH6.3.0+Flink1.12.1)

按照下面这个图片去解决问题

CDH整合Flink(CDH6.3.0+Flink1.12.1)

su – hdfs -s /bin/bash

CDH整合Flink(CDH6.3.0+Flink1.12.1)

在这一块进行权限的赋予,以前的CDH部署过FLINK1.9是会有影响的。集群启动成功

CDH整合Flink(CDH6.3.0+Flink1.12.1)

但是一会又挂了,接着查找日志

CDH整合Flink(CDH6.3.0+Flink1.12.1)

CDH整合Flink(CDH6.3.0+Flink1.12.1)

发现以前装的FLINK1.9确实有有影响,把/user/flink删除重新按照上面的图片创建,再次重启即可。

CDH整合Flink(CDH6.3.0+Flink1.12.1)

CDH整合Flink(CDH6.3.0+Flink1.12.1)

可以看到yarn上有FLINK启动起来,整体搭建基本完成。

本文来自网络,不代表协通编程立场,如若转载,请注明出处:https://www.net2asp.com/57b90fe2e7.html