当前位置: 首页 > article >正文

CentOS 7单机伪集群部署DolphinScheduler 3.2.2:从零搭建可视化调度平台

1. 环境准备打造DolphinScheduler的温床在CentOS 7上部署DolphinScheduler伪集群就像给新房子打地基。我遇到过不少初学者在环境配置阶段就翻车最常见的就是JDK版本不对或者数据库权限没开。咱们先从最基础的开始把地基打牢。JDK安装是第一个门槛。我强烈建议用Oracle JDK 1.8实测OpenJDK偶尔会有奇怪的兼容性问题。安装完记得配置环境变量这个老生常谈但总有人栽跟头# 检查现有Java版本 java -version # 如果已有旧版本先卸载 yum remove -y java-* # 安装Oracle JDK 1.8 wget https://download.oracle.com/otn-pub/java/jdk/8u341-b10/jdk-8u341-linux-x64.tar.gz tar -zxvf jdk-8u341-linux-x64.tar.gz -C /usr/local/接着在/etc/profile末尾添加export JAVA_HOME/usr/local/jdk1.8.0_341 export PATH$JAVA_HOME/bin:$PATHMySQL 5.7安装更是个技术活。有次我帮客户排查问题发现他们用MariaDB导致调度任务莫名卡死。建议直接用官方MySQL别图省事用系统自带# 添加MySQL官方源 rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-7.noarch.rpm # 禁用8.0源启用5.7源 yum-config-manager --disable mysql80-community yum-config-manager --enable mysql57-community # 安装服务端和客户端 yum install -y mysql-community-server mysql-community-client安装完记得初始化数据库并创建专用账号CREATE DATABASE ds CHARACTER SET utf8 COLLATE utf8_general_ci; CREATE USER ds_user% IDENTIFIED BY Ds_123456; GRANT ALL PRIVILEGES ON ds.* TO ds_user%; FLUSH PRIVILEGES;2. ZooKeeper部署集群的神经中枢ZooKeeper在伪集群里扮演着关键角色就像乐队的指挥。虽然单机部署简单但配置不当会导致任务状态同步异常。我推荐用3.8.4版本去年有个客户用3.4.x版本就遇到过选举死锁问题。安装过程其实很标准wget https://archive.apache.org/dist/zookeeper/zookeeper-3.8.4/apache-zookeeper-3.8.4-bin.tar.gz tar -zxvf apache-zookeeper-3.8.4-bin.tar.gz -C /usr/local/ mv /usr/local/apache-zookeeper-3.8.4-bin /usr/local/zookeeper配置文件才是重头戏。很多人直接复制样例文件结果漏掉关键参数。这是我的私藏配置模板zoo.cfgtickTime2000 initLimit10 syncLimit5 dataDir/usr/local/zookeeper/data dataLogDir/usr/local/zookeeper/logs clientPort2181 # 伪集群模式下这个很关键 maxClientCnxns60 autopurge.snapRetainCount3 autopurge.purgeInterval24启动前记得创建数据目录mkdir -p /usr/local/zookeeper/{data,logs} echo 1 /usr/local/zookeeper/data/myid服务管理有讲究建议用systemd托管cat /etc/systemd/system/zk.service EOF [Unit] DescriptionZooKeeper Service Afternetwork.target [Service] Typeforking ExecStart/usr/local/zookeeper/bin/zkServer.sh start ExecStop/usr/local/zookeeper/bin/zkServer.sh stop ExecReload/usr/local/zookeeper/bin/zkServer.sh restart Userroot Grouproot [Install] WantedBymulti-user.target EOF验证服务是否正常/usr/local/zookeeper/bin/zkCli.sh -server localhost:2181 [zk: localhost:2181(CONNECTED) 0] ls /3. DolphinScheduler核心部署终于到主角登场了3.2.2版本相比之前有个大改进——支持轻量级部署。不过伪集群配置还是有不少坑我去年在客户现场调试了整整两天才摸清门道。解压安装包时要注意权限问题wget https://dlcdn.apache.org/dolphinscheduler/3.2.2/apache-dolphinscheduler-3.2.2-bin.tar.gz tar -zxvf apache-dolphinscheduler-3.2.2-bin.tar.gz -C /usr/local/ mv /usr/local/apache-dolphinscheduler-3.2.2-bin /usr/local/dolphinscheduler专用用户创建这一步很多人偷懒直接用root后面权限问题能让你怀疑人生useradd dolphinscheduler echo dolphinscheduler123 | passwd --stdin dolphinscheduler echo dolphinscheduler ALL(ALL) NOPASSWD: ALL /etc/sudoers chown -R dolphinscheduler:dolphinscheduler /usr/local/dolphinschedulerSSH免密登录是伪集群部署的关键。有次我遇到个奇葩问题发现是authorized_keys权限不对su - dolphinscheduler ssh-keygen -t rsa -P -f ~/.ssh/id_rsa cat ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys chmod 600 ~/.ssh/authorized_keys # 测试是否生效 ssh localhost环境配置文件dolphinscheduler_env.sh要特别注意这些参数export JAVA_HOME/usr/local/jdk1.8.0_341 export DATABASEmysql export SPRING_DATASOURCE_URLjdbc:mysql://localhost:3306/ds?useUnicodetruecharacterEncodingUTF-8 export SPRING_DATASOURCE_USERNAMEds_user export SPRING_DATASOURCE_PASSWORDDs_123456 export REGISTRY_ZOOKEEPER_CONNECT_STRINGlocalhost:2181install_env.sh这个文件决定伪集群的部署形态重点看这几个参数ipslocalhost masterslocalhost workerslocalhost:default alertServerlocalhost apiServerslocalhost installPath/usr/local/dolphinscheduler deployUserdolphinscheduler4. 数据库初始化与服务启动到这一步就像组装乐高前面零件都准备好了现在开始拼装。数据库初始化最容易出问题我总结了三类常见错误字符集不对、权限不足、表结构冲突。初始化数据库前建议先备份mysql -uds_user -pDs_123456 -e DROP DATABASE IF EXISTS ds; CREATE DATABASE ds CHARACTER SET utf8 COLLATE utf8_general_ci; cd /usr/local/dolphinscheduler bash tools/bin/upgrade-schema.sh服务启动顺序有讲究我习惯用这个顺序# 先启动Master bash ./bin/dolphinscheduler-daemon.sh start master-server # 再启动Worker bash ./bin/dolphinscheduler-daemon.sh start worker-server # 接着启动API bash ./bin/dolphinscheduler-daemon.sh start api-server # 最后启动Alert bash ./bin/dolphinscheduler-daemon.sh start alert-server检查服务状态的小技巧tail -f /usr/local/dolphinscheduler/master-server/logs/master-server.log tail -f /usr/local/dolphinscheduler/worker-server/logs/worker-server.log登录Web UI后别忘了改默认密码http://服务器IP:12345/dolphinscheduler 初始账号admin/dolphinscheduler1235. 常见问题排查指南部署完成只是开始运维才是重头戏。根据我的实战经验90%的问题集中在以下场景端口冲突是最常见的特别是12345端口被占用netstat -tunlp | grep 12345 # 如果被占用可以修改api-server/conf/application.yaml中的server.portZooKeeper连接失败通常有三种可能ZooKeeper服务没启动防火墙没开2181端口dolphinscheduler_env.sh配置错误任务卡住的排查思路# 查看Master日志 grep -A 10 ERROR /usr/local/dolphinscheduler/master-server/logs/master-server.log # 检查ZooKeeper节点 /usr/local/zookeeper/bin/zkCli.sh -server localhost:2181 ls /dolphinscheduler性能调优参数建议# 在master-server/conf/master.properties中调整 master.exec.threads100 master.exec.task.num20 master.dispatch.task.num30 # 在worker-server/conf/worker.properties中调整 worker.exec.threads100 worker.heartbeat.interval10最后提醒下伪集群模式不适合生产环境。如果要做性能测试建议至少拆分成3个节点MasterAPI一个节点Worker单独一个节点AlertZooKeeperMySQL一个节点。

