尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

Apache DolphinScheduler 软硬件环境建议配置与生产部署指南

Apache DolphinScheduler 软硬件环境建议配置与生产部署指南 Apache DolphinScheduler 软硬件环境建议配置与生产部署指南【免费下载链接】dolphinschedulerApache DolphinScheduler is the modern data orchestration platform. Agile to create high performance workflow with low-code项目地址: https://gitcode.com/GitHub_Trending/dol/dolphinschedulerApache DolphinScheduler 作为开源分布式工作流任务调度系统其稳定运行与部署环境的软硬件选型密切相关。本文以官方《软硬件环境建议配置》文档为核心系统梳理操作系统版本要求、服务器硬件基线、组件网络端口、浏览器兼容性以及集群时钟同步等部署前置条件并结合仓库内各服务模块的application.yaml配置与源码实现说明这些环境要求背后的实际落点帮助你在生产环境完成一次稳妥、可验证的部署规划。Linux 操作系统版本要求DolphinScheduler 可以很好地部署和运行在 Intel 架构服务器及主流虚拟化环境下并支持主流的 Linux 操作系统环境。官方建议的操作系统版本如下操作系统版本Red Hat Enterprise Linux7.0 及以上CentOS7.0 及以上Oracle Enterprise Linux7.0 及以上Ubuntu LTS16.04 及以上以上 Linux 操作系统可运行在物理服务器以及 VMware、KVM、XEN 主流虚拟化环境上。这意味着无论你使用裸金属机房还是企业内部虚拟化平台只要满足上述操作系统版本基线即可正常部署运行。说明文档给出的版本要求是社区支持的最低基线。版本过旧的操作系统往往伴随内核、glibc 与 JDK 兼容性问题生产环境建议使用各发行版仍在维护周期内的较新版本。服务器建议配置DolphinScheduler 支持运行在 Intel x86-64 架构的 64 位通用硬件服务器平台。对生产环境的服务器硬件配置建议如下CPU内存硬盘类型网络实例数量4核8 GBSAS千兆网卡1注意事项以上建议配置为部署 DolphinScheduler 的最低配置生产环境强烈推荐使用更高的配置硬盘大小配置建议50GB且系统盘和数据盘分开。从源码理解资源消耗点上述硬件基线并非凭空设定。从仓库配置可以看出Master 与 Worker 的核心线程资源均按 CPU 规格进行估算。例如在 dolphinscheduler-master/src/main/resources/application.yaml 中master.workflow-event-bus-fire-thread-count默认值为2 * CPU 核心数 1用于触发工作流事件master.logic-task-config.task-executor-thread-count用于执行逻辑任务的线程数。在 dolphinscheduler-worker/src/main/resources/application.yaml 中worker.physical-task-config.task-executor-thread-size默认值为 100控制物理任务引擎执行任务的线程池大小。因此CPU 核心数直接影响任务并发吞吐能力而 Master 和 Worker 均内置了基于 CPU、JVM、系统内存与磁盘使用率的负载保护机制见下文“端口与负载保护配置”一节内存与磁盘的预留空间同样决定了调度与执行引擎在高负载下的稳定性。网络要求DolphinScheduler 正常运行需要开放如下网络端口组件默认端口说明MasterServer5678非通信端口只需本机端口不冲突即可WorkerServer1234非通信端口只需本机端口不冲突即可ApiApplicationServer12345提供后端通信端口注意事项MasterServer 和 WorkerServer不需要开启网络间通信只需本机端口不冲突即可管理员可根据实际环境中 DolphinScheduler 组件部署方案在网络侧和主机侧开放相关端口。端口在配置中的实际落点这些默认端口均可在各服务模块的application.yaml中确认或调整MasterServermaster.listen-port: 5678位于 dolphinscheduler-master/src/main/resources/application.yamlWorkerServerworker.listen-port: 1234位于 dolphinscheduler-worker/src/main/resources/application.yaml。同时该文件中的server.port: 1235是 Worker 暴露内部 REST 接口的端口配置时同样需要保证不与 Worker 监听端口冲突ApiApplicationServerserver.port: 12345位于 dolphinscheduler-api/src/main/resources/application.yaml其servlet.context-path默认为/dolphinscheduler/浏览器访问前端时即通过该端口与后端交互。从架构角度看Master 与 Worker 之间的协调依赖注册中心如 Zookeeper、JDBC 等 registry 插件见 dolphinscheduler-registry这也是二者监听端口“无需对外通信”的原因——节点发现、心跳与任务分发均通过注册中心完成而非节点间的直连端口。端口与负载保护配置生产调优参考以 Worker 为例dolphinscheduler-worker/src/main/resources/application.yaml 中提供了丰富的生产调优项worker.max-heartbeat-interval: 10sWorker 心跳上报间隔worker.host-weight: 100Worker 主机权重用于任务分发时参与负载均衡打分worker.group: defaultWorker 所属工作组worker.server-load-protection.*Worker 过载保护阈值默认 CPU系统/JVM、内存、磁盘使用率阈值均为 0.8达到阈值后该 Worker 将不再被分派任务。Master 侧同样具备master.server-load-protection.*过载保护并额外提供max-concurrent-workflow-instances最大并发工作流实例数与max-workflow-instance-runtime、max-task-instance-runtime实例/任务最长运行时间0d表示不限制等保护手段详见 dolphinscheduler-master/src/main/resources/application.yaml。这些机制与“生产环境推荐更高配置”的建议互为印证硬件资源越充裕调度引擎的并发上限与容错能力越强。客户端 Web 浏览器要求DolphinScheduler 推荐使用Chrome以及使用 Chromium 内核的较新版本浏览器访问前端可视化操作界面工作流 DAG 编排、任务实例监控、告警配置等均在前端完成。建议在部署前确认运维与开发终端使用的浏览器版本避免因浏览器过旧导致前端组件渲染异常。时钟同步为避免可能影响任务执行的内部集群通信问题请确保所有集群节点上的时钟与公共时钟源同步例如使用Chrony和/或NTP。同步时间确保集群中的每个节点都有相同的时间。这一点在多节点集群中尤为重要DolphinScheduler 依赖注册中心进行 Master/Worker 的选举、心跳与故障转移任务实例的启动时间、超时判断如max-task-instance-runtime以及工作流调度时间均以系统时钟为准。节点间时钟漂移可能导致心跳超时误判、调度触发偏差等问题因此建议在部署清单中一并纳入时钟同步的配置步骤。部署环境核对清单综合官方文档与仓库配置生产环境部署前可按下表逐项核对核对项建议值依据操作系统RHEL/CentOS/OEL 7.0Ubuntu LTS 16.04官方文档虚拟化平台物理机或 VMware/KVM/XEN官方文档CPU4 核及以上最低官方文档内存8 GB 及以上最低官方文档硬盘50GB系统盘与数据盘分开官方文档网卡千兆及以上官方文档Master 监听端口5678本机不冲突即可master application.yamlWorker 监听端口1234本机不冲突即可worker application.yamlAPI 服务端口12345对外开放api application.yaml浏览器Chrome / Chromium 内核较新版本官方文档集群时钟Chrony 或 NTP 与公共时钟源同步官方文档按照上述软硬件基线完成环境准备后即可参考 config/README.md 进行组件配置并使用 script/dolphinscheduler-daemon.sh 启动 Master、Worker、API 等服务。若采用容器化部署可进一步参考 deploy/docker/docker-compose.yml 与 deploy/kubernetes/dolphinscheduler 中的部署模板。【免费下载链接】dolphinschedulerApache DolphinScheduler is the modern data orchestration platform. Agile to create high performance workflow with low-code项目地址: https://gitcode.com/GitHub_Trending/dol/dolphinscheduler创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表