方案:Apache Hive 无法与 Azure HDInsight 中的 Apache Zookeeper 建立连接

本文介绍在 Azure HDInsight 群集中使用交互式查询组件时出现的问题的故障排除步骤和可能的解决方案。

问题

Hive 视图不可访问,/var/log/hive 中的日志显示类似于以下内容的错误:

ERROR [Curator-Framework-0]: curator.ConnectionState (ConnectionState.java:checkTimeouts(200)) - Connection timed out for connection string (<zookeepername1>.cloud.wbmi.com:2181,<zookeepername2>.cloud.wbmi.com:2181,<zookeepername3>.cloud.wbmi.com:2181) and timeout (15000) / elapsed (21852)

原因

Hive 可能无法建立与 Zookeeper 的连接,这会阻止 Hive 视图启动。

解决方法

  1. 检查 Zookeeper 服务是否正常运行。

  2. 检查 Zookeeper 服务是否具有 Hive Server2 的 ZNode 条目。 该值会缺失或不正确。

    /usr/hdp/2.6.2.25-1/zookeeper/bin/zkCli.sh -server <zookeepername1>
    [zk: <zookeepername1>(CONNECTED) 0] ls /hiveserver2-hive2
    
  3. 若要重新建立连接,请重新启动 Zookeeper 节点,并重新启动 HiveServer2。

后续步骤

如果你的问题未在本文中列出,或者无法解决问题,请访问以下渠道之一获取更多支持:

  • 如果需要更多帮助,可以从 Azure 门户提交支持请求。 从菜单栏中选择“支持” ,或打开“帮助 + 支持” 中心。