相关文章:

CentOS 7单机伪集群部署DolphinScheduler 3.2.2:从零搭建可视化调度平台

1. 环境准备:打造DolphinScheduler的温床 在CentOS 7上部署DolphinScheduler伪集群,就像给新房子打地基。我遇到过不少初学者在环境配置阶段就翻车,最常见的就是JDK版本不对或者数据库权限没开。咱们先从最基础的开始,把地基打牢。…...

跨语言自动化:Qwen3-32B多语言支持在OpenClaw中的应用

跨语言自动化:Qwen3-32B多语言支持在OpenClaw中的应用 1. 为什么需要多语言自动化助手 作为一个经常需要处理多语言内容的开发者,我一直在寻找能够真正理解并执行混合语言指令的自动化工具。传统的自动化脚本往往只能处理单一语言场景,当遇…...

QPST进阶玩法:不刷全包也能升级系统!用引导文件单独写入vendor分区实测

QPST高阶应用:精准分区更新技术解析与实战指南 在Android设备维护领域,全量刷机包动辄数GB的体积常常让技术爱好者们头疼——尤其是当你只需要更新基带或驱动等特定组件时。传统线刷方式不仅耗时耗力,还存在用户数据丢失的风险。本文将深入探…...

脑影像预测新工具 | NBS-Predict:融合脑网络与机器学习的智能诊断方案

