启用kerberos后,有两种操作方式连接hive;
1、直接连接:
jdbc:hive2://c2eng58:10000/default;principal=hive/c2eng58@EXAMPLE.COM
2、通过zookerper连接
jdbc:hive2://c2eng47:2181,c2eng48:2181,c2eng58:2181/;serviceDiscoveryMode=zooKeeper;zooKeeperNamespace=hiveserver2;
如果设置了JaasConf,注意:此处ambari中填写的zookerper必须为域名地址,不能为ip地址。否则会提示
2018-07-30 16:35:39,087 ERROR [main-SendThread(172.17.81.48:2181)]: An error: (java.security.PrivilegedActionException: javax.security.sasl.SaslException: GSS initiate failed [Caused by GSSException: No valid credentials provided (Mechanism level: Server not found in Kerberos database (7) - LOOKING_UP_SERVER)]) occurred when evaluating Zookeeper Quorum Member's received SASL token. Zookeeper Client will go to AUTH_FAILED state. org.apache.zookeeper.client.ZooKeeperSaslClient(388)
2018-07-30 16:35:39,090 ERROR [main-SendThread(172.17.81.48:2181)]: SASL authentication with Zookeeper Quorum member failed: javax.security.