概要描述
Sophon资源池启动一段时间后,运行实验会报错:org.apache.hadoop.ipc.RemoteException:token is expired或者是 HDFS_DELEGATION_TOKEN toke for hive can’t be found in the cache。
该问题通过重启sophon会话资源池可暂时得到解决,但永久解决需要替换sophon和yarn镜像内的hadoop-common包。
详细步骤
替换yarn和sophon-base的镜像里jar包hadoop-common-2.7.2-transwarp-xxx.jar(该jar的具体版本以集群环境内对应的jar的版本为准)。
换包步骤可以参考KB:TDH安装Hotfix(换包)方法
(KB中的是inceptor-server容器内换包,这里换成yarn-resourcemanager和sophon-base的容器内换包,这两个容器查找方式见下文截图),然后docker commit出新的yarn和sophon-base镜像。
该jar包在yarn容器内路径为/usr/lib/hadoop/,在sophon-base容器内路径为/usr/lib/sophon/hadoop-jars , /usr/lib/sophon/server-jars , /usr/lib/spark2/jars 这三个路径。
换包前请详细阅读步骤,如有疑问,请及时提出,谢谢。
补充说明
HDFS各个小版本都是兼容的,比如,522可以使用524的jar包,602也可以使用603的jar包,其他类似。各版本的jar包的md5sum值如下:
hadoop-common-2.7.2-transwarp-5.2.4.jar
md5:8d147d88f55e41fe72a6fbc568671bdc
hadoop-common-2.7.2-transwarp-6.0.3.jar
md5:241d54c986491e176ce15c8716ddfbf8
hadoop-common-2.7.2-transwarp-6.2.0.jar
md5:3e6b7d5a7ae70d558773d749f17c9d18。