1. NBS-Predict是什么?为什么它值得关注? 想象你是一位神经科医生,每天要面对几十张复杂的大脑扫描影像。传统诊断就像在迷宫里摸黑前行——依赖经验、容易漏诊、耗时费力。而NBS-Predict就像给你装上了夜视仪导航仪的组合装备,它…...

VSCode远程开发Qwen3-ForcedAligner-0.6B:Linux服务器调试全攻略

VSCode远程开发Qwen3-ForcedAligner-0.6B:Linux服务器调试全攻略 用VSCode远程连接Linux服务器,让语音文本对齐开发变得简单高效 你是否曾经遇到过这样的情况:在本地电脑上开发语音处理应用,但硬件性能跟不上,跑个模型…...

本科毕业论文 AI 写作新范式:Paperzz 4 步智能写作系统,解锁毕业高效新体验

Paperzz-AI官网免费论文查重复率AIGC检测/开题报告/文献综述/论文初稿paperzz - 毕业论文-AIGC论文检测-AI智能降重-ai智能写作https://www.paperzz.cc/dissertation 一、本科毕业论文的写作困局与破局 本科毕业论文是大学学业的收官之作,却也是无数学生的 “毕业拦…...

本科毕业论文 AI 写作新范式:Paperzz,让 12000 字本科论文高效落地

Paperzz-AI官网免费论文查重复率AIGC检测/开题报告/文献综述/论文初稿paperzz - 毕业论文-AIGC论文检测-AI智能降重-ai智能写作https://www.paperzz.cc/dissertation 一、开篇:本科毕业论文,不止是毕业门槛,更是学术成长的第一站 对于每一位…...

Nanbeige 4.1-3B部署教程:使用Cloudflare Tunnel安全暴露本地像素终端

Nanbeige 4.1-3B部署教程:使用Cloudflare Tunnel安全暴露本地像素终端 1. 项目介绍 Nanbeige 4.1-3B像素冒险聊天终端是一款为Nanbeige大模型量身定制的特殊交互界面。它采用复古像素游戏风格设计,将AI对话体验转化为一场视觉化的冒险旅程。 1.1 核心…...

本科毕业论文写作全指南:Paperzz 智能写作工具,让毕业创作从 “卡壳” 到 “通关”

Paperzz-AI官网免费论文查重复率AIGC检测/开题报告/文献综述/论文初稿paperzz - 毕业论文-AIGC论文检测-AI智能降重-ai智能写作https://www.paperzz.cc/dissertation 一、本科毕业季的写作困境:被毕业论文困住的青春 每到毕业季,大学校园里都弥漫着一种…...

利用遗传算法求解混合流水车间调度问题

