更新时间:2025-07-30 GMT+08:00
分享

使用Ranger时适配第三方JDK

操作场景

当使用Ranger作为spark sql的权限管理服务时,访问RangerAdmin需要使用集群中的证书。如果用户未使用集群中的JDK或者JRE,而是使用第三方JDK时,会出现访问RangerAdmin失败,进而Spark应用程序启动失败的问题。

在这个场景下,需要进行以下操作,将集群中的证书导入第三方JDK或者JRE中。

配置方法

  1. 导出集群中的证书:

    1. 安装集群客户端,具体请参考安装MRS客户端,例如安装路径为“/opt/client”。
    2. 执行以下命令,切换到客户端安装目录。
      cd /opt/client
    3. 执行以下命令配置环境变量。
      source bigdata_env
    4. 安全模式执行安全认证,普通模式无需执行:
      kinit 组件业务用户
    5. 生成证书文件
      keytool -export -alias fusioninsightsubroot -storepass changeit -keystore /opt/client/JRE/jre/lib/security/cacerts -file fusioninsightsubroot.crt

  2. 将集群中的证书导入第三方JDK或者JRE中

    1中生成的fusioninsightsubroot.crt文件复制到第三方JRE节点上,设置好该节点的JAVA_HOME环境变量后,执行以下命令导入证书:

    keytool -import -trustcacerts -alias fusioninsightsubroot -storepass changeit -file fusioninsightsubroot.crt -keystore MY_JRE/lib/security/cacerts

    'MY_JRE'表示第三方JRE安装路径,请自行修改。

相关文档