文档首页/ MapReduce服务 MRS/ 常见问题/ 周边生态对接类/ 开源Kylin 3.x与MRS 1.9.3对接时存在Jetty兼容性问题如何处理?
更新时间:2024-10-24 GMT+08:00

开源Kylin 3.x与MRS 1.9.3对接时存在Jetty兼容性问题如何处理?

出于安全考虑,MRS对部分存在严重安全漏洞的开源三方组件进行了版本升级,导致开源Kylin与MRS 1.9.3版本进行对接时存在Jetty版本的兼容性问题。

按以下步骤进行操作可以完成部署和对接。

  1. 在一个ECS节点进行MRS Client安装,具体请参考集群外节点使用MRS客户端。本操作以MRS客户端安装路径为“/srv/client/”为例进行说明。
  2. 安装完成后执行如下命令导入MRS客户端环境变量bigdata_env和Kylin所需的环境变量:HIVE_CONF、HCAT_HOME。

    source /srv/client/bigdata_env

    export HIVE_CONF=/srv/client/Hive/config/

    export HCAT_HOME=/srv/client/Hive/HCatalog

  3. 参照Kylin官方链接在MRS Client安装节点上安装Kylin,并指定KYLIN_HOME。MRS 1.9.3版本选择Kylin for HBase 1.x版本进行对接。

    export KYLIN_HOME=/srv/client/apache-kylin-3.0.2-bin-hbase1x

  4. 移除Hive客户端目录下/srv/client/Hive/Beeline/lib/目录中jetty相关jar包以避免版本冲突。
    jetty相关jar包:
    javax-websocket-server-impl-9.4.26.v20200117.jar
    websocket-server-9.4.26.v20200117.jar
    jetty-all-9.4.26.v20200117-uber.jar
    jetty-runner-9.4.26.v20200117.jar
    apache-jsp-9.4.26.v20200117.jar
  5. 启动Kylin服务,观察Kylin日志,正常情况下日志中不会再出现java.lang.NoSuchMethodException或java.lang.ClassNotFoundException等兼容性异常。

    $KYLIN_HOME/bin/kylin.sh start

  6. 访问Kylin原生页面http://<hostname>:7070/kylin并运行样例Cube脚本${KYLIN_HOME}/bin/sample.sh验证kylin是否正常运行。