利用遗传算法(GA)求解混合流水车间调度问题(Hybrid flow-shop scheduling problem, HFSP) 其中:main.m是主函数运行即可;GA.m是算法的代码;colorplus.p是一个颜色补充包,用于获得甘特图的颜色配置;cheatsheet.png是col…...

计算机毕业设计:网上图书个性化推荐系统 Django框架 可视化 协同过滤推荐算法 机器学习 大数据 大模型(建议收藏)✅

博主介绍:✌全网粉丝10W,前互联网大厂软件研发、集结硕博英豪成立工作室。专注于计算机相关专业项目实战6年之久,选择我们就是选择放心、选择安心毕业✌ > 🍅想要获取完整文章或者源码,或者代做,拉到文章底部即可与…...

OpenClaw多平台支持:在Linux上对接QwQ-32B模型

OpenClaw多平台支持:在Linux上对接QwQ-32B模型 1. 为什么选择LinuxOpenClawQwQ-32B组合 去年我在尝试自动化办公流程时,偶然发现了OpenClaw这个开源框架。作为一个长期使用Linux系统的开发者,我一直在寻找能够深度集成到本地环境的AI助手方…...

计算机毕业设计:Python 智能小说推荐与在线阅读系统 Django框架 数据分析 可视化 协同过滤推荐算法 图书 大数据 机器学习(建议收藏)✅

博主介绍:✌全网粉丝10W,前互联网大厂软件研发、集结硕博英豪成立软件开发工作室,专注于计算机相关专业项目实战6年之久,累计开发项目作品上万套。凭借丰富的经验与专业实力,已帮助成千上万的学生顺利毕业,…...

Qwen3-Reranker-0.6B快速入门:无需翻墙,国内极速下载部署

Qwen3-Reranker-0.6B快速入门:国内极速下载部署指南 1. 引言 在当今信息爆炸的时代,如何从海量数据中快速准确地找到最相关的内容成为企业面临的重要挑战。Qwen3-Reranker-0.6B作为一款轻量级语义重排序模型,能够有效提升检索增强生成(RAG)…...

MCP Inspector:Node.js环境下的高效在线调试利器

1. 为什么你需要MCP Inspector? 如果你经常在Node.js环境下开发MCP Server相关应用,肯定遇到过这样的场景:代码跑起来了,但返回的数据总是不对;或者服务明明启动了,客户端却死活连不上。这时候你会怎么做&a…...

CVE-2025-29927 漏洞分析:当 Next.js 的防死循环机制,变成了中间件鉴权绕过的入口

前文 本文通过CVE-2025-29927来叙述,Next.js框架的严重(Critical)漏洞,这个漏洞的核心是中间件(Middleware)鉴权绕过。 它并不是业务代码本身直接出现了认证缺陷,而是Next.js内部为了防止中间件…...

用STM32F103和FreeRTOS做个智能小管家:从传感器到QT界面的完整开发记录

从零打造智能环境监控系统:STM32F103FreeRTOS实战手记 去年夏天,我在书房里盯着不断跳闸的空调插座,突然萌生了一个想法:为什么不能自己做一个能感知环境、自动调节的智能系统?于是,这个结合STM32F103和Fre…...

嵌入式整数线性映射库:零依赖、溢出安全、硬实时兼容

