JDBC 通过 knox 的直线中的配置单元连接错误

JDBC hive connection error in beeline through knox

我是 hdp 和 knox 的新手。

我的HDP环境描述:

HDP 版本 - 2.6

HS2 已启用

Hive 传输模式 - HTTP

通过 ambari 安装的 Knox

SSL 未启用

非 Kerberized 实例

问题:

我正在尝试通过直线连接到 HIVE。连接字符串是“!connect jdbc:hive2://:8443/;transportMode=http;httpPath=gateway//hive”。用户名:admin,密码:admin-password。它抛出一个错误:“18/06/18 08:17:39 [main]: ERROR jdbc.HiveConnection: Error opening session org.apache.thrift.transport.TTransportException: org.apache.http.NoHttpResponseException: :8443 failed to respond” 和"Error: Could not establish connection to jdbc:hive2://:8443/;transportMode=http;httpPath=gateway//hive: org.apache.http.NoHttpResponseException: :8443 failed to respond (state=08S01,code=0)".

我厌倦的事情:

我试过用 "cliserver"、"gateway/default/hive" 更改 httpPath 但它们没有用。

我尝试使用“!connect jdbc:hive2://:10001/default;transportMode=http; httpPath=cliservice;”更改连接 url它有效,但因为它不符合诺克斯的目的。因为我正在尝试使用暴露的配置单元端口。

如果有人能帮助我详细解决这个问题,我将不胜感激。

您需要指定信任库和信任库密码。例如 {代码} beeline -u "jdbc:hive2://:8443/;ssl=true;sslTrustStore=/gateway.jks;trustStorePassword=;transportMode=http;httpPath=gateway/default/hive" -n admin -p 管理员密码 {代码}

这里我们假设您有演示 ldap 设置(不推荐用于生产)。 另外,你需要

  1. 诺克斯主机
  2. Knox 信任库位置(对于 HDP /var/lib/knox/data-x.x.x.x-xxxx/security/keystores/gateway.jks)
  3. Truststore 密码(默认 knox)
  4. 路径应该是gateway/default/hive

希望对您有所帮助。