DolphinScheduler3.1.7集群搭建

本文详细介绍了如何在三台机器上部署ApacheDolphinScheduler,包括创建部署用户、配置SSH免密、添加MySQL驱动、创建数据库和用户、修改环境变量、安装配置以及启动和停止DolphinScheduler服务。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

DolphinScheduler地址

github: GitHub - apache/dolphinscheduler: Apache DolphinScheduler is the modern data orchestration platform. Agile to create high performance workflow with low-code

部署指南:https://www.bookstack.cn/read/dolphinscheduler-3.0.0-zh

本次部署机器是

1.1 创建部署用户三台

# 创建用户需使用 root 登录
useradd ds
# 添加密码
echo "ds" | passwd --stdin ds
# 配置 sudo 免密
sed -i '$ads ALL=(ALL)  NOPASSWD: NOPASSWD: ALL' /etc/sudoers
sed -i 's/Defaults    requirett/#Defaults    requirett/g' /etc/sudoers
# 修改目录权限,使得部署用户对二进制包解压后的 apache-dolphinscheduler-*-bin 目录有操作权限
chown -R ds:ds apache-dolphinscheduler-*-bin

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


然后每一台服务器都需要执行ssh免密,才可以使用一键部署的脚本
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
ssh-copy-id 服务器1
ssh-copy-id 服务器2
ssh-copy-id 服务器3

1.2 添加mysql驱动 

需要手动下载 对应的mysql-connector-java驱动(8.0.16)并移动到 DolphinScheduler 的每个模块的 libs 目录下,其中包括 api-server/libsalert-server/libsmaster-server/libsworker-server/libstools/libs

mysql驱动下载地址 MySQL :: Download MySQL Connector/J (Archived Versions)

cp mysql-connector-java-8.0.16.jar alert-server/libs/
cp mysql-connector-java-8.0.16.jar api-server/libs/
cp mysql-connector-java-8.0.16.jar tools/libs/
cp mysql-connector-java-8.0.16.jar master-server/libs/
cp mysql-connector-java-8.0.16.jar worker-server/libs/

1.3 创建数据库及用户

CREATE USER 'ds'@'%' IDENTIFIED BY 'ds123';  
CREATE DATABASE dolphinscheduler DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;  
grant all privileges on dolphinscheduler.* to 'ds'@'%' ;  
flush privileges;

1.4 修改dolphinscheduler环境脚本变量

  • DolphinScheduler 的数据库配置,将username和password改成你在上一步中设置的用户名和密码,一些任务类型外部依赖路径或库文件,如 JAVA_HOMESPARK_HOME都是在这里定义的注册中心zookeeper服务端相关配置,比如缓存,时区设置等

  • 如果您不使用某些任务类型,您可以忽略任务外部依赖项,但您必须根据您的环境更改 JAVA_HOME、注册中心和数据库相关配置。

# 修改ds环境配置
vi ./bin/env/dolphinscheduler_env.sh

export JAVA_HOME=${JAVA_HOME:-/usr/java/default}

# Database related configuration, set database type, username and password
export DATABASE=${DATABASE:-mysql}
export SPRING_PROFILES_ACTIVE=${DATABASE}
export SPRING_DATASOURCE_URL="jdbc:mysql://hadoop5.changhongit.com:3306/dolphinscheduler?useUnicode=true&characterEncoding=UTF-8&useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=GMT%2B8"
export SPRING_DATASOURCE_USERNAME=${SPRING_DATASOURCE_USERNAME:-"ds"}
export SPRING_DATASOURCE_PASSWORD=${SPRING_DATASOURCE_PASSWORD:-"ds123"}

# DolphinScheduler server related configuration
export SPRING_CACHE_TYPE=${SPRING_CACHE_TYPE:-none}
export SPRING_JACKSON_TIME_ZONE=${SPRING_JACKSON_TIME_ZONE:-UTC}
export MASTER_FETCH_COMMAND_NUM=${MASTER_FETCH_COMMAND_NUM:-10}

