更新时间:2026-08-20 GMT+08:00
分享

使用Ranger时适配第三方JDK

操作场景

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

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

前提条件

安装集群客户端,具体请参考安装MRS客户端,例如安装路径为“/opt/client”。

配置方法

  1. 导出集群中的证书:

    1. 执行以下命令,切换到客户端安装目录。
      cd /opt/client
    2. 执行以下命令配置环境变量。
      source bigdata_env
    3. 安全模式执行安全认证,普通模式无需执行:
      kinit 组件业务用户
    4. 生成证书文件。
      使用keytool工具从集群客户端JRE的证书库中导出集群根证书
      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安装路径,请自行修改。

  3. 验证证书是否导入成功。

    执行以下命令查看证书库中的证书列表。如果回显中包含“fusioninsightsubroot”,且证书信息正常,说明证书已成功导入:

    keytool -list -alias fusioninsightsubroot -storepass changeit -keystore MY_JRE/lib/security/cacerts

相关文档

如果MRS集群证书即将过期,请参考更换MRS集群证书更换集群证书。

相关文档