Kestra 工作流编排平台

开源的事件驱动编排与调度平台,统一数据、AI 和基础设施工作流。

Star 数
★ 30k
最近更新
今天
License
Apache-2.0
主语言
Java

30 秒速览

运行形态
自托管服务网页应用
可在哪里用
通用 · 跨平台
费用
有免费版,另有付费云服务
上手难度
中 · 需要几步配置
开始前需要
DockerShell / 命令行网络访问本地文件系统
典型场景
数据工程师可以使用 Kestra 编排 ETL 管道,从数据库、云存储或 API 提取数据,进行转换,并加载到数据仓库。
不适合
  • 需要完全离线、不能拉取 Maven 插件的团队
  • 只想用轻量脚本、不愿学习 YAML 与 Kestra 概念的用户
  • 无法运行 Docker 或 Kubernetes 的小型环境

这个 Agent 能做什么,适合哪些场景?

Kestra 是一个开源的事件驱动编排平台,专为数据、AI 和基础设施工作流设计。它通过声明式 YAML 接口统一了计划任务和实时事件驱动的自动化,支持基础设施即代码的最佳实践。Kestra 提供直观的 UI 和代码编辑器,使您能够以可视化方式构建工作流,并将工作流作为代码管理,支持 Git 版本控制。该平台具备高度的可扩展性和高可用性,可处理数百万个工作流,并提供插件生态系统以集成各种数据库、云存储、API 和编程语言。Kestra 支持本地和远程执行,包括 Docker 和 Kubernetes,并提供了丰富的监控和通知集成。

Kestra 通过 YAML 文件定义工作流,这些文件由核心引擎解析并执行。用户可以通过 UI 或 API 创建和管理工作流,并利用内置的代码编辑器进行语法高亮、自动补全和实时验证。Kestra 支持定时触发器和事件触发器,可响应文件到达、消息队列事件等。执行任务包括运行脚本(支持 Python、Node.js、R、Go、Shell 等)、执行 SQL 查询、发起 HTTP 请求、运行 Docker 容器或 Kubernetes 作业。工作流可以包含子流程、重试、超时、错误处理、输入输出变量、条件分支、动态任务和并行任务。Kestra 还集成了 Git 版本控制、Terraform 提供程序,并支持通过 CloudFormation 或 Terraform 部署到 AWS 和 GCP。

  1. 数据工程师可以使用 Kestra 编排 ETL 管道,从数据库、云存储或 API 提取数据,进行转换,并加载到数据仓库。
  2. 平台团队可以将 Kestra 用于基础设施自动化,例如定期运行脚本、执行 Ansible 播放簿或触发 Kubernetes 作业。
  3. AI 工程师可以利用 Kestra 编排机器学习管道,包括数据预处理、模型训练和部署,并集成 MLOps 工具。
  4. 运维团队可以使用 Kestra 监控和管理关键业务流程,通过 Slack、邮件或 PagerDuty 接收通知。
  5. 开发人员可以利用 Kestra 的本地开发模式在 Docker 中快速启动,测试工作流,并通过 Git 版本控制进行协作。

如何安装或部署这个 Agent?

Kestra 可以通过 Docker 快速部署。确保 Docker 已安装,然后运行以下命令:

docker run --pull=always -it -p 8080:8080 --user=root \
  --name kestra --restart=always \
  -v kestra_data:/app/storage \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v /tmp:/tmp \
  kestra/kestra:latest server local

在 Windows PowerShell 中使用反引号,在 CMD 中使用 ^ 符号。访问 http://localhost:8080 访问 UI。也可以使用 Docker Compose、Podman、Kubernetes 或云部署选项(AWS CloudFormation、GCP Terraform)。

如何使用这个 Agent?

启动 Kestra 后,在 UI 中创建一个新流程。例如,创建一个名为 hello_world 的流程,内容如下:

id: hello_world
namespace: dev