# Registry center configuration, determines the type and link of the registry center
export REGISTRY_TYPE=${REGISTRY_TYPE:-zookeeper}
export REGISTRY_ZOOKEEPER_CONNECT_STRING=${REGISTRY_ZOOKEEPER_CONNECT_STRING:-hadoop5.changhongit.com:2181,hadoop6.changhongit.com:2181,hadoop7.changhongit.com:2181}

# Tasks related configurations, need to change the configuration if you use the related tasks.
export HADOOP_HOME=${HADOOP_HOME:-/opt/soft/hadoop}
export HADOOP_CONF_DIR=${HADOOP_CONF_DIR:-/opt/soft/hadoop/etc/hadoop}
export SPARK_HOME1=${SPARK_HOME1:-/opt/soft/spark1}
export SPARK_HOME2=${SPARK_HOME2:-/opt/soft/spark2}
export PYTHON_HOME=${PYTHON_HOME:-/opt/soft/python}
export HIVE_HOME=${HIVE_HOME:-/opt/soft/hive}
export FLINK_HOME=${FLINK_HOME:-/opt/soft/flink}
export DATAX_HOME=${DATAX_HOME:-/opt/soft/datax}
export SEATUNNEL_HOME=${SEATUNNEL_HOME:-/opt/soft/seatunnel}
export CHUNJUN_HOME=${CHUNJUN_HOME:-/opt/soft/chunjun}

export PATH=$HADOOP_HOME/bin:$SPARK_HOME1/bin:$SPARK_HOME2/bin:$PYTHON_HOME/bin:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_HOME/bin:$SEATUNNEL_HOME/bin:$CHUNJUN_HOME/bin:$PATH

1.5 修改安装环境配置

完成基础环境和元数据库初始化的准备后,需要根据你的机器环境修改配置文件。配置文件可以在目录 bin/env 中找到,他们分别是 install_env.shdolphinscheduler_env.sh

  • 修改 install_env.sh 文件

  • 文件 install_env.sh 描述了哪些机器将被安装 DolphinScheduler 以及每台机器对应安装哪些服务。您可以在路径 bin/env/install_env.sh 中找到此文件,可通过以下方式更改env变量,export <ENV_NAME>=,配置详情如下。

ips="hadoop5.changhongit.com,hadoop6.changhongit.com,hadoop7.changhongit.com"
sshPort="22"
masters="hadoop5.changhongit.com,hadoop6.changhongit.com"
workers="hadoop5.changhongit.com:default,hadoop6.changhongit.com:default,hadoop7.changhongit.com:default"
alertServer="hadoop5.changhongit.com"
apiServers="hadoop5.changhongit.com,hadoop6.changhongit.com"
installPath="/usr/local/dolphinscheduler3.1.7"
deployUser="ds"
zkRoot=${zkRoot:-"/dolphinscheduler"}
  • 初始化元数据

# 切换到apache-dolphinscheduler-3.1.7-bin目录下,执行命令
# 初始化数据库元数据
sh ./tools/bin/upgrade-schema.sh

1.6 安装DolphinScheduler

使用上面创建的部署用户运行以下命令完成部署,部署后的运行日志将存放在 安装目录下的logs 文件夹内

在apache-dolphinscheduler-3.1.7-bin目录下执行
 sh ./bin/install.sh

1.7 登录 DolphinScheduler

浏览器访问地址 http://localhost:12345/dolphinscheduler/ui 即可登录系统UI。默认的用户名和密码是 admin/dolphinscheduler123

1.8 启停命令

# 一键停止集群所有服务
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 start worker-server
bash ./bin/dolphinscheduler-daemon.sh stop worker-server
# 启停 Api
bash ./bin/dolphinscheduler-daemon.sh start api-server
bash ./bin/dolphinscheduler-daemon.sh stop api-server
# 启停 Alert
bash ./bin/dolphinscheduler-daemon.sh start alert-server
bash ./bin/dolphinscheduler-daemon.sh stop alert-server

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值