0590-6.1.0-C6升级过程中Oozie共享库的问题分析

在CDH6.1升级至CDH6.2过程中,安装Oozie共享库时遇到“java.lang.ClassNotFoundException”错误。通过分析脚本和对比依赖包,发现缺少logredactor-2.0.7.jar,补充后问题解决。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 问题现象

升级CDH6.1至CDH6.2的过程中,当升级过程执行到安装Oozie共享库时,在成功创建Oozie ShareLib根目录之后上载Oozei共享库的过程中报错了,报错信息如下:

异常提示:“java.lang.ClassNotFoundException:org.cloudera.log4j.redactor.RedactorAppender”找不到类。

2 问题分析

异常日志信息显示” org.cloudera.log4j.redactor.RedactorAppender”类找不到,通过安装Oozie共享库脚本“/opt/cloudera/cm-agent/service/oozie/oozie.sh”找到,安装Oozie共享库是启动了一个Java进程操作的,代码片段如下:

那启动Java进程则需要加载一些java依赖包,通过如下脚本片段可以找到:

主要加载了${OOZIE_HOME}下的libtools和libext两个目录下的依赖包。

由于上述异常抛出找不到类,那可能是由于缺少jar包导致,通过对比${OOZIE_HOME}下的lib和libtools目录下的*log*.jar相关的jar包时,发现

在${OOZIE_HOME}/libtools目录下查看包含log的jar包

在${OOZIE_HOME}/lib,同样是存放的jar包的目录下查看包含log的jar包

通过对上述两个目录下列出log相关jar包对比发现,lib目录下比libtools目录下多了logredactor-2.0.7.jar这个jar包,通过查看该jar包发现,里面有报错时缺少的那个类RedactorAppender

3 问题解决

经过上述问题分析后,在${OOZIE_HOME}/libtools创建logredactor-2.0.7.jar包的软连

cd /opt/cloudera/parcels/CDH/lib/oozie/libtools
ln -s logredactor-2.0.7.jar ../../../jars/logredactor-2.0.7.jar

再去重新执行安装oozie共享库命令,命令成功执行,问题解决

4 总结

1.通过分析安装Oozie共享库脚本,找到安装Oozie共享库的最终方式

2.定位出使用java进程进行Oozie共享库的安装,与找不到类异常结合最终定位出缺少jar包导致

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值