DolphinScheduler1.2.0部署参数分析
本⽂章经授权转载
1
组件介绍
Apache Dolphin Scheduler是⼀个分布式易扩展的可视化DAG⼯作流任务调度系统。致⼒于解决数据处理流程中错综复杂的依赖关系,使调度系统在数据处理流程中开箱即⽤。
官⽹
github
2
ds-1.2.0 ⽬录解读
(讲解配置⽂件的作⽤,具体配置在install.sh部署⽂件中完成)
bin 启动脚本
conf 配置⽂件
lib ds依赖的jar包
script 数据库创建升级脚本,部署分发脚本
sql ds的元数据创建升级sql⽂件
install.sh 部署ds主要的配置⽂件修改处
bin
bin⽬录下⽐较重要的是dolphinscheduler-daemon⽂件,之前版本中极容易出现的不到jdk问题来源,当前版本的jdk已经export了本机的$JAVA_HOME,再也不⽤担⼼不到jdk了。
conf
⾮常重要的配置⽂件⽬录
⾮常重要的配置⽂件⽬录
⾮常重要的配置⽂件⽬录
env⽬录下的.dolphinscheduller_env.sh⽂件中记录了所有跟ds-task相关的环境变量,1.2.0版本的Spark不具备指定Spark版本的功能,可以注释掉SPARK_HOME1或者将SPARK_HOME1和SPARK_HOME2均配置为集中的Spark2。下⾯给出CDH中的配置,测试环境中没有部署Flink,请忽略Flink的配置。
(特别注意这个隐藏⽂件,需要ls -al)
export HADOOP_HOME=/opt/cloudera/parcels/CDH/lib/hadoop
export HADOOP_CONF_DIR=/opt/cloudera/parcels/CDH/lib/hadoop/etc/hadoop
#可以注释掉,也可以配置为SPARK_HOME2
#export SPARK_HOME1=/opt/cloudera/parcels/SPARK2/lib/spark2
export SPARK_HOME2=/opt/cloudera/parcels/SPARK2/lib/spark2
export PYTHON_HOME=/usr/local/anaconda3/bin/python
export JAVA_HOME=/usr/java/jdk1.8.0_131
export HIVE_HOME=/opt/cloudera/parcels/CDH/lib/hive
export FLINK_HOME=/opt/soft/flink
export PATH=$HADOOP_HOME/bin:$SPARK_HOME1/bin:$SPARK_HOME2/bin:$PYTHON_HOME:$JAVA_HOME/bin:$HIVE_HOME/bin:$PATH:$FLINK_HOME/
common⽬录
common.properies
ds的task队列实现⽅式,默认是zookeeper
ds的task和资源的worker执⾏路径
资源中⼼
资源中⼼可选择HDFS,S3和服务器本地存储
资源⽂件类型
kerberos
开发状态
开发测试可以开启,⽣产环境建议设置为false
ds的环境变量配置,本地调试的时候,需要保证v.path存在
hadoop.properties
hdfs namenode配置
单点可以直接写namenode的ip
hdfsHA需要将集的l和l⽂件拷贝到ds的conf⽬录下
s3配置
yarn resourcemanager配置
yarn.application.status.address - yarn单点
config⽬录
f
ds的安装路径
部署⽤户
部署ds的机器组ip
f
指定masters,workers,alertServer,apiServer部署在哪些机器上
alert.properties
邮件告警配置
excel下载⽬录
企业配置
application-api.properties
apiserver端⼝,上下⽂,⽇志等
application-dao.properties
mysql下载后的初次使用
敲⿊板,重点ds的元数据库配置,在ds-1.2.0中默认的数据库是pg,如果要使⽤mysql,需要将mysql的jdbc包放到lib⽬录下。
ds元数据库配置
master.properties
master执⾏线程数
master并⾏任务上限
master资源CPU和内存阈值,超出阈值不会进⾏dag切分
worker.properties
worker执⾏线程数
worker⼀次提交任务数
worker资源CPU和内存阈值,超出不会去task队列拉取task
zookeeper.properties
zk集
ds所需zk的znode,包含dag和task的分布式锁和master和worker的容错
quartz.properties
ds的定时由quartz框架完成,特别注意⾥边有quartz的数据库配置
quartz的基本属性,线程池和job配置
quartz元数据库配置
3
install.sh详解
install.sh部署脚本是ds部署中的重头戏,下⾯将参数分组进⾏分析。
数据库配置
# for example postgresql or mysql ...
dbtype="postgresql"
# db config
# db address and port
dbhost=":5432"
# db name
dbname="dolphinscheduler"
# db username
username="xx"
# db passwprd
# Note: if there are special characters, please use the \ transfer character to transfer
passowrd="xx"
dbtype参数可以设置postgresql和mysql,这⾥指定了ds连接元数据库的jdbc相关信息
部署⽤户&⽬录
# conf/config/f config
# Note: the installation path is not the same as the current path (pwd)
installPath="/data1_1T/dolphinscheduler"
# deployment user
# Note: the deployment user needs to have sudo privileges and permissions to operate hdfs. If hdfs is enabled, the root directory needs to be created by itself deployUser="dolphinscheduler"
installPath是安装路径,在执⾏install.sh之后,会把ds安装到指定⽬录,如/opt/ds-agent。installPath不要和当前要⼀键安装的install.sh是同⼀⽬录。
deployUser是指ds的部署⽤户,该⽤户需要在部署ds的机器上打通sudo免密,并且需要具有操作hdfs的权限,建议挂到hadoop的supergroup组下。
zk集&⾓⾊指定
配置zk集的时候,特别注意:要⽤ip:2181的⽅式配置上去,⼀定要把端⼝带上。
ds⼀共包括master worker alert api四种⾓⾊,其中alert api只需指定⼀台机器即可,master和worker可以部署多态机器。下⾯的例⼦就是在4台机器中,部署2台master,2台worker,1台alert,1台api
ips参数,配置所有需要部署机器的hostname
masters,配置部署master机器的hostname
workers,配置部署worker机器的hostname
alertServer,配置部署alert机器的hostname
apiServers,配置部署api机器的hostname
(前提在部署机器上已经设置好hostname)

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。