国产牛逼系列 dolphinscheduler
文章目录
1 调度工具对比
以往使用 azkaban 虽然并发够,但是面临运维问题也很大。
1 大半夜 调度任务挂了,酸爽了,半夜调度的同学起来手工调度。恶心的不行。 日志需要配置收集、配置显示错误、配置3次重试。等等等。 当任务达到上千个时候,web 都恶心的不行 (大数据中心对接 十几个数据部门,还有乱用的在 azkaban 上读写日志的)
2 大半夜 调度程序挂了(太多任务、太多线程资源占用) ,azkaban 没办法自动重启,只能手动注册 exec。

话不多说 直接开干
安装包部分
老规矩 为防止网不好的同学下载不了, 1 积分 提供下载。
mysql-connector-java-5.1.47.jar // 该文件放入 lib 下
下载地址:https://download.csdn.net/download/cs261244787/19698451
apache-dolphinscheduler-incubating-1.3.4-dolphinscheduler-bin.tar.gz
下载地址:https://download.csdn.net/download/cs261244787/19698494
mysql 5.7
基础搭建
CREATE DATABASE dolphinscheduler DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
GRANT ALL PRIVILEGES ON dolphinscheduler.* TO ‘dolphinscheduler’@’%’ IDENTIFIED BY ‘rockDophinScheduler’;
GRANT ALL PRIVILEGES ON dolphinscheduler.* TO ‘dolphinscheduler’@‘localhost’ IDENTIFIED BY ‘rockDophinScheduler’;
flush privileges;
解压缩,重命名
tar -zxvf apache-dolphinscheduler-incubating-1.3.4-dolphinscheduler-bin.tar.gz
mv apache-dolphinscheduler-incubating-1.3.4-dolphinscheduler-bin dolphinscheduler-1.3.4
mysql 依赖 ip 改一下,注释源 postgresql
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://{IP}:3306/dolphinscheduler?useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true
spring.datasource.username=dolphinscheduler
spring.datasource.password=rockDophinScheduler

运行 MySQL 初始化脚本
要赋权
chmod +x script/create-dolphinscheduler.sh
./script/create-dolphinscheduler.sh
运行环境
export HADOOP_HOME=/usr/local/application/hadoop
export SPARK_HOME=/usr/local/application/spark
export JAVA_HOME=/usr/local/application/jdk
export HIVE_HOME=/usr/local/application/hive

jdk 软连
sudo ln -s /usr/local/application/jdk /usr/bin/java
修改一键部署配置文件 conf/config/install_config.conf
改动挺多的,参考注释去改
# 这里填 mysql or postgresql
dbtype="mysql"
# 数据库连接地址
dbhost="192.168.xx.xx:3306"
# 数据库名
dbname="dolphinscheduler"
# 数据库用户名,此处需要修改为上面设置的{user}具体值
username="xxx"
# 数据库密码, 如果有特殊字符,请使用\转义,需要修改为上面设置的{password}具体值
password="xxx"
#Zookeeper地址
zkQuorum="192.168.xx.xx:2181,192.168.xx.xx:2181,192.168.xx.xx:2181"
#将DS安装到哪个目录,如: /opt/soft/dolphinscheduler,不同于现在的目录
installPath="/opt/soft/dolphinscheduler"
#使用哪个用户部署,使用第3节创建的用户
deployUser="dolphinscheduler"
# 邮件配置,以qq邮箱为例
# 邮件协议
mailProtocol="SMTP"
# 邮件服务地址
mailServerHost="smtp.qq.com"
# 邮件服务端口
mailServerPort="25"
# mailSender和mailUser配置成一样即可
# 发送者
mailSender="xxx@qq.com"
# 发送用户
mailUser="xxx@qq.com"
# 邮箱密码
mailPassword="xxx"
# TLS协议的邮箱设置为true,否则设置为false
starttlsEnable="true"
# 开启SSL协议的邮箱配置为true,否则为false。注意: starttlsEnable和sslEnable不能同时为true
sslEnable="false"
# 邮件服务地址值,参考上面 mailServerHost
sslTrust="smtp.qq.com"
# 业务用到的比如sql等资源文件上传到哪里,可以设置:HDFS,S3,NONE,单机如果想使用本地文件系统,请配置为HDFS,因为HDFS支持本地文件系统;如果不需要资源上传功能请选择NONE。强调一点:使用本地文件系统不需要部署hadoop
resourceStorageType="HDFS"
#如果上传资源保存想保存在hadoop上,hadoop集群的NameNode启用了HA的话,需要将hadoop的配置文件core-site.xml和hdfs-site.xml放到安装路径的conf目录下,本例即是放到/opt/soft/dolphinscheduler/conf下面,并配置namenode cluster名称;如果NameNode不是HA,则只需要将mycluster修改为具体的ip或者主机名即可
defaultFS="hdfs://mycluster:8020"
# 如果没有使用到Yarn,保持以下默认值即可;如果ResourceManager是HA,则配置为ResourceManager节点的主备ip或者hostname,比如"192.168.xx.xx,192.168.xx.xx";如果是单ResourceManager请配置yarnHaIps=""即可
yarnHaIps="192.168.xx.xx,192.168.xx.xx"
# 如果ResourceManager是HA或者没有使用到Yarn保持默认值即可;如果是单ResourceManager,请配置真实的ResourceManager主机名或者ip
singleYarnIp="yarnIp1"
# 资源上传根路径,主持HDFS和S3,由于hdfs支持本地文件系统,需要确保本地文件夹存在且有读写权限
resourceUploadPath="/data/dolphinscheduler"
# 具备权限创建resourceUploadPath的用户
hdfsRootUser="hdfs"
#在哪些机器上部署DS服务,本机选localhost
ips="ds1,ds2,ds3,ds4"
#ssh端口,默认22
sshPort="22"
#master服务部署在哪台机器上
masters="ds1,ds2"
#worker服务部署在哪台机器上,并指定此worker属于哪一个worker组,下面示例的default即为组名
workers="ds3:default,ds4:default"
#报警服务部署在哪台机器上
alertServer="ds2"
#后端api服务部署在在哪台机器上
apiServers="ds1"
如果需要用资源上传到Hadoop集群功能, 并且Hadoop集群的NameNode 配置了 HA的话 ,需要开启 HDFS类型的资源上传,同时需要将Hadoop集群下的core-site.xml和hdfs-site.xml复制到/opt/dolphinscheduler/conf,非NameNode HA跳过次步骤
启动一键部署

JPS 检查一下服务在不在
MasterServer ----- master服务
WorkerServer ----- worker服务
LoggerServer ----- logger服务
ApiApplicationServer ----- api服务
AlertServer ----- alert服务

登录系统
http://192.168.xx.xx:12345/dolphinscheduler
账号 admin
密码 dolphinscheduler123
还挺好看的哈。 炫酷
