在cdh6.3.0上自制flink1.9.x的parcel包(点激活按钮报错)

背景:

参考“如何获得Cloudera的Flink Parcel包”,此文:https://mp.weixin.qq.com/s/ajYyEnqCJRr8S645BqKCcg,然后运行安装包下的示例程序“在CDH上运行你的第一个Flink例子”:https://mp.weixin.qq.com/s/gPGVv_2US1eIihVwN4E1sQ。虽成功,但坑人呐!

问题描述:

我安装到cdh6.3.0后发现功能“阉割”了:1.其web ui中没有提交jar包的按钮;2.仅能standalone模式运行安装包examples目录下所提供的WordCount.jar且同目录下的SocketWindowWordCount.jar也无法单机或yarn的任何模式下运行。另外,安装后默认启用了kerberos安全认证功能,我在cdh的flink“配置”处手动清除了默认的两个选项共三个默认值:Client和KafkaClient、flink.keytab,重启后运行flink list命令仍报错:WARN zookeeper.ClientCnxn: SASL configuration failed。详情见:https://developer.aliyun.com/ask/133744?spm=a2c6h.13159736,文中“游客guzk5azdrhbmu”的三个评论。

此种方式安装后,连基本的安装包示例下的其他程序都无法运行flink run /opt/cloudera/parcels/FLINK-1.9.0-csa1.0.0.0-cdh6.3.0/lib/flink/examples/streaming/SocketWindowWordCount.jar --port 9009,或更别提yarn-cluster模式下运行了。报错信息同上。

于是,我参考:http://blog.51yip.com/hadoop/2362.html/comment-page-1#comment-18035,现指出文中共五处错误或不足之处:

1.楼主所提供的git清华下载源现在是flink1.9.2版本了,尚未找到flink1.9.x的其他版本从何处下载;

2.编译命令./flink-parcel//build.sh csd_on_yarn,报错如下:
-bash: ./flink-parcel/build.sh: Permission denied

解决方案:chmod a+x ./build.sh

3.再次运行上述编译命令,报错:

sed: can't read flink-parcel.properties: No such file or directory

解决方案为cd flink-parcel,如下图:

4.运行上图中的编译命令,报错如下:

Error: Unable to access jarfile cm_ext/validator/target/validator.jar

查看此build.sh脚本内容后,发现:

经测试,发现在win10中使用“TortoiseGit”工具可以克隆此源码,于是下载、压缩、上传到服务器如上图。

接下来,参考:https://blog.csdn.net/lingeio/article/details/98480496,按如下操作:

[root@worker flink-parcel]# cd cm_ext
[root@worker cm_ext]# mvn package

成功编译此源码以生成上面报错所需的jar,如下图:

最后成功编译(注意别忘了命令:./build.sh parcel,另外上图中我配置的FLINK_URL的清华大学的链接中需把flink-1.9.1改为flink1.9.2),并生成了“箭头所指”,如下图:

5.参考文中说“cloudera-scm-server 一定要重启”(注意:不需要重启任何agent主机,若无法打开网页ip:7180的CM首页,等候片刻刷新网址即可),然后在此server主机所在的机器目录/opt/cloudera/parcel-repo下就自动复制了flink的parcel和sha两个文件(注意,仅第一次重启后是自动复制的,若把此两个文件手动删除后,再次重启却无法自动生成,于是后续我手动cp此两文件)。然而在“cloudera manager 配置flink parcel”--->"检查新parcel"--->"下载"时,却一直在此下载过程中报错“Parcel FLINK-1.9.2-BIN-SCALA_2.11-el7.parcel 的错误:哈希验证失败。”,最终参考:https://blog.csdn.net/tony_328427685/article/details/86514385,在此文的第一个模块“制作flink组件包”后,最终的解决方案为:

由于cloudera-scm-server所在机器上/opt/cloudera/parcel-repo目录下已有manifest.json文件,故需要在此文中添加内容:

    {
            "hash": "bd592de6bd4aaf0465711f9059e10eec3eadc899",
            "depends": "CDH (>= 5.16.1), CDH (<< 6.4.0)",
            "replaces": "FLINK",
            "parcelName": "FLINK-1.9.2-BIN-SCALA_2.11-el7.parcel",
            "components": [
                {
                    "pkg_version": "1.9.2+flink%VERSION%",
                    "version": "1.9.2-flink%VERSION%",
                    "name": "flink",
                    "pkg_release": "BIN-SCALA_2.11"
                }
            ]
        }

即如下图:

此时在点击CM首页右上角的“检查新parcel”发现已经“下载”完毕(之所以自动下载好了,是因为我上面手动复制那两个文件造成的),于是再点击分配--->激活,便卡在“激活”环节,报错如下图:

求赐教,万分感谢!!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值