1. 项目概述Map是一个轻量级、零依赖的嵌入式数学映射库,其核心功能是将一个输入数值区间(源范围)线性映射到另一个输出数值区间(目标范围)。该库不依赖任何标准C库函数(如math.h中的fabs或fminf&#xff0…...

BH1750环境光传感器驱动开发与嵌入式应用实践

1. BH1750环境光传感器技术解析与嵌入式驱动开发实践BH1750是由ROHM(罗姆)半导体推出的高精度数字环境光传感器IC,专为智能照明控制、自动背光调节、人机交互界面亮度自适应等场景设计。该器件采用IC串行接口,内置16位ADC&#xf…...

Z-Image-GGUF自动化运维:基于Shell脚本的模型服务监控与重启

Z-Image-GGUF自动化运维:基于Shell脚本的模型服务监控与重启 你有没有遇到过这种情况?一个跑得好好的AI文生图服务,突然就卡住了,或者直接崩溃了。尤其是在生产环境里,半夜三更收到告警,爬起来重启服务&am…...

SEW-Movifit变频器拨码开关设置全攻略(附X50接口位置图解)

SEW-Movifit变频器拨码开关设置全攻略(附X50接口位置图解) 在工业自动化领域,SEW-Movifit系列变频器因其出色的性能和稳定性备受工程师青睐。然而,对于初次接触该设备的现场技术人员来说,拨码开关的设置和接口定位往往…...

选对城市对年轻人的发展到底有多重要?

前言 最近后台有很多小伙伴问我,如何选择城市发展,特别是在工作的前五年。 小编个人认为,选对城市对年轻人的发展是非常重要。接下来小编就来聊聊我个人观点。 特别说明:仅代表个人观点,无任何引导,请大家…...

技术解析 2DGS vs 3DGS | SIGGRAPH 2024 新方法如何用‘二维圆盘’实现精准表面重建

1. 从3D到2D:为什么高斯溅射需要"降维打击" 去年第一次接触3D Gaussian Splatting(3DGS)时,我被它的实时渲染效果震撼了——在RTX 3090上能跑到200FPS以上的新视角合成,这比传统NeRF快了上百倍。但当我尝试用…...

信捷HMI与西门子S7-1200通信实战:从IP配置到Wireshark抓包全流程

信捷HMI与西门子S7-1200工业通信深度解析:从配置到诊断的全链路实践 在工业自动化项目中,不同品牌设备间的数据互通往往成为系统集成的技术难点。当信捷HMI需要与西门子S7-1200 PLC建立稳定通信时,工程师不仅需要掌握基础配置技能&#xff0c…...

Nanbeige 4.1-3B惊艳效果:流式渲染速度与显存占用的帕累托最优解

Nanbeige 4.1-3B惊艳效果:流式渲染速度与显存占用的帕累托最优解 1. 复古像素风AI对话体验 Nanbeige 4.1-3B模型带来的"像素冒险聊天终端"彻底改变了传统AI对话界面的刻板印象。这套前端设计采用了经典的JRPG视觉风格,将AI交互变成了一场充满…...

FLAC3D中桩单元与梁单元弯矩、轴力、剪力云图及包络线显示探索

flac3d桩单元,梁单元,弯矩,轴力,剪力云图显示,可以显示成包络线的形式,达到与midas类似的效果。 支持pile单元和beam单元。在岩土工程数值模拟领域,FLAC3D是一款强大的工具。今天咱们来聊聊如何…...

JIRA 7.3.8企业级部署实战:破解包安全替换与MySQL连接器配置详解

JIRA 7.3.8企业级部署实战:关键组件安全配置与MySQL连接优化 在企业级项目管理工具部署过程中,JIRA作为行业标杆产品,其稳定性和合规性直接关系到团队协作效率。本文将深入探讨两个核心组件——atlassian-extras和mysql-connector的配置细节&…...

探索Maxwell:地质电气数据处理的得力助手

Maxwell是一个用于地质电气数据的32位Windows应用程序。 加密狗软件 它是电子地球物理数据消费者的生产力增强工具。已经确定它已被开发用于处理所有类型的地球物理数据:时域,频域,地面,机载,dB / dt和B场。Maxwell自动…...

MATLAB小波工具箱GUI实战:5分钟搞定信号降噪与压缩(附完整流程)

MATLAB小波工具箱GUI实战:5分钟搞定信号降噪与压缩 在工程信号处理领域,噪声干扰和数据冗余是两大常见痛点。传统编程方式虽然灵活,但对于需要快速验证效果的工程师来说,往往显得效率不足。MATLAB小波工具箱提供的图形用户界面(GU…...

PostgreSQL 生产环境升级实战:pg_upgrade 核心原理与避坑指南

1. 为什么需要pg_upgrade? PostgreSQL作为一款开源关系型数据库,每年都会发布新版本。新版本不仅修复bug,还会带来性能优化和新功能。但很多DBA面对生产环境升级时总是犹豫不决——毕竟谁也不想因为升级导致业务中断或数据丢失。 我经历过一次…...