CDH 集成 Flink-1.14.3 过程与踩坑记录

news2025/4/7 8:30:08

一、资源准备与配置

1.1 项目文件下载与配置

#下载 flink-parcel 项目文件
[root@hadoop105 ~]# git clone https://github.com/pkeropen/flink-parcel.git
[root@hadoop105 ~]# cd flink-parcel/
#编辑下载地址,看自己需求哪个版本
[root@hadoop105 flink-parcel]# vi flink-parcel.properties 
#FLINK 下载地址
FLINK_URL=https://mirrors.tuna.tsinghua.edu.cn/apache/flink/flink-1.14.3/flink-1.14.3-bin-scala_2.12.tgz

#flink版本号
FLINK_VERSION=1.14.3

#扩展版本号
EXTENS_VERSION=BIN-SCALA_2.12

#操作系统版本,以centos为例
OS_VERSION=7

#CDH 小版本
CDH_MIN_FULL=5.2
CDH_MAX_FULL=6.3.2

#CDH大版本
CDH_MIN=5
CDH_MAX=6
#给与 build.sh 文件执行权限
[root@hadoop105 flink-parcel]# chmod 755 build.sh

#查看默认文件
[root@hadoop105 flink-parcel-master]# ll
总用量 32
-rwxr-xr-x 1 root root  5886 4月  17 14:39 build.sh
drwxr-xr-x 5 root root    53 1月  14 2020 flink-csd-on-yarn-src
drwxr-xr-x 5 root root    53 1月  14 2020 flink-csd-standalone-src
-rw-r--r-- 1 root root   522 4月  19 10:29 flink-parcel.properties
drwxr-xr-x 3 root root    85 1月  14 2020 flink-parcel-src
-rw-r--r-- 1 root root 11357 1月  14 2020 LICENSE
-rw-r--r-- 1 root root  4334 1月  14 2020 README.md

二、生成相关 parcel 和 csd 文件

2.1 生成 parcel 文件

#编译生成 parcel 文件(该过程比较长)
[root@hadoop105 flink-parcel]# ./build.sh parcel
......
+ git clone https://github.com/cloudera/cm_ext.git
正克隆到 'cm_ext'...
remote: Enumerating objects: 1785, done.
remote: Total 1785 (delta 0), reused 0 (delta 0), pack-reused 1785
接收对象中: 100% (1785/1785), 870.71 KiB | 725.00 KiB/s, done.
处理 delta 中: 100% (861/861), done.
+ '[' '!' -f cm_ext/validator/target/validator.jar ']'
+ cd cm_ext
+ mvn install -Dmaven.test.skip=true
./build.sh:行32: mvn: 未找到命令

#这里提示没有 mvn 命令,安装 maven 即可 
[root@hadoop105 flink-parcel]# yum install -y maven
#重新执行
[root@hadoop105 flink-parcel]# ./build.sh parcel

......
[INFO] ------------------------------------------------------------------------
+ cd ..
+ build_flink_parcel
+ '[' -f FLINK-1.14.3-BIN-SCALA_2.12_build/FLINK-1.14.3-BIN-SCALA_2.12-el7.parcel ']'
+ '[' '!' -d FLINK-1.14.3-BIN-SCALA_2.12 ']'
+ get_flink
+ '[' '!' -f flink-1.14.3-bin-scala_2.12.tgz ']'
+ wget https://mirrors.tuna.tsinghua.edu.cn/apache/flink/flink-1.14.3/flink-1.14.3-bin-scala_2.12.tgz
--2023-04-14 14:37:21--  https://mirrors.tuna.tsinghua.edu.cn/apache/flink/flink-1.14.3/flink-1.14.3-bin-scala_2.12.tgz
正在解析主机 mirrors.tuna.tsinghua.edu.cn (mirrors.tuna.tsinghua.edu.cn)... 101.6.15.130, 2402:f000:1:400::2
正在连接 mirrors.tuna.tsinghua.edu.cn (mirrors.tuna.tsinghua.edu.cn)|101.6.15.130|:443... 已连接。
错误: 无法验证 mirrors.tuna.tsinghua.edu.cn 的由 “/C=US/O=Let's Encrypt/CN=R3” 颁发的证书:
  颁发的证书已经过期。
