承接上一篇《分布式调度系统Apache DolphinScheduler系列(四)配置datax的增量同步》,这篇文章我们介绍下在DolphinScheduler上配置文件存储。
还记得在DolphinScheduler上有一个资源中心的模块吗? 其实这里主要是运行一些第三方包,我们首先需要先把包上传到调度系统里面去,然后使用调度系统去执行相关的job任务。所以这里我们把自己开发的java程序jar包需要上传到这里的资源中心上。
但是在上传的时候,我们需要提前先配置文件存储,这里DolphinScheduler调度系统支持的文件存储系统有:本地文件,hdfs,s3,minio等等。这里的话我们大部分都是使用hdfs系统,因此这里的话,我们演示下配置hdfs文件系统。
一、准备一个hadoop单机/集群环境
既然我们首先需要使用hdfs分布式文件系统,那么我们肯定是需要一个hadoop环境的,因此这里安装部署hadoop的话,可以参考《Hadoop安装配置篇(一)Hadoop3.3.5单机版安装教程》这篇文章。
除了准备一个hadoop环境之外,这里还有个小细节,就是DolphinScheduler这里的话,与hdfs打交道使用的用户是hdfs这个用户,为了避免用户授权,所以这里我们需要把hadoop的hdfs鉴权给关闭掉,参考下这篇文章《Hadoop安装配置篇(二)配置hadoop关闭掉hdfs权限验证》。
二、配置DolphinScheduler的文件存储
这里我们进入到DolphinScheduler的安装文件目录,然后找到这两个文件夹:
#找到api-server的配置文件夹 /home/pubserver/dolphinscheduler/api-server/conf #找到worker的配置文件夹 /home/pubserver/dolphinscheduler/worker-server/conf
这两个文件夹下都有一个共同的common.properties文件,我们主要修改的就是这两个目录下的common.properties文件,修改项如下:
resource.storage.type=HDFS resource.storage.upload.base.path=/tmp/dolphinscheduler resource.hdfs.fs.defaultFS=hdfs://192.168.31.218:8020
只需要修改上面三项就可以了。
备注:
1、这里的api-server/conf下的common.properties文件需要修改这三项
2、这里的worker-server/conf下的common.properties文件也需要修改这三项
修改完毕之后,我们记得重新执行install命名,把DolphinScheduler分发到各个节点上
#进入到DolphinScheduler的bin目录下 cd /home/pubserver/dolphinscheduler/bin #执行安装命令,分发最新的配置 ./install.sh
等待DolphinScheduler启动完成之后,各节点上的DolphinScheduler的配置就是最新的了。
三、为DolphinScheduler用户配置租户
在DolphinScheduler上,有两种用户,一种是dashboard上登录的用户,一种是linux上作为任务执行的角色用户(这类用户称为租户)。
这里我们登录下DolphinScheduler的dashboard,然后依次点击:安全中心-用户管理->用户修改
点击之后,我们为当前的用户绑定一个租户
备注:
1、这里的租户是选择的,如果没有可选项,则进入到租户管理里面进行创建即可。
四、资源中心,文件上传
以上我们所有的配置都配置完了,接着我们演示下资源中心的文件上传。
首先我们可以创建一个文件夹
点击确定之后,就可以在hdfs上看到对应的文件夹了,例如这里我们创建一个名称为bbb的文件夹,那么在hdfs的这个路径下:
/tmp/dolphinscheduler/tennant-datax/resources
可以看到一个bbb的文件夹
备注:
1、这个路径里面的tennant-datax,代表的是租户的名称,不同租户,这里的路径也是不一样的。
接着我们上传一个文件到bbb文件夹下
上传完成之后,在hdfs上的bbb文件夹下就会有一个111.txt的文件,如下图:
以上就是配置DolphinScheduler的资源中心,文件存储的详细配置演示。大家可以尝试一下。
最后补充一下:
1、如果要修改DolphinScheduler的配置,我们建议在安装文件里面进行安装,安装之后,重新执行install命令分发给所有节点,这样可以避免挨个服务器上去改配置文件。
2、这里的安装文件不是实际运行的/tmp/dolphinScheduler目录,所以一定要注意下这个问题。
还没有评论,来说两句吧...