本文将带你一步步通过外部 PostgreSQL 和 Zookeeper 来启动 Apache DolphinScheduler。无论你是新手还是有经验的开发者,都能轻松跟着这些步骤在 Linux/Unix 环境中完成安装和配置。除了常见的安装步骤,我们还会分享一些集群部署的技巧,让你轻松扩展系统规模。
当然,如果遇到数据库连接、Zookeeper 连接或者启动服务的问题,不用担心,文中也有详细的排查方案,帮你轻松搞定!
系统要求
准备工作
安装和配置 PostgreSQL
# 安装PostgreSQL (以CentOS为例)
sudo yum install -y postgresql-server postgresql-contrib
# 初始化数据库
sudo postgresql-setup initdb
# 启动服务
sudo systemctl start postgresql
sudo systemctl enable postgresql
# 创建DolphinScheduler数据库和用户
sudo -u postgres psql -c "CREATE USER dolphinscheduler WITH PASSWORD 'yourpassword';"
sudo -u postgres psql -c "CREATE DATABASE dolphinscheduler OWNER dolphinscheduler;"
sudo -u postgres psql -c "GRANT ALL PRIVILEGES ON DATABASE dolphinscheduler TO dolphinscheduler;"
# 修改pg_hba.conf配置
sudo vi /var/lib/pgsql/data/pg_hba.conf
# 添加或修改以下行:
host all all 0.0.0.0/0 md5
# 修改postgresql.conf配置
sudo vi /var/lib/pgsql/data/postgresql.conf
# 修改listen_addresses为:
listen_addresses = '*'
# 重启PostgreSQL
sudo systemctl restart postgresql
复制代码
安装和配置 Zookeeper
# 下载Zookeeper
wget https://downloads.apache.org/zookeeper/zookeeper-3.7.1/apache-zookeeper-3.7.1-bin.tar.gz
tar -xzf apache-zookeeper-3.7.1-bin.tar.gz
mv apache-zookeeper-3.7.1-bin /opt/zookeeper
# 配置Zookeeper
cd /opt/zookeeper/conf
cp zoo_sample.cfg zoo.cfg
vi zoo.cfg
# 修改数据目录和添加服务器配置(如果是集群)
dataDir=/opt/zookeeper/data
# 单机模式不需要修改server配置
# 创建数据目录
mkdir /opt/zookeeper/data
# 启动Zookeeper
/opt/zookeeper/bin/zkServer.sh start
复制代码
安装和配置 DolphinScheduler 3.1.9
下载和解压
wget https://downloads.apache.org/dolphinscheduler/3.1.9/apache-dolphinscheduler-3.1.9-bin.tar.gz
tar -xzf apache-dolphinscheduler-3.1.9-bin.tar.gz
mv apache-dolphinscheduler-3.1.9-bin /opt/dolphinscheduler
复制代码
修改配置文件修改 common.properties
vi /opt/dolphinscheduler/conf/common.properties
复制代码
修改以下配置:
# 数据库配置
spring.datasource.driver-class-name=org.postgresql.Driver
spring.datasource.url=jdbc:postgresql://your-postgresql-server:5432/dolphinscheduler
spring.datasource.username=dolphinscheduler
spring.datasource.password=yourpassword
# Zookeeper配置
registry.plugin.name=zookeeper
registry.plugin.type=zookeeper
registry.servers=your-zookeeper-server:2181
复制代码
修改环境变量(可选)
vi /opt/dolphinscheduler/conf/env/dolphinscheduler_env.sh
复制代码
添加或修改 Java 环境变量:
export JAVA_HOME=/usr/java/jdk1.8.0_291
export PATH=$JAVA_HOME/bin:$PATH
复制代码
初始化数据库
/opt/dolphinscheduler/script/create-dolphinscheduler.sh
复制代码
启动服务启动 Master Server
/opt/dolphinscheduler/bin/dolphinscheduler-daemon.sh start master-server
复制代码
启动 Worker Server
/opt/dolphinscheduler/bin/dolphinscheduler-daemon.sh start worker-server
复制代码
启动 API Server
/opt/dolphinscheduler/bin/dolphinscheduler-daemon.sh start api-server
复制代码
启动 Alert Server
/opt/dolphinscheduler/bin/dolphinscheduler-daemon.sh start alert-server
复制代码
验证安装
检查进程状态:
ps -ef | grep dolphinscheduler
复制代码
访问 Web UI: 默认端口:12345 访问 URL:http://your-server-ip:12345/dolphinscheduler 默认用户名/密码:admin/dolphinscheduler123
集群部署指南
集群模式部署步骤
如果需要部署为集群模式,需要按照以下步骤进行操作:
多节点部署 Worker Server
节点要求
示例部署方案
安装注意事项 1. 在每个节点上执行相同的安装脚本 2. 确保所有节点的安装路径一致 3. 检查各节点间的网络连通性(建议使用 ping/telnet 测试)
配置 registry.servers
详细配置步骤
修改所有节点上的common.properties
配置文件
文件路径:/opt/your_app/conf/common.properties
将registry.servers
设置为 Zookeeper 集群地址
格式示例:
registry.servers=zk1:2181,zk2:2181,zk3:2181
复制代码
配置验证
使用 zkCli.sh 连接 Zookeeper 验证配置是否正确
./zkCli.sh -server zk1:2181
复制代码
检查节点注册情况:
时间同步配置
详细时间同步方案
所有节点必须保持时间同步(误差不超过 1 秒),建议配置如下:
NTP 服务配置步骤
安装 NTP 服务:
配置 NTP 服务器(以阿里云 NTP 为例):
设置自动同步:
# 设置开机启动
systemctl enable ntpd
# 启动服务
systemctl start ntpd
复制代码
验证时间同步:
备选时间同步方案
如果无法连接外网 NTP 服务器,可配置内网时间服务器:
指定一台服务器作为时间服务器
其他节点同步该服务器时间
配置示例:
时间同步注意事项
*/5 * * * * /usr/sbin/ntpdate ntp.aliyun.com >/dev/null 2>&1
复制代码
常见问题解决方案
数据库连接失败排查
PostgreSQL 远程连接配置
host all all 0.0.0.0/0 md5
复制代码
验证凭据
psql -h [host] -U [username] -d [database]
复制代码
防火墙检查
firewall-cmd --zone=public --add-port=5432/tcp --permanent
firewall-cmd --reload
复制代码
Zookeeper 连接问题排查
基础连接测试
使用 telnet 测试连接:
* telnet your-zookeeper-server 2181
复制代码
* 成功应显示"Connected to your-zookeeper-server"
复制代码
日志检查
查看 Zookeeper 日志:
tail -f /var/log/zookeeper/zookeeper.log
复制代码
* 常见问题:
* 磁盘空间不足
* 内存配置过低
* 集群节点未正确配置
复制代码
服务启动失败排查
日志分析
检查主日志文件:
tail -n 100 /opt/dolphinscheduler/logs/dolphinscheduler-api.log
复制代码
/opt/dolphinscheduler/logs/
├── dolphinscheduler-alert-server.log
├── dolphinscheduler-api-server.log
├── dolphinscheduler-master-server.log
└── dolphinscheduler-worker-server.log
复制代码
Java 环境验证
检查 Java 版本:
- 要求:JDK 1.8+
- 检查JAVA_HOME配置:
复制代码
端口冲突检查
查看端口使用情况:
netstat -tunlp | grep [port]
复制代码
- 默认端口:
* Master Server: 5678
* Worker Server: 1234
* API Server: 12345
复制代码
原文链接:https://blog.csdn.net/NIIT0532/article/details/149217318
评论