2017-08-01 1995 views
1

我正在使用javax.sql.DataSource创建与配置单元的jdbc连接,并将zookeeper服务发现(从Ambari获取)字符串传递给Hive。无法通过JDBC将Hive与Zookeeper服务发现模式连接

Zookeeper Hive URL : jdbc:hive2://localhost:2181/;serviceDiscoveryMode=zooKeeper;zooKeeperNamespace=hiveserver2;transportMode=http;httpPath=cliservice 

如果我就与HiveServer主机和端口的连接,然后直接工作JDBC连接正常,但它失败饲养员字符串。

之后,我用直线测试zookeeper字符串,我工作得很好。

连接时下面是例外情况。

Caused by: java.sql.SQLException: Could not open client transport for any of the Server URI's in ZooKeeper: Unable to read HiveServer2 uri from ZooKeeper 
    at org.apache.hive.jdbc.HiveConnection.openTransport(HiveConnection.java:205) 
    at org.apache.hive.jdbc.HiveConnection.<init>(HiveConnection.java:163) 
    at org.apache.hive.jdbc.HiveDriver.connect(HiveDriver.java:105) 
    at org.apache.tomcat.jdbc.pool.PooledConnection.connectUsingDriver(PooledConnection.java:307) 
    at org.apache.tomcat.jdbc.pool.PooledConnection.connect(PooledConnection.java:200) 
    at org.apache.tomcat.jdbc.pool.ConnectionPool.createConnection(ConnectionPool.java:710) 
    at org.apache.tomcat.jdbc.pool.ConnectionPool.borrowConnection(ConnectionPool.java:644) 
    at org.apache.tomcat.jdbc.pool.ConnectionPool.init(ConnectionPool.java:466) 
    at org.apache.tomcat.jdbc.pool.ConnectionPool.<init>(ConnectionPool.java:143) 
    at org.apache.tomcat.jdbc.pool.DataSourceProxy.pCreatePool(DataSourceProxy.java:115) 
    at org.apache.tomcat.jdbc.pool.DataSourceProxy.createPool(DataSourceProxy.java:102) 
    at org.apache.tomcat.jdbc.pool.DataSourceProxy.getConnection(DataSourceProxy.java:126) 
    at org.apache.tomcat.jdbc.pool.DataSourceProxy.getConnection(DataSourceProxy.java:85) 
    at com.thinkbiganalytics.kerberos.KerberosUtil.getConnectionWithOrWithoutKerberos(KerberosUtil.java:60) 
    at com.thinkbiganalytics.hive.service.RefreshableDataSource.getConnectionForValidation(RefreshableDataSource.java:113) 
    at com.thinkbiganalytics.hive.service.RefreshableDataSource.testAndRefreshIfInvalid(RefreshableDataSource.java:133) 
    at com.thinkbiganalytics.hive.service.RefreshableDataSource.getConnection(RefreshableDataSource.java:145) 
    at com.thinkbiganalytics.kerberos.KerberosUtil.getConnectionWithOrWithoutKerberos(KerberosUtil.java:60) 
    at com.thinkbiganalytics.schema.DBSchemaParser.listCatalogs(DBSchemaParser.java:80) 
    ... 118 more 
Caused by: org.apache.hive.jdbc.ZooKeeperHiveClientException: Unable to read HiveServer2 uri from ZooKeeper 
    at org.apache.hive.jdbc.ZooKeeperHiveClientHelper.getNextServerUriFromZooKeeper(ZooKeeperHiveClientHelper.java:86) 
    at org.apache.hive.jdbc.Utils.updateConnParamsFromZooKeeper(Utils.java:506) 
    at org.apache.hive.jdbc.HiveConnection.openTransport(HiveConnection.java:203) 
    ... 136 more 
Caused by: org.apache.hive.jdbc.ZooKeeperHiveClientException: Tried all existing HiveServer2 uris from ZooKeeper. 
    at org.apache.hive.jdbc.ZooKeeperHiveClientHelper.getNextServerUriFromZooKeeper(ZooKeeperHiveClientHelper.java:73) 
    ... 138 more 

有没有人遇到过这个?

回答

相关问题