从spark连接kerberos时出错

r6hnlfcb  于 2021-05-27  发布在  Spark
关注(0)|答案(0)|浏览(312)

我在通过spark java代码连接到kerberos安全的phoenix环境时遇到以下错误。
asl身份验证失败。最可能的原因是凭据丢失或无效。考虑“kinit”。javax.security.sasl.saslexception:gss initiate失败,原因是:org.ietf.jgss.gsseception:在sun.security.jgss.krb5.krb5initcredential.getinstance(krb5initcredential)上未提供有效凭据(机制级别:找不到任何kerberos tgt)。java:147"
我的Spark代码是follows:-

SparkConf sparkConf = new SparkConf()
                .setMaster("local[4]")
                .setAppName("phoenix-test")
                .set("hadoop.security.authentication", "kerberos")
                .set("hbase.security.authentication", "kerberos")
                .set("hadoop.rpc.protection", "privacy")
                .set("spark.yarn.principal", "infinityadm/lswpbacrapn3d.nam.nsroot.net@NAMUXDEV.DYN.NSROOT.NET")
                .set("spark.yarn.keytab", "C://files//infinityadm_lswpbacrapn3d.nam.nsroot.net@NAMUXDEV.DYN.NSROOT.NET.keytab")

sc = new SparkContext(sparkConf);

        JavaSparkContext jsc = JavaSparkContext.fromSparkContext(SparkContext.getOrCreate(sparkConf));
        SQLContext sqlContext = new SQLContext(jsc);
        DataFrame fromPhx = sqlContext
                .read()
                .format("org.apache.phoenix.spark")
                .option("table", "ODS.TRF_DEF_PRM")
                .option("zkURL", "url:/hbase-dev")
                /*.option("zkURL","lswpbacrapn1d,lswpbacrapn2d,lswpbacrapn3d:2181:/hbase-dev")*/
                .load();

我在intellij中的vm选项如下follows:-

-DCPB_LOG_PATH=C:/Users/PB42185/Logs
-DSERVICE_NAME=infinity-utils
-DJava.security.krb5.conf=C:/Users/2185/krb5.conf
-DJava.security.krb5.ini=C:/Users/2185/krb5.ini
-DJava.security.krb5.realm=@APACUXUAT.DYN.NSROOT.NET
-Dzookeeper.sasl.client=false
-Dzookeeper.sasl.client.username=adm
-Dsun.security.krb5.debug=true

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题