tasks:
  - id: say_hello
    type: io.kestra.plugin.core.log.Log
    message: "Hello, World!"

运行该流程,查看输出。您可以使用内置编辑器编写 YAML,并利用拓扑编辑器可视化工作流。触发方式可以是计划触发或事件触发。

这个 Agent 有哪些优点和局限?

优点
  • 声明式 YAML 接口,结合 UI 和 Git 版本控制,实现基础设施即代码。
  • 丰富的插件生态系统,支持多种编程语言、云服务和数据库。
  • 支持事件驱动和计划工作流,可处理高可用和容错。
  • 可视化构建和实时验证,降低开发难度。
局限
  • 需要一定的学习成本,特别是 YAML 语法和 Kestra 概念。
  • 对于小型用例,Docker 部署可能显得沉重。
  • 插件生态系统尽管丰富,但可能存在维护质量参差不齐的情况。

这个 Agent 与同类方案有什么区别?

Kestra 可以与其他编排平台如 Apache Airflow 或 Prefect 进行比较。与 Airflow 相比,Kestra 强调事件驱动和声明式配置,而 Airflow 主要基于 Python 和 DAG。

与相关度最高的同类 agent 并排比较关键指标。

Agent 源码审查 形态 / 费用 Star 最近更新 主语言 完整支持的平台
Kestra 工作流编排平台 当前 53 · 缺口较多 自托管服务免费版 + 付费版 ★ 30k 今天 Java —
Agentspan 62 · 存在缺口 命令行工具免费 + 模型费 ★ 497 23 天前 TypeScript OpenAI API · Claude API
Agency Orchestrator:一句话组队 AI 专家团队 61 · 存在缺口 命令行工具免费 + 模型费 ★ 2.4k 今天 TypeScript Codex · Claude Code · OpenAI API · Claude API
Dagu 工作流编排器 74 · 存在缺口 命令行工具免费版 + 付费版 ★ 4.4k 今天 Go Codex · Claude Code · Claude API

FollowAgents 如何评估这个 Agent?

FollowAgents 源码审查 · FARS-2.1
缺口较多
53/ 100 五分制 2.7 / 5
本评测基于 2026年8月9日 的源码;此后该项目发布了 20 个正式版本,尚未复审。分数与结论只代表评测时的版本。 最近版本 ↓
信任安全 10/29
可靠稳定 8/14
适用触发 12/18
规范维护 11/18
有效结果 9/13
证据核验 3/8
查看各维度的扣分理由
信任安全10 / 29 · 1.7/5

证据显示:README 强调工作流即代码、Git 版本控制集成,但未明确权限最小化原则;用户确认机制未提及;数据流透明度有限,仅提及 UI 和 API 修改自动调整 YAML;敏感数据处理未明确;依赖安全有 CodeQL 扫描和 SECURITY.md 报告流程;外部影响包括执行脚本、调用 API 等,但未明确授权机制;回滚未明确;来源归属有 Apache 2.0 许可证和版权声明。扣分原因:缺乏权限最小化、用户确认、数据流透明、敏感数据处理、外部影响授权、回滚机制的具体证据。

可靠稳定8 / 14 · 2.9/5

证据显示:README 描述功能一致,无矛盾;依赖可用性通过 Docker 镜像和插件生态体现,但未提供依赖清单;失败消息未明确。扣分原因:失败消息和依赖可用性证据不足。

适用触发12 / 18 · 3.3/5

证据显示:README 明确目标用户为数据、AI 和基础设施工作流,场景丰富;能力边界通过插件生态和任务类型说明;触发精度通过事件驱动和调度触发定义;环境适配支持 Docker、Kubernetes、云平台。扣分原因:能力边界和触发精度细节有限。

规范维护11 / 18 · 3.1/5

