DolphinScheduler 3.2.2单节点伪集群部署

一、下载安装包

DolphinScheduler:

https://archive.apache.org/dist/dolphinscheduler/3.2.2/apache-dolphinscheduler-3.2.2-bin.tar.gz

MySQL:

https://dev.mysql.com/downloads/mysql/

驱动

https://cdn.mysql.com/archives/mysql-connector-java-8.0/mysql-connector-java-8.0.16.tar.gz

Zookeeper:

https://zookeeper.apache.org/releases.html

二、依赖准备
1、配置用户免密及权限

创建部署用户,并且一定要配置 sudo 免密。以创建 dolphinscheduler 用户为例


# 创建用户需使用 root 登录
useradd dolphinscheduler

# 添加密码
echo "dolphinscheduler" | passwd --stdin dolphinscheduler

# 配置 sudo 免密
sed -i '$adolphinscheduler ALL=(ALL) NOPASSWD: NOPASSWD: ALL' /etc/sudoers
sed -i 's/Defaults requirett/#Defaults requirett/g' /etc/sudoers

#将文件上传到/data目录
tar -zxvf apache-dolphinscheduler-3.2.2-bin.tar.gz -C /data
cd /data && mv dolphinscheduler dolphinscheduler_3.2.2

#将下载好的MySQL驱动复制到以下目录
/data/dolphinscheduler_3.2.2/api-server/libs/mysql-connector-java-8.0.16.jar
/data/dolphinscheduler_3.2.2/tools/libs/mysql-connector-java-8.0.16.jar
/data/dolphinscheduler_3.2.2/standalone-server/libs/standalone-server/mysql-connector-java-8.0.16.jar
/data/dolphinscheduler_3.2.2/worker-server/libs/mysql-connector-java-8.0.16.jar
/data/dolphinscheduler_3.2.2/alert-server/libs/mysql-connector-java-8.0.16.jar
/data/dolphinscheduler_3.2.2/master-server/libs/mysql-connector-java-8.0.16.jar

# 修改目录权限,使得部署用户对二进制包解压后的 apache-dolphinscheduler-*-bin 目录有操作权限
chown -R dolphinscheduler:dolphinscheduler apache-dolphinscheduler-*-bin
chmod -R 755 apache-dolphinscheduler-*-bin

2、配置机器 SSH 免密登陆

su dolphinscheduler

ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys

3、Zookeeper安装
3.1解压:

#将文件上传到/data目录
tar -zxvf apache-zookeeper-3.8.6-bin.tar.gz -C /data
cd /data && mv zookeeper/ zookeeper-3.6.6/

3.2、修改配置文件

mv /data/zookeeper-3.8.6/conf/zoo_sample.cfg /data/zookeeper-3.9.3/conf/zoo.cfg
# 将dataDir 中的值改成 dataDir=./tmp/zookeeper
vim /data/zookeeper-3.8.6/conf/zoo.cfg

3.3 启动

bash /data/zookeeper-3.8.6/bin/zkServer.sh start

三、配置修改
1、创建数据库与账号

mysql -uroot -p

mysql> CREATE DATABASE dolphinscheduler DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

# 修改 {user} 和 {password} 为你希望的用户名和密码
mysql> GRANT ALL PRIVILEGES ON dolphinscheduler.* TO '{user}'@'%' IDENTIFIED BY '{password}';
mysql> GRANT ALL PRIVILEGES ON dolphinscheduler.* TO '{user}'@'localhost' IDENTIFIED BY '{password}';

mysql> flush privileges;

2、启动初始化脚本

bash /data/dolphinscheduler_3.2.2/tools/bin/upgrade-schema.sh

3、修改 dolphinscheduler_env.sh 文件

vim /data/dolphinscheduler_3.2.2/bin/env/dolphinscheduler_env.sh

#修改以下内容
export JAVA_HOME=${JAVA_HOME:-/usr/local/jdk1.8.0_271}
export DATABASE=mysql
export SPRING_PROFILES_ACTIVE=${DATABASE}
export SPRING_DATASOURCE_URL="jdbc:mysql://localhost:3306/dolphinscheduler?useUnicode=true&characterEncoding=UTF-8&useSSL=false"
export SPRING_DATASOURCE_USERNAME="admin"
export SPRING_DATASOURCE_PASSWORD="password"

四、启动

# 一键停止集群所有服务
bash ./bin/stop-all.sh

# 一键开启集群所有服务
bash ./bin/start-all.sh

# 启停 Master
bash ./bin/dolphinscheduler-daemon.sh stop master-server
bash ./bin/dolphinscheduler-daemon.sh start master-server

# 启停 Worker
bash ./bin/dolphinscheduler-daemon.sh stop worker-server
bash ./bin/dolphinscheduler-daemon.sh start worker-server

# 启停 Api
bash ./bin/dolphinscheduler-daemon.sh stop api-server
bash ./bin/dolphinscheduler-daemon.sh start api-server

# 启停 Alert
bash ./bin/dolphinscheduler-daemon.sh stop alert-server
bash ./bin/dolphinscheduler-daemon.sh start alert-server

五、访问

# 默认的用户名和密码是 admin/dolphinscheduler123
http://localhost:12345/dolphinscheduler/ui

访问ui,报master节点 无法发现,节点注册失败,检查节点下的配置文件
application.yaml中server-load-protection 是否开启过载保护
路径:master-server/conf/application.yaml

master:
  listen-port: 5678
  # master prepare execute thread number to limit handle commands in parallel
  pre-exec-threads: 10
  # master execute thread number to limit process instances in parallel
  # master commit task interval
  task-commit-interval: 1s
  state-wheel-interval: 5s
  server-load-protection:
    # 开启 Master 节点的过载保护(包含内存、CPU、磁盘等维度),若设为 false 则全部过载保护失效。
    enabled: false

posted on 2026-04-21 13:39  @atn  阅读(84)  评论(0)    收藏  举报

导航