任务调度器-DolphinScheduler3集群安装

【背景】

    我本身是从事大数据开发工作的,在一些外部项目或者一些不太成熟的公司,是没有任务调度器可用的,之前mysql存储过程用自带的event事件调度,一般抽数用Kettle+crontab调度,虽然也可以用,但这些调度器没有可视化界面,查询日志、任务进度、补数都不太好用,后面接触到了DolphinScheduler,这款调度器开源免费,支持关系数据库调度、Hive、Spark、Flink、Shell、Datax、任务依赖、ClickHouse等,支持告警,反正你能用到的基本上都支持了,用后爱不释手,强烈推荐给各位大佬~

    这篇文章是事后很久的一篇整理文章,当时安装时忘记截图了,所以里面用了官网上的一些图片。

 

    支持的任务类型如下,非常全:

任务调度器-DolphinScheduler3集群安装_第1张图片

任务调度器-DolphinScheduler3集群安装_第2张图片

 

 支持工作量DGA 配置 

任务调度器-DolphinScheduler3集群安装_第3张图片

 

【正文】

一、安装前准备工作

1.依赖组件安装

  • JDK1.8+
  • Mysql5.7+
  • Zookeeper3.4.6+ 

有过几年开发部署经验的人应该对这些组件都很熟悉了,安装过程网上随便一搜一大把,就不一一列出了。

 

2.服务器分配

服务器 安装的组件 备注
192.168.0.1

master-server

alter-server

api-server

Mysql5.7

zookeeper

 
192.168.0.2

worker-server

zookeeper

 
192.168.0.3

worker-server

zookeeper

 

 

3.新建用户dolphinscheduler,并配置sudo权限,服务器之间做免密,因为后面要远程安装

 

二、模块介绍

  • dolphinscheduler-master master模块,提供工作流管理和编排服务。
  • dolphinscheduler-worker worker模块,提供任务执行管理服务。
  • dolphinscheduler-alert 告警模块,提供 AlertServer 服务。
  • dolphinscheduler-api web应用模块,提供 ApiServer 服务。

 

三、下载

地址:https://dolphinscheduler.apache.org/zh-cn/download/deployment?t=standalone

 选择最新的版本下载,3.x目前已经很稳定了,我最开始用3.0.1,被坑了很多回。

任务调度器-DolphinScheduler3集群安装_第4张图片

 

四、修改配置文件

 把下载的安装包上传到其中一台服务器解压并配置,安装时会把对应的组件远程安装到其它服务器。

修改 install_env.sh 文件

# ---------------------------------------------------------
# INSTALL MACHINE
# ---------------------------------------------------------
# Due to the master, worker, and API server being deployed on a single node, the IP of the server is the machine IP or localhost
ips="192.168.0.1,192.168.0.2,192.168.0.3"
sshPort="22"
masters="192.168.0.1"
workers="192.168.0.2:default,192.168.0.3:default"
alertServer="192.168.0.1"
apiServers="192.168.0.1"

# DolphinScheduler installation path, it will auto-create if not exists
installPath=~/dolphinscheduler

# Deploy user, use the user you create in section **Configure machine SSH password-free login**
deployUser="dolphinscheduler"

修改 dolphinscheduler_env.sh 文件

# JAVA_HOME, will use it to start DolphinScheduler server
export JAVA_HOME=${JAVA_HOME:-/datajava}

# Database related configuration, set database type, username and password
export DATABASE=${DATABASE:-mysql}
export SPRING_PROFILES_ACTIVE=${DATABASE}
export SPRING_DATASOURCE_URL="jdbc:mysql://xxx.xxx.xxx.xxx:3306/dolphinscheduler"
export SPRING_DATASOURCE_USERNAME=xxxxxx
export SPRING_DATASOURCE_PASSWORD=xxxxxx

# 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:-192.168.0.1:2181,192.168.0.2:2181,192.168.0.3:2181}

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

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:$PATH

五、初始化数据库

1.上传mysql-connect-java.jar包

下载 mysql-connector-java 驱动 (8.0.16) 并移动到 DolphinScheduler 的每个模块的 libs 目录下,其中包括 api-server/libs 和 alert-server/libs 和 master-server/libs 和 worker-server/libs

2.创建数据库

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;

 3.初始化数据库

./tools/bin/upgrade-schema.sh

 

六、启动安装

执行以下命令,等待执行完成,所有的服务器就都安装好了,非常方便

./bin/install.sh

 

七、启动集群

 一键开启集群所有服务


./bin/start-all.sh

停止集群的命令如下

./bin/stop-all.sh

 

八、登录 DolphinScheduler

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

任务调度器-DolphinScheduler3集群安装_第5张图片

 任务调度器-DolphinScheduler3集群安装_第6张图片

 

 

你可能感兴趣的:(任务调度器,大数据,任务调度器)