证据显示:README 结构清晰,有目录;安装说明详细(Docker 命令);命名稳定(Kestra 品牌);示例和 FAQ 有 Hello World 示例;已知限制未明确;许可证为 Apache 2.0;版本和变更日志通过 GitHub releases 和 badge 体现;维护责任通过贡献指南和社区渠道体现。扣分原因:已知限制未明确。

有效结果9 / 13 · 3.5/5

证据显示:输出可用性通过 UI 和 YAML 定义;边际价值通过统一调度和事件驱动;成本效益通过开源和社区支持。扣分原因:缺乏具体性能或成本数据。

证据核验3 / 8 · 1.9/5

证据显示:README 中的声明有文档链接支持,但未提供具体证据;跨来源验证有限;事实和推断未明确区分。扣分原因:声明可追溯性、跨来源验证和事实推断分离不足。

风险与缓解建议
  • 源码中未见:执行前用户确认开启或自行加上执行前确认;先在沙箱或测试环境跑通,确认行为后再接入真实数据。
  • 未验证发布者身份,需谨慎评估供应链风险。
  • README 中的功能声明缺乏具体证据支持,建议查阅官方文档和测试。
  • 权限最小化和用户确认机制未明确,部署时需自行配置安全策略。
证据充分度:低 评估于 2026年8月9日 审查版本 890d6a8380f9 评估后仓库已有新提交,评分可能未覆盖最新改动
查看完整评分方法 →

最近版本

来自该项目 GitHub Releases 的最新发布记录,说明为上游原文摘录,未经本站改写或测试。

  1. v1.3.43
    发布说明摘录
    Changelog 📘 Subtasks version - b531f5c update to version '1.3.43' 🐛 Bug Fixes core - db82eb4 keep the value timezone in the date filter, closes #11129 - b5caed0 stop retry race from duplicating task runs and ending executions early (#18947), closes #18947 flow - ea2daee preserve metadata for failed flows (#19814), closes #17806 #17808 #19814 flows - b7c74bc stop the file watcher rewriting unchanged flows in a loop, closes #6847 storage-local - 97a934a create destination parent on move and move/delete companion metadata (#18836), closes #18836 system …
    在 GitHub 查看 ↗
  2. v2.0.6
    发布说明摘录
    Changelog 📘 Subtasks version - b59444f update to version '2.0.6' 🐛 Bug Fixes core - 019fb8e neutralize formula characters in CSV exports - 043f765 keep the value timezone in the date filter, closes #11129 - 264562d stop retry race from duplicating task runs and ending executions early (#18947), closes #18947 execution - cbcae8e fail on unknown onChildFailure executions - 314cdba retry a task with CREATE_NEW_EXECUTION inside a loop, closes #20515 - 728931e complete loops with empty URI values (#20561), closes #20011 #20561 …
    在 GitHub 查看 ↗
  3. v2.0.5
    发布说明摘录
    Changelog 🚀 Features core - 777ceef centralized HTTP retry mechanism in core (#19904), closes #19904 worker - 0b35619 reach namespace files through the controller, configurably - 0dff4d1 make the fetched job buffer size configurable 📘 Subtasks core - fe0ba63 remove duckdb ld_preload workaround from selfrun.sh (#20249), closes #20249 version - 172dd0f update to version '2.0.5' 🐛 Bug Fixes core - 12312b7 fall back to the default tab when no tab is requested (#19923), closes #19918 #19923 execution …
    在 GitHub 查看 ↗

常见问题

Kestra 是免费使用的吗?
Kestra 采用 Apache 2.0 许可证,完全开源,可以免费使用。
Kestra 需要哪些系统要求?
您需要 Docker 或 Java 环境,以及足够的计算资源来处理您的工作流。
如果工作流失败,Kestra 如何处理?
Kestra 支持重试、超时和错误处理机制,可以配置任务失败时的行为,并发送通知。
Kestra 可以扩展到多大的规模?
Kestra 设计为可处理数百万个工作流,支持高可用和水平扩展。
在 GitHub 查看 ↗ 安装 ↓

相关 Agents