hadoop - 使用Kerberos身份验证到dbvisualizer的配置单元连接

标签 hadoop hive dbvisualizer

我正在使用Windows机器,并尝试使用配置单元uber jar与DbVisualizer设置配置单元。然而,如下所述得到错误。不知道为什么吗?
https://github.com/timveil/hive-jdbc-uber-jar

我正在使用以下exe在Windows上生成keytab文件。
http://web.mit.edu/KERBEROS/dist/index.html

以及github页面上提到的所有步骤。

如果使用用户主体,则会出现以下错误。

dbc:hive2://aaa.corp.ad.abc:2181,bbbb.corp.ad.abc:2181,ccc.corp.ad.abc:2181/;serviceDiscoveryMode=zooKeeper;zooKeeperNamespace=hiveserver2;principal=gaurang.shah@CORP.AD.ABC



错误消息
Long Message:
Kerberos principal should have 3 parts: gaurang.shah@CORP.AD.CTC

Details:
   Type: java.lang.IllegalArgumentException

Stack Trace:
java.lang.IllegalArgumentException: Kerberos principal should have 3 parts: gaurang.shah@CORP.AD.CTC
   at org.apache.hive.service.auth.KerberosSaslHelper.getKerberosTransport(KerberosSaslHelper.java:48)
   at org.apache.hive.jdbc.HiveConnection.createBinaryTransport(HiveConnection.java:425)
   at org.apache.hive.jdbc.HiveConnection.openTransport(HiveConnection.java:202)
   at org.apache.hive.jdbc.HiveConnection.<init>(HiveConnection.java:166)
   at org.apache.hive.jdbc.HiveDriver.connect(HiveDriver.java:105)
   at sun.reflect.GeneratedMethodAccessor69.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
   at java.lang.reflect.Method.invoke(Unknown Source)
   at com.onseven.dbvis.g.B.D.ā(Z:1548)
   at com.onseven.dbvis.g.B.F$A.call(Z:1369)
   at java.util.concurrent.FutureTask.run(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
   at java.lang.Thread.run(Unknown Source)

而且,如果我使用如下所述的服务器主体,则错误会有所不同。

dbc:hive2://aaa.corp.ad.abc:2181,bbbb.corp.ad.abc:2181,ccc.corp.ad.abc:2181/;serviceDiscoveryMode=zooKeeper;zooKeeperNamespace=hiveserver2;principal=krbgt/CORP.AD.ABC@CORP.AD.ABC



错误:
Long Message:
Could not open client transport for any of the Server URI's in ZooKeeper: GSS initiate failed

Details:
   Type: java.sql.SQLException
   SQL State: 08S01

最佳答案

Samson在评论中提供的答案对我有用。

使用prinicpal作为hive/_HOST@CORP.AD.ABC解决了此问题。

关于hadoop - 使用Kerberos身份验证到dbvisualizer的配置单元连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48669013/

相关文章:

java - Hive 查询在 INSERT OVERWRITE 上失败

hadoop - hive 和用户定义的功能

sql - 如何使用hive2到Hadoop的连接在Workbench\j中搜索数据库\表?

mysql - 我试图从 dbvisualizer 连接 SQL 中的 3 列

dbvisualizer - 如何从命令行的 dbvisualizer 导出中删除架构名称

java - 带有.a​​ddCacheFile的Hadoop Mapreduce CompileError(使用外部Jar)

hadoop - pig 的GROUP和COUNT后减少

h2 - 无法浏览 H2 数据库文件?

hadoop - map和reduce如何并行运行

hadoop - 运行 Oozie 时出现问题