今天看啥  ›  专栏  ›  InfoQ

作业帮基于 Apache DolphinScheduler 3_0_0 的缺陷修复与优化

InfoQ  · 公众号  · 科技媒体  · 2024-12-20 17:33
    

主要观点总结

本文介绍了作业帮大数据团队基于DolphinScheduler搭建的UDA任务调度平台的优化实践,包括修复DolphinScheduler3.0.0中的问题和稳定性优化,以及巡检流程和未来规划。文章详细描述了生产环境中遇到的问题,如线程泄漏、CPU飙高、任务分配不均等,并针对这些问题进行了详细的解决方案和修复措施。同时,文章还介绍了对历史数据的清理策略和监控面板的搭建,以及日常巡检的关注点和未来的规划。

关键观点总结

关键观点1: 生产环境中遇到的问题及解决方案

包括线程泄漏、CPU飙高、任务分配不均等、Master事件处理卡住等问题,并针对这些问题进行了详细的解决方案和修复措施。

关键观点2: 历史数据清理策略

介绍了对数据库和磁盘历史数据的清理策略,通过添加后台线程组件自动清理无用数据。

关键观点3: 监控面板的搭建

从集群、项目、WorkerGroup和Pod等维度搭建了监控面板和告警,以辅助巡检工作。

关键观点4: 日常巡检的关注点

关注集群、项目、WorkerGroup三个维度下的指标,包括Master Slot变化、集群水位、并发量、资源使用等稳定性指标。

关键观点5: 未来规划

随着业务量和使用场景的扩展,考虑升级DolphinScheduler版本,并反馈所做优化至社区。


文章预览

文|作业帮大数据团队(阮文俊、孙建业) 背   景 基于 DolphinScheduler 搭建的 UDA 任务调度平台有效支撑了公司的业务数据开发需求,处理着日均百万级别的任务量。整个 UDA 的架构如下图所示,其中我们的引擎层主要基于 DolphinScheduler 的 Master 和 Worker 服务搭建,充分利用了 Master 节点优秀的高并发调度能力、worker 节点的分组隔离能力。我们通过一层适配层对 DolphinScheduler 对外暴露的接口进行了封装和增强来适配我们的业务场景。 图 1-1 UDA 任务调度平台架构 随着使用的深入,我们发现 DolphinScheduler3.0.0 版本中存在一些难以通过运维手段规避的问题,这些问题影响数据平台的稳定性,导致隔一段时间需要重启服务来使集群恢复正常,并且核心组件对外暴露的可观测性指标十分有限,导致问题的排查定位过程十分繁琐。我们认为一个可以稳定运行 ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览