其实用dbeaver连接hive就可以了。但是呢,idea也有这个功能,本着研究下的想法就试试。
结果最后成功了 最后记录下。
参考文章。感觉不太行
PyCharm,idea通过插件database连接带Kerberos的hive_不饿同学的博客-CSDN博客
里面提到了两个解决办法,个人只习惯用第一个。
新增一个hive数据源
url填写
jdbc:hive2://cdp-node05.data.com:10000/;principal=hive/cdp-node05.data.com@CDP.COM;AuthMech=1;KrbRealm=CDH.COM;KrbHostFQDN=cdp-node05.data.com;KrbServiceName=hive;KrbAuthType=2
vm option填写
-Djavax.security.auth.useSubjectCredsOnly=false
-Djava.security.krb5.conf=C:\ProgramData\MIT\Kerberos5\krb5.ini
-Dsun.security.krb5.debug=true
———————————————————————————————
后面发现另外一种
url填写
jdbc:hive2://cdp-node06.data.com:10000/;principal=hive/cdp-node06.data.com@CDP.COM
vmoption 同上。。
——————————————————————————————————————————
然后使用起来也还行吧
备注遇到的问题
KrbException: Cannot locate default realm
这个就是idea根本不知道你的认证是啥,怎么认证?
-Djavax.security.auth.useSubjectCredsOnly=false
-Djava.security.krb5.conf=C:\ProgramData\MIT\Kerberos5\krb5.ini
-Dsun.security.krb5.debug=true
注意替换krb5.ini文件的位置
Peer indicated failure: GSS initiate faile d
这个就是已经开始认证了,但是认证失败了。
jdbc:hive2://cdp-node06.data.com:10000/;principal=hive/cdp-node05.data.com@CDP.COM;AuthMech=1;KrbRealm=CDH.COM;KrbHostFQDN=cdp-node06.data.com;KrbServiceName=hive;KrbAuthType=2
因为改错。一个node05 一个node06.。。。
若帮助到你,点个赞是对我最大的支持