伪集群部署

    如果你是新手,想要体验 DolphinScheduler 的功能,推荐使用Standalone方式体检。如果你想体验更完整的功能,或者更大的任务量,推荐使用。如果你是在生产中使用,推荐使用集群部署或者

    伪分布式部署 DolphinScheduler 需要有外部软件的支持

    • 二进制包:在下载页面下载 DolphinScheduler 二进制包
    • 数据库:PostgreSQL (8.2.15+) 或者 MySQL (5.7+),两者任选其一即可,如 MySQL 则需要 JDBC Driver 8.0.16
    • 注册中心:ZooKeeper (3.4.6+),
    • 进程树分析
      • macOS安装
      • Fedora/Red/Hat/CentOS/Ubuntu/Debian安装psmisc

    准备 DolphinScheduler 启动环境

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

    • 因为任务执行服务是以 sudo -u {linux-user} 切换不同 linux 用户的方式来实现多租户运行作业,所以部署用户需要有 sudo 权限,而且是免密的。初学习者不理解的话,完全可以暂时忽略这一点
    • 如果发现 /etc/sudoers 文件中有 “Defaults requirett” 这行,也请注释掉

    由于安装的时候需要向不同机器发送资源,所以要求各台机器间能实现SSH免密登陆。配置免密登陆的步骤如下

    1. su dolphinscheduler
    2. cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
    3. chmod 600 ~/.ssh/authorized_keys

    进入 zookeeper 的安装目录,将 zoo_sample.cfg 配置文件复制到 conf/zoo.cfg,并将 conf/zoo.cfg 中 dataDir 中的值改成 dataDir=./tmp/zookeeper

    DolphinScheduler 元数据存储在关系型数据库中,目前支持 PostgreSQL 和 MySQL,如果使用 MySQL 则需要手动下载 (5.1.47+) 并移动到 DolphinScheduler 的 lib目录下。下面以 MySQL 为例,说明如何初始化数据库

    1. mysql -uroot -p
    2. mysql> CREATE DATABASE dolphinscheduler DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
    3. # 修改 {user} 和 {password} 为你希望的用户名和密码
    4. mysql> GRANT ALL PRIVILEGES ON dolphinscheduler.* TO '{user}'@'localhost' IDENTIFIED BY '{password}';

    NOTICE: 最新版本目前通过运行命令 sh script/create-dolphinscheduler.sh 初始化数据库的方式暂不可用,我们创建了一个issue-6597 去追踪并修复这个问题。

    完成了基础环境的准备后,在运行部署命令前,还需要根据环境修改配置文件。配置文件在路径在conf/config/install_config.conf下,一般部署只需要修改INSTALL MACHINE、DolphinScheduler ENV、Database、Registry Server部分即可完成部署,下面对必须修改参数进行说明

    启动 DolphinScheduler

    使用部署用户运行一下命令完成部署,部署后的运行日志将存放在 logs 文件夹内

    1. sh install.sh

    启停服务

    注意::服务用途请具体参见《系统架构设计》小节