要以不安全的方式连接至 mirrors.tuna.tsinghua.edu.cn,使用“--no-check-certificate”。


#这里又提示要使用 “--no-check-certificate”,编辑 build.sh 文件,在 wget url 后面加上参数
[root@hadoop105 flink-parcel]# vi build.sh
......
function get_flink {
  if [ ! -f "$flink_archive" ]; then
    wget $FLINK_URL --no-check-certificate
  fi
......

#重新执行
[root@hadoop105 flink-parcel]# ./build.sh parcel
+ wget https://mirrors.tuna.tsinghua.edu.cn/apache/flink/flink-1.14.3/flink-1.14.3-bin-scala_2.12.tgz --no-check-certificate
--2023-04-14 14:56:49--  https://mirrors.tuna.tsinghua.edu.cn/apache/flink/flink-1.14.3/flink-1.14.3-bin-scala_2.12.tgz
正在解析主机 mirrors.tuna.tsinghua.edu.cn (mirrors.tuna.tsinghua.edu.cn)... 101.6.15.130, 2402:f000:1:400::2
正在连接 mirrors.tuna.tsinghua.edu.cn (mirrors.tuna.tsinghua.edu.cn)|101.6.15.130|:443... 已连接。
警告: 无法验证 mirrors.tuna.tsinghua.edu.cn 的由 “/C=US/O=Let's Encrypt/CN=R3” 颁发的证书:
  颁发的证书已经过期。
已发出 HTTP 请求,正在等待回应... 404 Not Found
2023-04-14 14:56:49 错误 404:Not Found

#报404错误,说明没有这个链接的文件,更换一个下载源(该链接不是国内的,比较满),文件下载下来了,放到最后提供
-rw-r--r-- 1 root root  4334 4月  14 13:48 README.md
[root@hadoop105 flink-parcel]# vi flink-parcel.properties 
#FLINK 下载地址
#FLINK_URL=https://mirrors.tuna.tsinghua.edu.cn/apache/flink/flink-1.14.3/flink-1.14.3-bin-scala_2.12.tgz
FLINK_URL=https://archive.apache.org/dist/flink/flink-1.14.3/flink-1.14.3-bin-scala_2.12.tgz

#如果你执行到如下位置跑不动了,就是你的网络访问不了github,后面我把cm.ext目录和flink文件一并提供,放到当前目录即可
+ git clone https://github.com/cloudera/cm_ext.git
正克隆到 'cm_ext'...

#将提供的文件放到当前目录下
[root@hadoop105 flink-parcel-master]# ll
总用量 332576
-rwxr-xr-x 1 root root      5886 4月  17 14:39 build.sh
-rw-r--r-- 1 root root    816428 4月  17 14:50 cm_ext-master.zip
-rw-r--r-- 1 root root 339705501 4月  19 10:40 flink-1.14.3-bin-scala_2.12.tgz
drwxr-xr-x 5 root root        53 1月  14 2020 flink-csd-on-yarn-src
drwxr-xr-x 5 root root        53 1月  14 2020 flink-csd-standalone-src
-rw-r--r-- 1 root root       522 4月  19 10:45 flink-parcel.properties
drwxr-xr-x 3 root root        85 1月  14 2020 flink-parcel-src
-rw-r--r-- 1 root root     11357 1月  14 2020 LICENSE
-rw-r--r-- 1 root root      4334 1月  14 2020 README.md
#解压cm_ext
[root@hadoop105 flink-parcel-master]# unzip cm_ext-master.zip
#重命名目录
[root@hadoop105 flink-parcel-master]# mv cm_ext-master cm_ext
#继续执行生成parcel文件命令
[root@hadoop105 flink-parcel]# ./build.sh parcel
#不出意外的话,当前目录会生成一个 FLINK-1.14.3-BIN-SCALA_2.12_build 目录,parcel 文件都在里面
[root@hadoop105 flink-parcel-master]# ll
总用量 332576
-rwxr-xr-x 1 root root      5886 4月  17 14:39 build.sh
drwxr-xr-x 5 root root       130 8月  24 2016 cm_ext
-rw-r--r-- 1 root root    816428 4月  17 14:50 cm_ext-master.zip
drwxr-xr-x 4 root root        29 4月  19 10:53 FLINK-1.14.3-BIN-SCALA_2.12
drwxr-xr-x 2 root root       123 4月  19 10:54 FLINK-1.14.3-BIN-SCALA_2.12_build
-rw-r--r-- 1 root root 339705501 4月  19 10:40 flink-1.14.3-bin-scala_2.12.tgz
drwxr-xr-x 5 root root        53 1月  14 2020 flink-csd-on-yarn-src
drwxr-xr-x 5 root root        53 1月  14 2020 flink-csd-standalone-src
-rw-r--r-- 1 root root       522 4月  19 10:45 flink-parcel.properties
drwxr-xr-x 3 root root        85 1月  14 2020 flink-parcel-src
-rw-r--r-- 1 root root     11357 1月  14 2020 LICENSE
-rw-r--r-- 1 root root      4334 1月  14 2020 README.md

-rw-r--r-- 1 root root      4334 1月  14 2020 README.md
[root@hadoop105 flink-parcel-master]# ll FLINK-1.14.3-BIN-SCALA_2.12_build
总用量 331424
-rw-r--r-- 1 root root 339366311 4月  19 10:54 FLINK-1.14.3-BIN-SCALA_2.12-el7.parcel
-rw-r--r-- 1 root root        41 4月  19 10:54 FLINK-1.14.3-BIN-SCALA_2.12-el7.parcel.sha
-rw-r--r-- 1 root root       583 4月  19 10:54 manifest.json

2.2 生成 csd 文件


[root@hadoop105 flink-parcel]# ./build.sh csd_on_yarn
[root@hadoop105 flink-parcel]# ./build.sh csd_standalone

2.3 获得的相关文件

[root@hadoop105 flink-parcel-master]# ll
总用量 332588
drwxr-xr-x 2 root root       123 4月  19 10:54 FLINK-1.14.3-BIN-SCALA_2.12_build
-rw-r--r-- 1 root root      8256 4月  19 10:59 FLINK_ON_YARN-1.14.3.jar

[root@hadoop105 flink-parcel-master]# ll FLINK-1.14.3-BIN-SCALA_2.12_build
总用量 331424
-rw-r--r-- 1 root root 339366311 4月  19 10:54 FLINK-1.14.3-BIN-SCALA_2.12-el7.parcel
-rw-r--r-- 1 root root        41 4月  19 10:54 FLINK-1.14.3-BIN-SCALA_2.12-el7.parcel.sha
-rw-r--r-- 1 root root       583 4月  19 10:54 manifest.json

三、CDH 中集成 Flink 服务

3.1 拷贝相关文件到指定目录

[root@hadoop105 flink-parcel-master]# cp FLINK-1.14.3-BIN-SCALA_2.12_build/* 
[root@hadoop105 flink-parcel-master]# cp FLINK_ON_YARN-1.14.3.jar /opt/cloudera/csd/

3.2 分配与激活

  3.3 启动与错误处理

 (1)查看 stderr 完整日志,得到如下错误信息:

[19/Apr/2023 13:54:57 +0000] 15463 MainThread redactor     INFO     Started launcher: /opt/cloudera/cm-agent/service/csd/csd.sh start
[19/Apr/2023 13:54:57 +0000] 15463 MainThread redactor     ERROR    Redaction rules file doesn't exist, not redacting logs. file: redaction-rules.json, directory: /run/cloudera-scm-agent/process/952-flink_on_yarn-FLINK_YARN
[19/Apr/2023 13:54:57 +0000] 15463 MainThread redactor     INFO     Re-exec watcher: /opt/cloudera/cm-agent/bin/cm proc_watcher 15471
......
......
......
+ exec /opt/cloudera/parcels/FLINK/lib/flink/bin/flink-yarn.sh --container 1 --streaming
/opt/cloudera/parcels/FLINK/lib/flink/bin/flink-yarn.sh:行17: rotateLogFilesWithPrefix: 未找到命令
[20/Apr/2023 10:13:37 +0000] 20279 MainThread redactor     INFO     Started launcher: /opt/cloudera/cm-agent/service/csd/csd.sh start
[20/Apr/2023 10:13:37 +0000] 20279 MainThread redactor     ERROR    Redaction rules file doesn't exist, not redacting logs. file: redaction-rules.json, directory: /run/cloudera-scm-agent/process/959-flink_on_yarn-FLINK_YARN
[20/Apr/2023 10:13:37 +0000] 20279 MainThread redactor     INFO     Re-exec watcher: /opt/cloudera/cm-agent/bin/cm proc_watcher 20289
#(1)编辑文件:
[root@hadoop105 ~]# vi /opt/cloudera/parcels/FLINK/lib/flink/bin/flink-yarn.sh
#注释掉这一行:
#rotateLogFilesWithPrefix "$FLINK_LOG_DIR" "$FLINK_LOG_PREFIX"

#(2)下载jar文件
[root@hadoop105 ~]# cd /opt/cloudera/parcels/FLINK/lib/flink/lib
[root@hadoop105 lib]# wget https://repo.maven.apache.org/maven2/org/apache/flink/flink-shaded-hadoop-2-uber/2.6.5-9.0/flink-shaded-hadoop-2-uber-2.6.5-9.0.jar
#编辑环境变量:
[root@hadoop105 ~]# vi /etc/profile
#新增如下内容:
export HADOOP_CLASSPATH=/opt/cloudera/parcels/FLINK/lib/flink/lib
#生效变量:
[root@hadoop105 ~]# source /etc/profile

(2)此时报错依然存在,我们查看 flink 的输出日志

[root@hadoop105 lib]# tail -f /var/log/flink/flink-yarn.out
#错误信息如下:
ERROR StatusLogger Reconfiguration failed: No configuration found for '6d6f6e28' at 'null' in 'null'
10:50:09.222 [main] ERROR org.apache.flink.yarn.cli.FlinkYarnSessionCli - Error while running the Flink session.
org.apache.flink.configuration.IllegalConfigurationException: Kerberos login configuration is invalid: keytab [/etc/keytab/flink.keytab] doesn't exist!
        at org.apache.flink.runtime.security.SecurityConfiguration.validate(SecurityConfiguration.java:151) ~[flink-dist_2.12-1.14.3.jar:1.14.3]
        at org.apache.flink.runtime.security.SecurityConfiguration.<init>(SecurityConfiguration.java:97) ~[flink-dist_2.12-1.14.3.jar:1.14.3]
        at org.apache.flink.runtime.security.SecurityConfiguration.<init>(SecurityConfiguration.java:69) ~[flink-dist_2.12-1.14.3.jar:1.14.3]
        at org.apache.flink.yarn.cli.FlinkYarnSessionCli.main(FlinkYarnSessionCli.java:858) [flink-dist_2.12-1.14.3.jar:1.14.3]

(3)打开 flink-yarn 配置

 (4)将这两行删除掉并保存配置

 (5)最后重新启动 flink 即可

3.4 获取 flink 监控状态

(1)默认启动完成之后我们获取不到 flink 的监控状态

提示:select integral(events_informational_rate) where entityName="flink_on_yarn"' 中未找到与筛选器 'entityName = "flink_on_yarn"' 匹配的实体

 (2)重启一下 cdh 集群和 Cloudera Management Service 即可

四、资源分享

文件:flink-1.14.3-bin-scala_2.12.tgz、cm_ext-master.zip
链接:https://pan.baidu.com/s/1IB0J2kbqoMLDd_gucucLQA 
提取码:cs0b 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/451227.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【后续】使用nvm替换nvmw作为nodejs的版本切换(亲测)

文接上篇&#xff0c;使用nvm替换nvmw作为nodejs的版本切换&#xff08;亲测&#xff09; 如图各种乱码&#xff0c;在vscoe中也是出现 真的好烦啊。看到提示的还是之前nvmw不能执行的各种报错。 XXX不是内部或外部命令&#xff0c;也不是可运行的程序或批处理文件。 决定&am…

【编译】JITAOT介绍与优劣

文章目录 JIT优劣 AOT优劣 二者区别来源 AOT 去年发布的 .NET 7 中引入了该功能&#xff0c;只是在 .NET 8 中进一步进行了改进。新版本中通过 Native AOT 发布的“Hello, World”应用程序体积进一步缩小&#xff0c;只有 .NET 7 的一半。 以 CoreCLR 为例&#xff0c;不做 AOT…

Linux进程信号(上)

目录 一&#xff1a;信号引入 二&#xff1a;信号保存方式 三&#xff1a;信号处理方式 四&#xff1a;查看Linux信号 五&#xff1a;信号捕捉 六&#xff1a;信号产生 一&#xff1a;终端按键产生信号 二&#xff1a;系统函数产生信号 2.1:kill&#xff08;&#xff…

安全测试:配置管理潜在威胁

一、配置管理威胁有哪些 明文信息传输漏洞敏感信息泄露默认或可猜解用户账户会话重放攻击测试验证码缺陷http方法测试 二、明文信息传输和存储漏洞 漏洞描述&#xff1a; 页面中没有对传输的用户名和密码等敏感信息进行加密后传输。用户密码后台存储是否加密。 产生原因&a…

MySQL安装版步骤

百度网盘有安装版、解压包安装包以及visual插件 链接&#xff1a;https://pan.baidu.com/s/1XXvWa40FYX5mtqofW_knIg 提取码&#xff1a;ky2q 下载地址https://downloads.mysql.com/archives/installer/ 双击下载好的exe文件&#xff0c;选择Custom自定义安装&#xff0c;点…

内联函数-取决于编译器

内联函数 以inline修饰的函数叫做内联函数&#xff0c;编译时C编译器会在调用内联函数的地方展开&#xff0c;没有函数调用建立栈帧的开销&#xff0c;内联函数提升程序运行的效率。 内联函数完美解决了宏函数上述所以缺点&#xff0c;但是不是所有函数都要搞成内联函数&#…

CentOS7(一)安装和基础配置

文章目录 一、CentOs 7 下载与安装二、安装过程三、安装Ohmyzsh1、基础软件安装2、编辑 install.sh4、修改仓库地址5、修改shell6、编辑主题和插件7、刷新配置8、创建用户级别配置文件 四、研发环境配置四、centos不能访问github&#xff0c;速度慢五、防火墙相关六、wget 下载…

Scala中的Map 集合详解

目录 一、不可变长Map集合 1.map的声明与遍历 2.map的常用方法&#xff1a;get、getOrElse、keys、values、、&#xff1a; 二、可变长Map集合 三、Map的其他方法 key -> value 的语法形式实际上是用库中的隐式转换实现的&#xff0c;实际调用了 Map.apply 方法。Map.a…

多维时序 | MATLAB实现BO-CNN-LSTM贝叶斯优化卷积神经网络-长短期记忆网络多变量时间序列预测

多维时序 | MATLAB实现BO-CNN-LSTM贝叶斯优化卷积神经网络-长短期记忆网络多变量时间序列预测 目录 多维时序 | MATLAB实现BO-CNN-LSTM贝叶斯优化卷积神经网络-长短期记忆网络多变量时间序列预测效果一览基本介绍模型搭建程序设计参考资料 效果一览 基本介绍 MATLAB实现BO-CNN-…

我看谁没看过

vue在新窗口打开页面方法 const { href } this.$router.resolve({path: "/officePlatform/addPrompt"});window.open(href, "_blank"); 添加圆形标志 h3::before {content: "";display: inline-block;width: 13px;height: 13px;background: va…

易点易动设备管理平台帮助化工企业实现设备高效管理

在现代化工企业中&#xff0c;设备管理和能耗监控是至关重要的。易点易动设备管理平台通过整合设备台账、巡检、维修、保养、备件管理、设备监控和能耗监控功能&#xff0c;为化工企业提供了一套全面、高效的解决方案。本文将详细介绍易点易动设备管理平台如何帮助化工企业实现…

JVM字节码分析

文章目录 1、类文件结构1.1、 魔数1.2、 版本1.3 、常量池1.4、 访问标识与继承信息1.5、 Field 信息1.6、 Method 信息1.7 、附加属性 2、字节码指令2.1、javap工具2.2、图解方法执行流程2.2.1 常量池载入运行时常量池2.2.2 方法字节码载入方法区2.2.3 main线程开始运行&#…

windows下另一种傻瓜式从零部署cuda环境的方式

前言 最近因为连续部署了两个深度学习环境&#xff0c;实在嫌烦了&#xff0c;于是摸索出一条简便的方式希望让人人都可以傻瓜式的快速部署&#xff0c;首先确保你的硬盘具有20G以上的空间&#xff0c;这里以部署torch的gpu版和让onnxruntime使用cuda加速为例&#xff0c;让我…

PDF.js源码使用总结

1、官网地址 pdf.js官网&#xff08;http://mozilla.github.io/pdf.js/&#xff09; pdf.js源码&#xff08;https://github.com/mozilla/pdf.js&#xff09; 版本选择&#xff1a;点击Tags 2、选择对应版本zip包下载、解压 在进行npm install之前 (注意&#xff1a;node.js…

【c++初阶】:引用

c入门 一.概念二.使用三.应用四.常引用五.引用与指针 一.概念 c语言中我们常用指针找地址&#xff0c;但在c中&#xff0c;忽略了指针&#xff08;当然也可以使用指针&#xff09;。常用引用这个概念。 二.使用 可以看到这里的b和c本质上都是a&#xff0c;只是不同的称呼罢了。…

【NestJs】数据库重构

上一篇文章详细了介绍nestjs 配置数据库&#xff0c;有不懂的小伙伴可以先查看上一篇文章【NestJs】使用连接mysql企业级开发规范在继续往下。 今天这一篇文章主要是针对配置数据库的重构&#xff0c;使用代码规范&#xff0c;方便后期维护。 当应用变得复杂 我们需要借用TypeO…

webstorm常用快捷键

webstorm作为前端代码JavaScript开发的利器&#xff0c;真的特别好用&#xff0c;我就总结一下我工作中经常用到的快捷键&#xff0c;有些快捷键是我自定义配置的&#xff0c;是以mac电脑来总结这篇文章的&#xff0c;请知晓&#xff1a; 自定义配置快捷键&#xff1a; 常用快…

SpringCloud源码探析(五)-网关Gateway的使用

1.概述 在微服务架构中&#xff0c;网关提供了统一的对外访问入口&#xff08;自身跨一个或多个服务&#xff09;&#xff0c;它保证了内部服务对外暴露的合理性与安全性、降低了服务之间访问的复杂性&#xff0c;是微服务架构中至关重要的一部分。在SpringCloud中网关主要包含…

让观众近距离感受如然之光 lipro智能家居成上海车展亮点之一

近段时间&#xff0c;上海国际车展如火如荼地举行&#xff0c;吸引了众多汽车厂商及相关企业参展。在本次展会上&#xff0c;星纪魅族集团也携手亿咖通科技&#xff0c;以联合参展的形式登陆「上海国际车展」 6.1号馆&#xff0c;共同展示智能汽车解决方案及产品创新。此外&…

第十四届蓝桥杯研究生组2023年省赛题解--全部采用Java语言实现

引言 今天现在这里 挖个坑&#xff0c;太忙了&#xff0c;这个专题不一样有时间补完&#xff0c;但我会尽力而为的。记录一下今天的日子&#xff1a;2023/04/21 看看这个坑要什么时候自己才能补完。 题目pdf下载&#xff1a;第十四届蓝桥杯研究生组pdf下载 在此特别感谢博主…