DolphinScheduler安装部署并使用「详细」

admin 2025-03-07 111人围观 ,发现91个评论

ApacheDolphinScheduler是一个分布式易扩展的可视化DAG工作流任务调度开源系统。解决数据研发ETL错综复杂的依赖关系,不能直观监控任务健康状态等问题。DolphinScheduler以DAG流式的方式将Task组装起来,可实时监控任务的运行状态,同时支持重试、从指定节点恢复失败、暂停及Kill任务等操作。具有如下特性:

简单易用

DAG监控界面,所有流程定义都是可视化,通过拖拽任务定制DAG,通过API方式与第三方系统对接,一键部署

高可靠性

去中心化的多Master和多Worker,自身支持HA功能,采用任务队列来避免过载,不会造成机器卡死

丰富的使用场景

支持暂停恢复操作.支持多租户,更好的应对大数据的使用场景.支持更多的任务类型,如spark,hive,mr,python,sub_process,shell

高扩展性

支持自定义任务类型,调度器使用分布式调度,调度能力随集群线性增长,Master和Worker支持动态上下线

本文讲解的是单机安装,并且使用,通过以下目录展开:

1、基础软件的安装

1.1系统最小化安装系统基础设置

1.2安装配置java

1.3安装zookeeper

1.4安装编译python3环境

1.5安装mysql

1.6安装datax

2、安装海豚dolphinscheduler系统调度

3、系统调度快速上手

4、项目案例

4.1shell案例

4.2python案例

1、基础软件的安装

主机名

系统

CPU

内存

磁盘

应用

Dolphinschedulerpro

8

32

50G+500G

dolphinscheduler

需要安装的软件有:java,zookeeper,python3及相关依赖包,mysql,datzx,dolphinscheduler

1.1系统安装最小化安装,可以看我之前的文章系统基础设置

编辑配置文件/etc/selinux/config,关闭selinux

SELINUX=disabled

编辑配置文件/etc/security/,末尾添加:

*softnoproc10240*hardnoproc10240*softnofile10240*hardnofile10240

防火墙策略设置

firewall-cmd--zone=public--add-rich-rule'rulefamily="ipv4"portport=12345protocol=tcpaccept'--permanentfirewall-cmd--reload

1.2安装配置java

下载JDK并解压到/usr/local

vi/etc/profile

JAVA_HOME=/usr/local/_241JRE_HOME=$JAVA_HOME/jreCLASSPATH=.:$JAVA_HOME/lib/:$JAVA_HOME/lib/:$JRE_HOME/libPATH=$PATH:$JAVA_HOME/binexportPATHJAVA_HOMEJRE_HOMECLASSPATH

source/etc/profile//使配置文件生效

java–version//查看是否安装正确

1.3安装zookeeper

将安装包解压到/usr/local/src/目录下

cd/usr/local/src//bin

.///启动服务

netstat–natp|grep2181

1.4安装编译python3环境

yuminstall-ygccpatchlibffi-develpython-develzlib-develbzip2-developenssl-develncurses-develsqlite-develreadline-develtk-develgdbm-develdb4-devellibpcap-develxz-devel./configure--prefix=/usr/local/python3613makemakeinstallmv/usr/bin/python/usr/bin/python27mv/usr/bin/pip/usr/bin/pip27ln-sf/usr/local/python3613/bin/python3/usr/bin/pythonln-sf/usr/local/python3613/bin/pip3/usr/bin/pipln-sf/usr/local/python3613/bin/python3/usr/bin/python3ln-sf/usr/local/python3613/bin/pip3/usr/bin/pip3vi/usr/bin/yum//编辑,更改python2的运行环境vi/usr/libexec/urlgrabber-ext-down//编辑,更改python2的运行环境安装cx_oracle模块,连接oracle驱动pipinstallcx_oracle-i;/etc//

1.5安装mysql

将安装包解压到安装目录

./mysql_install_db--basedir=/usr/local/src/mysql--datadir=/home/mysqldata--user=mysql

编辑配置文件vi/etc/

[client]port=3306default-character-set=utf8[mysqld]character-set-server=utf8lower_case_table_names=1sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'skip-name-resolvemax_allowed_packet=256MDefaultsrequirett/g'/etc/sudoerschown-Rdolphinscheduler:dolphinscheduler/opt/dolphinscheduler/dolphinscheduler-bin

2.3创建免密登陆

su-dolphinschedulerssh-keygen-trsa-P''-f~/.ssh/id_rsacat~/.ssh/id_~/.ssh/authorized_keyschmod600~/.ssh/authorized_keys

2.4数据库初始化

mysql-uroot-pmysqlCREATEDATABASEdolphinschedulerDEFAULTCHARACTERSETutf8DEFAULTCOLLATEutf8_general_ci;mysqlGRANTALLPRIVILEGESONdolphinscheduler.*TO'{user}'@'%'IDENTIFIEDBY'{password}';mysqlGRANTALLPRIVILEGESONdolphinscheduler.*TO'{user}'@'localhost'IDENTIFIEDBY'{password}';mysqlflushprivileges;

创建表和导入基础数据,编辑配置文件viconf/

shscript///执行数据库导入脚本

2.5修改运行参数

sudoln-s/opt/soft/java/bin/java/usr/bin/java

2.6修改一键部署配置文件conf/config/install_中的各参数,特别注意以下参数的配置

catconfig/install_|grep-v'-*-coding:utf-8-*-importoslogfile="/home/dolphinschedulerdata/xiangmuzuhu01/resources/pythonlog/"print(logfile)withopen(logfile,"a")asf:("python001.。。。。。。。。。。。。。\n")

-*-coding:utf-8-*-importoslogfile="/home/dolphinschedulerdata/xiangmuzuhu01/resources/pythonlog/"print(logfile)withopen(logfile,"a")asf:("python03.。。。。。。。。。。。。。\n")

工作流上线运行,实时查看是否执行:

数据源:

数据源的创建可以通过admin创建统一的,然后进行授权给其他用户。当然一般不同项目单独创建数据源可能是比较好管理和区分。

普通用户可以查看自己创建的和通过授权的数据源

猜你喜欢
    不容错过