场景:
- Azkaban 使用kettle data-intergration 来实现调度任务 ,由于CDH 中部署Hiverserver2 的三个节点所在服务器资源内存有限(每天节点16G 内存) 偶尔某个节点由于大量的调度使得该节点down掉 进一步导致其它任务的调度异常
解决方案
- kettle 中的jdbc URL 连接串由原来的host port 单节点模式改为 zookeeper 连接模式
具体操作
- 第一步 : 将curator-client-2.12.0.jar 、curator-framework-2.12.0.jar 、curator-recipes-2.12.0.jar 、zookeeper.jar 4个jar 包 放到 data-integration 下面的 lib 目录中
- 第二步:将原来使用host port 模式的jdbc:hive2 URL 统一替换为 zookeeper 模式连接 具体参考我的上一篇文章
java通过zookeeper 高可用方式连接hiveserver2
测试
- 在azkaban 上新建一个sql 脚本类型的任务 任务能正常运行成功 表明该方案有效 ,然后在CM后台手动停止一个Hiveserver2 来观察Azkaban 任务是否正常执行