任务调度大数据后端前端【免费下载链接】dolphinschedulerApache DolphinScheduler is the modern data orchestration platform. Agile to create high performance workflow with low-code项目地址https://gitcode.com/gh_mirrors/do/dolphinscheduler点击查看免费下载Apache DolphinScheduler 的资源中心Resource Center用于统一管理工作流依赖的文件资源如 Shell/SQL 脚本、JAR 包以及任务组等元数据是文件上传、共享与任务组管理的核心入口。本指南以 docs/docs/zh/guide/resource/configuration.md 为主体系统讲解资源中心的存储后端选型与配置方法从单机默认的本地文件系统到 S3、OSS、OBS 等分布式/云对象存储的完整对接步骤并深入仓库源码揭示其插件化实现原理。读完本文你将掌握common.properties与aws.yaml的每一处关键配置项及其作用能够根据部署模式单机/集群正确完成资源中心的存储对接。资源中心能对接哪些存储后端资源中心的核心能力包括文件上传、资源查看/下载/删除以及任务组管理。它本身不限定存储介质而是通过统一的存储抽象对接多种后端分布式文件系统Hadoop HDFS2.6或 MinIO 集群云端对象存储AWS S3、阿里云 OSS、华为云 OBS以及仓库配置模板中一并支持的 Google GCS、Azure ABS详见下文源码解析本地文件系统单机模式下无需依赖任何外部存储即可体验集群模式下也可以借助 S3FS-FUSE 将 S3 挂载到本地、借助 JINDO-FUSE 将 OSS 挂载到本地再通过对接本地文件系统的方式操作远端对象存储中的文件。从源码看存储后端由StorageType枚举统一建模支持LOCAL、HDFS、OSS、S3、GCS、ABS、OBS共 7 种类型定义见 StorageType.java其中LOCAL的枚举值code为 0也是默认值。配置前的必修课common.properties 的部署模式差异无论对接哪种存储最终都落在common.properties的配置上。该文件在源码仓库中的默认模板位于 dolphinscheduler-common/src/main/resources/common.properties安装部署后会被分发到各服务组件的conf目录。需要修改的文件路径因部署模式而异集群模式 / 伪集群模式需要同时配置api-server/conf/common.properties与worker-server/conf/common.properties单机模式只需配置standalone-server/conf/common.properties。为什么是两个服务api-server 负责接收前端上传资源的请求并将文件写入存储worker-server 负责在任务执行前从存储中拉取资源。二者分工不同缺一不可后文部署与运维注意事项会展开说明。对接本地文件系统LOCALDolphinScheduler 资源中心使用本地文件系统是默认开启的无需额外配置即可使用只有当你想修改默认行为时才需要动common.properties。核心配置项默认模板中与本主题相关的配置如下common.properties# resource storage type: LOCAL, HDFS, S3, OSS, GCS, ABS, OBS. LOCAL type is default type resource.storage.typeLOCAL # resource store on HDFS/S3 path, resource file will store to this base path resource.storage.upload.base.path/tmp/dolphinscheduler如需调整通常只需修改一处resource.storage.upload.base.path/tmp/dolphinscheduler请确保部署 DolphinScheduler 的用户对该路径拥有读写权限当路径不存在时会自动创建文件夹。三个必须理解的设计细节原文档特别强调了三点理解它们能避免踩坑LOCAL 模式不支持分布式读写。上传的资源只能在一台机器上使用除非使用共享文件挂载点如 NFS。因此多机集群下直接使用本地文件系统会导致 Worker 节点读不到 API 节点上传的资源如果不想用默认值作为资源中心的基础路径必须显式修改resource.storage.upload.base.pathresource.storage.typeLOCAL是语法糖它实际上等价于同时配置resource.storage.typeHDFS和resource.hdfs.fs.defaultFSfile:///。单独提供LOCAL这个取值只是为了方便用户并让本地资源中心默认开启。这一点在common.properties模板的注释中也有印证LOCAL type is default type, and its a specific type of HDFS withresource.hdfs.fs.defaultFS file:///configuration。从底层实现看常量定义见 Constants.java 与 Constants.javaRESOURCE_UPLOAD_PATHresource.storage.upload.base.path与RESOURCE_STORAGE_TYPEresource.storage.type即对应上述两个配置项。对接 AWS S3当资源量较大、需要多机共享或想获得对象存储的可靠性时可将资源中心对接 S3。需要修改的文件使用 S3 上传资源时需要配置以下 4 个文件同样分 api-server 与 worker-server 两份api-server/conf/common.properties与api-server/conf/aws.yamlworker-server/conf/common.properties与worker-server/conf/aws.yaml第一步开启 S3 存储类型在common.properties中设置resource.storage.typeS3第二步配置 AWS 凭证与桶信息在aws.yaml中配置以下字段aws: s3: # The AWS credentials provider type. support: AWSStaticCredentialsProvider, InstanceProfileCredentialsProvider # AWSStaticCredentialsProvider: use the access key and secret key to authenticate # InstanceProfileCredentialsProvider: use the IAM role to authenticate credentials.provider.type: AWSStaticCredentialsProvider access.key.id: access.key.id access.key.secret: access.key.secret region: region bucket.name: bucket.name endpoint: endpoint字段说明字段含义说明credentials.provider.typeAWS 凭证提供者类型支持AWSStaticCredentialsProvider使用 AccessKey/SecretKey 认证与InstanceProfileCredentialsProvider使用 IAM 角色认证access.key.idAccess Key ID使用静态凭证认证时必填access.key.secretAccess Key Secret使用静态凭证认证时必填regionAWS 区域如us-east-1bucket.nameS3 桶名称需提前创建DolphinScheduler 启动时会校验桶存在性endpointS3 服务端点使用 AWS 官方服务可留默认对接 MinIO 等兼容 S3 协议的自建服务时必须指定如http://s3:9000仓库中的实际配置模板见 aws.yaml其中endpoint: http://s3:9000的写法即用于对接 MinIO 等 S3 兼容服务。S3 实现的行为细节从 S3StorageOperator.java 源码可以看到两个值得注意的行为初始化时会通过exceptionWhenBucketNameNotExists校验 bucket 名称非空并用doesBucketExistV2确认 bucket 真实存在不存在会直接抛出IllegalArgumentException并提示you need to create them by yourself即bucket 需要提前手工创建所有读写均基于 bucket 内的对象键key完成创建目录对应PutObjectRequest空对象、上传对应putObject、下载对应getObject、复制对应copyObject、删除对应deleteObject。对接阿里云 OSS需要修改的文件使用 OSS 上传资源时只需配置两份common.propertiesapi-server/conf/common.propertiesworker-server/conf/common.properties配置示例# alibaba cloud access key id, required if you set resource.storage.typeOSS resource.alibaba.cloud.access.key.idyour-access-key-id # alibaba cloud access key secret, required if you set resource.storage.typeOSS resource.alibaba.cloud.access.key.secretyour-access-key-secret # alibaba cloud region, required if you set resource.storage.typeOSS resource.alibaba.cloud.regioncn-hangzhou # oss bucket name, required if you set resource.storage.typeOSS resource.alibaba.cloud.oss.bucket.namedolphinscheduler # oss bucket endpoint, required if you set resource.storage.typeOSS resource.alibaba.cloud.oss.endpointhttps://oss-cn-hangzhou.aliyuncs.com这些配置项的完整默认模板同样在 common.properties 中。注意与 S3 不同OSS 对接时不要遗漏resource.storage.typeOSS原文档给出的示例配置中以注释形式标注required if you set resource.storage.typeOSS实际使用需自行将该值设为OSS。从 OssStorageOperator.java 的实现看AccessKey、Region、Bucket、Endpoint 分别通过PropertyUtils.getString从上述 properties 读取同样地bucket 名为空时会抛出IllegalArgumentException明确提示resource.alibaba.cloud.oss.bucket.name is empty。对接华为云 OBS需要修改的文件与 OSS 相同使用 OBS 上传资源时配置两份common.propertiesapi-server/conf/common.propertiesworker-server/conf/common.properties配置示例# access key id, required if you set resource.storage.typeOBS resource.huawei.cloud.access.key.idyour-access-key-id # access key secret, required if you set resource.storage.typeOBS resource.huawei.cloud.access.key.secretyour-access-key-secret # oss bucket name, required if you set resource.storage.typeOBS resource.huawei.cloud.obs.bucket.namedolphinscheduler # oss bucket endpoint, required if you set resource.storage.typeOBS resource.huawei.cloud.obs.endpointobs.cn-southwest-2.huaweicloud.com模板同样见 common.properties。需要注意原文档中该段注释里的oss bucket name / oss bucket endpoint实际指向的是obs相关配置项resource.huawei.cloud.obs.bucket.name、resource.huawei.cloud.obs.endpoint配置时请以键名resource.huawei.cloud.obs.*为准。从源码理解存储插件的扩展机制DolphinScheduler 的存储层采用插件化SPI架构这也是它能平滑支持 LOCAL/HDFS/S3/OSS/OBS/GCS/ABS 多后端的原因。统一操作抽象StorageOperator.java 定义了完整的存储操作接口包括createStorageDir建目录、exists判存在、delete删除、copy/upload/download复制/上传/下载、fetchFileContent读取文件内容以及listStorageEntity列目录等。资源中心的所有读写都基于这一接口与具体后端解耦目录规划接口常量FILE_FOLDER_NAME resources、UDF_FOLDER_NAME udfs表明存储目录按基础目录/租户/资源类型组织例如file:///tmp/dolphinscheduler/default/resources/普通文件与file:///tmp/dolphinscheduler/default/udfs/UDF 文件SPI 注册StorageOperatorFactory.java 定义了工厂接口各存储实现如 S3StorageOperatorFactory.java、OSS 的OssStorageOperatorFactory通过AutoService(StorageOperatorFactory.class)注解注册运行时根据resource.storage.type的值加载对应实现——这解释了为什么配置只需要改一个枚举值即可切换整个存储后端。部署与运维注意事项api-server 与 worker-server 必须同时配置如果只配置了api-server/conf/common.properties只是开启了资源上传操作并不能满足正常使用要想在工作流执行中读取资源文件还必须配置worker-server/conf/common.properties部署用户权限如果用到资源上传功能参考 安装部署指南 部署时部署用户需要具备对存储路径本地目录或对象存储桶的相应操作权限HDFS 高可用HA场景如果 Hadoop 集群的 NameNode 配置了 HA需要开启 HDFS 类型的资源上传同时将 Hadoop 集群下的core-site.xml和hdfs-site.xml复制到worker-server/conf以及api-server/conf非 NameNode HA 场景可跳过此步骤。对应的 HDFS 相关基础配置resource.hdfs.root.user、resource.hdfs.fs.defaultFS、Kerberos 认证开关等可参考 common.properties云存储挂载本地集群模式对接 S3/OSS 时除直接使用原生存储插件外还可以用 S3FS-FUSE 将 S3 挂载到本地、JINDO-FUSE 将 OSS 挂载到本地然后以本地文件系统方式对接适合已有挂载基础设施的运维场景单机快速体验如果只是想本地跑通全流程保持默认的resource.storage.typeLOCAL与/tmp/dolphinscheduler基础路径即可无需部署任何外部存储组件。结语资源中心的存储配置本质上是一个类型枚举 一组密钥/端点参数的组合common.properties决定存储类型与基础路径aws.yaml补充 S3 凭证与桶信息OSS/OBS 的密钥则直接内联在 properties 中。理解 LOCAL 与 HDFS 的等价关系、牢记 api-server 与 worker-server 需成对配置这两条主线再结合本仓库中 StorageOperator 与各存储实现源码即可在单机、集群乃至多云环境下灵活、安全地落地资源中心。赞分享任务调度大数据后端前端【免费下载链接】dolphinschedulerApache DolphinScheduler is the modern data orchestration platform. Agile to create high performance workflow with low-code项目地址https://gitcode.com/gh_mirrors/do/dolphinscheduler点击查看免费下载相关推荐Apache DolphinScheduler 资源中心存储配置指南本地文件系统与 S3/OSS/OBS/COS 云存储接入Apache DolphinScheduler 资源中心存储配置指南本地文件系统与 S3/OSS/OBS/COS 云存储接入 Apache DolphinSc任务调度数据编排工作流自动化后端大数据Apache DolphinScheduler 资源中心存储配置指南从本地文件系统到 S3 / OSS / OBS 云存储Apache DolphinScheduler 资源中心存储配置指南从本地文件系统到 S3 / OSS / OBS 云存储 导读 Apache Dolphin任务调度大数据后端前端Apache DolphinScheduler 资源中心存储配置完全指南本地文件系统与 S3/OSS/OBS/COS 对象存储对接详解Apache DolphinScheduler 资源中心存储配置完全指南本地文件系统与 S3/OSS/OBS/COS 对象存储对接详解 导读 本文基于 Apa任务调度数据编排工作流自动化后端大数据创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
企业数字化 ERP 产品动态
相关推荐
Claude Code 子代理 validation-gates 实战:用自动化测试质量门禁守护每一次代码变更 文档教程提示工程人工智能 【免费下载链接】context-engineering-intro Context engineering is the new vibe coding - its the way to actually make AI coding assistants work. Claude Code is the best for this so thats what this repo is centered around, but you can… · 2026/9/23 13:58:20
GitHub趋势速报:从生态脉搏看开发者真实行为 1. 这不是榜单,而是一份 GitHub 生态健康度的实时心电图你点开“GitHub 日榜趋势速报 | 2026-09-18”这个标题时,心里想的可能是:又一个刷屏的热门项目合集?点进去看看有没有能抄的代码?或者——更现实一点——今天 Gi… · 2026/9/23 13:58:13
选GEO服务商比的不是价格:先淘汰只会发稿的 企业第一次接触 GEO 服务商,通常会收到两份截然不同的报价单:一份按篇数计费,承诺一个月发多少篇稿;另一份按项目计费,先要资料、先做诊断,报价看起来贵不少。多数人会本能地倾向第一份——单价清晰、交付明… · 2026/9/23 14:41:17
QGIS集成日新图WMTS服务实战指南 1. 项目背景与核心价值地理信息系统(GIS)在现代空间数据分析中扮演着越来越重要的角色,而QGIS作为开源GIS软件的标杆,其插件生态和扩展能力一直是行业关注的焦点。最近在项目中需要将日新图服务集成到QGIS工作流中,整个… · 2026/9/23 14:41:09
herdr:Rust 构建的终端感知层,让 CLI 实时监控 AI agent 状态 1. 项目概述:让终端真正“看见”正在待命的智能体 你有没有遇到过这样的场景:在 Windows Terminal 或 iTerm2 里敲下 pi-agent --serve ,终端只回显一行 Listening on http://localhost:8080 ,然后就彻底静默——既不显示当前… · 2026/9/23 14:41:09
OnlyOffice私有化部署与Java集成全攻略:从选型到踩坑实录 我前后折腾过好几套办公套件,最后真正落地长期用的,是OnlyOffice。原因很直接:公司要一套能私有化部署、无广告、数据不出内网的在线办公系统,还要求必须和本地 Office 文件无缝兼容。市面上主流的方案里,OnlyOffice 算… · 2026/9/23 14:41:03
水利人DIY电子速查手册:3个代码搞定面试原理 水利人DIY电子速查手册:3个代码搞定面试原理 面试被问原理答不上来?别慌。 这份 速查手册 专为水利人定制,用后端思维拆解DIY电子。 别再死记硬背,直接看代码,3分钟搞懂底层逻辑。 现场常见违规问题… · 2026/9/23 14:41:03
雷达恒虚警检测CFAR原理与Python实现:从均值类到OS-CFAR 简介:这份资源面向雷达信号处理与目标检测方向的学习者和研究者,聚焦恒虚警(CFAR)检测算法的MATLAB实现。恒虚警检测的核心是在背景噪声不断变化时维持稳定的虚警概率,从而可靠地识别真实目标,涉及统计自适… · 2026/9/23 14:40:57
3招搞定手机怎么下载微信面试难题实战项目解析 3招搞定手机怎么下载微信面试难题实战项目解析 面试被问“手机怎么下载微信”背后的原理,90%的人答不上来。别笑,这看似弱智的问题,实则是考察你对移动应用分发机制、安全校验及网络协议理解的试金石。我带过不少校招新人,他们背了八股文,却连一个A… · 2026/9/23 0:00:03
你有新短消息请注意查收:3个新手避坑指南搞定消息系统选型 你有新短消息请注意查收:3个新手避坑指南搞定消息系统选型 面试被问“高并发下如何保证消息不丢失”,你张口就是“用Redis”,结果面试官追问“如果Redis宕机了怎么办”,你瞬间卡壳。这种场景太常见了,很多新手在背八股文时,只记住了技术名词… · 2026/9/23 0:00:29