https://blog.csdn.net/yygabcd/article/details/123741387
https://blog.csdn.net/tiantang2renjian/article/details/130148815
我按照这两位的教程在zeppline给hive添加依赖后,仍然连不上hive,(后台hiveserver2已启动)我该怎么办



https://blog.csdn.net/yygabcd/article/details/123741387
https://blog.csdn.net/tiantang2renjian/article/details/130148815
我按照这两位的教程在zeppline给hive添加依赖后,仍然连不上hive,(后台hiveserver2已启动)我该怎么办



关注让【宝码香车】来帮你解答,本回答参考DeepSeek编写,并整理提供。
如果还有疑问可以点击头像关注私信或评论。如果答案让您满意,请采纳、点赞、关注,非常感谢!
根据您提供的信息,问题主要出在 Zeppelin 连接 Hive 3.1.2 时缺少必要的依赖包,特别是 org.apache.curator.RetryPolicy 类。以下是详细的解决方案:
从错误日志可以看到:
java.lang.ClassNotFoundException: org.apache.curator.RetryPolicy
这表明 Zeppelin 缺少 Curator 相关依赖包,这是 Hive 3.1.2 连接所需的。
您需要将以下依赖包添加到 Zeppelin 的 interpreter 配置中:
<!-- Hive JDBC 依赖 -->
<dependency>
<groupId>org.apache.hive</groupId>
<artifactId>hive-jdbc</artifactId>
<version>3.1.2</version>
</dependency>
<!-- Curator 依赖 -->
<dependency>
<groupId>org.apache.curator</groupId>
<artifactId>curator-framework</artifactId>
<version>4.2.0</version>
</dependency>
<dependency>
<groupId>org.apache.curator</groupId>
<artifactId>curator-client</artifactId>
<version>4.2.0</version>
</dependency>
<dependency>
<groupId>org.apache.curator</groupId>
<artifactId>curator-recipes</artifactId>
<version>4.2.0</version>
</dependency>
<!-- 其他可能需要的依赖 -->
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-common</artifactId>
<version>3.1.2</version>
</dependency>
确保 HiveServer2 服务已正确启动:
# 检查 HiveServer2 是否运行
ps aux | grep HiveServer2
# 或者使用 jps 命令查看
jps
确保 Zeppelin 中的 Hive 连接配置正确:
jdbc:hive2://<hiveserver2_host>:10000/default
确保 Zeppelin 服务器可以访问 HiveServer2 的端口(默认 10000):
telnet <hiveserver2_host> 10000
确保防火墙没有阻止相关端口:
# 查看防火墙状态
systemctl status firewalld
# 如果防火墙开启,添加规则
firewall-cmd --add-port=10000/tcp --permanent
firewall-cmd --reload

tail -f /var/log/hive/hiveserver2.log
tail -f /var/log/hadoop-yarn/yarn-yarn-nodemanager-*.log
希望这些解决方案能帮助您解决问题。如果仍有问题,请提供更多错误日志以便进一步分析。