更新时间:2023-03-17 GMT+08:00

使用Ranger时适配第三方JDK

配置场景

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

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

配置方法

  1. 导出集群中的证书:

    1. 安装集群客户端,例如安装路径为“/opt/client”。
    2. 执行以下命令,切换到客户端安装目录。

      cd /opt/client

    3. 执行以下命令配置环境变量。

      source bigdata_env

    4. 生成证书文件

      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安装路径,请自行修改。