Argo - 容器本地工作流引擎


Apache
跨平台
Python

软件简介

Argo 是一个开源的容器本地工作流引擎,用于在Kubernetes上完成工作。 Argo实现为Kubernetes CRD(自定义资源定义)。

  • 定义工作流中每个步骤都是容器的工作流。

  • 将多步骤工作流建模为一系列任务,或使用图形(DAG)捕获任务之间的依赖关系。

  • 使用Kubernetes上的Argo工作流程,可以在很短的时间内轻松运行计算密集型作业,以进行机器学习或数据处理。

  • 在Kubernetes上本地运行CI / CD管道,无需配置复杂的软件开发产品。

架构图:

为何选择Argo?

Argo专为容器而设计,没有传统VM和基于服务器的环境的开销和限制。
Argo是云不可知的,可以在任何kubernetes集群上运行。
Argo with Kubernetes让云量级的超级计算机触手可及。

特征

  • DAG或基于步骤的工作流声明

  • 工件支持(S3,Artifactory,HTTP,Git,raw)

  • 步级输入和输出(工件/参数)

  • 循环

  • 参数

  • 条件语句

  • 超时(步骤和工作流程级别)

  • 重试(步骤和工作流程级别)

  • 重新提交(备忘录)

  • 暂停和恢复

  • 消除

  • K8s资源编排

  • 退出挂钩(通知,清理)

  • 已完成工作流的垃圾收集

  • 调度(亲和/容忍/节点选择器)

  • 卷(短暂的/现有的)

  • 并行性限制

  • 守护步骤

  • DinD(码头工具码头)

  • 脚本步骤

项目资源