argo-workflows

Workflow engine for Kubernetes
授权协议 Apache-2.0 License
开发语言 Python
所属分类 神经网络/人工智能、 机器学习/深度学习
软件类型 开源软件
地区 不详
投 递 者 乐欣可
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

CI

What is Argo Workflows?

Argo Workflows is an open source container-native workflow engine for orchestrating parallel jobs on Kubernetes. ArgoWorkflows is implemented as a Kubernetes CRD (Custom Resource Definition).

  • Define workflows where each step in the workflow is a container.
  • Model multi-step workflows as a sequence of tasks or capture the dependencies between tasks using a directed acyclicgraph (DAG).
  • Easily run compute intensive jobs for machine learning or data processing in a fraction of the time using ArgoWorkflows on Kubernetes.

Argo is a Cloud Native Computing Foundation (CNCF) hosted project.

Argo Workflows in 5 minutes

Use Cases

  • Machine Learning pipelines
  • Data and batch processing
  • ETL
  • Infrastructure automation
  • CI/CD

Why Argo Workflows?

  • Argo Workflows is the most popular workflow execution engine for Kubernetes.
  • It can run 1000s of workflows a day, each with 1000s of concurrent tasks.
  • Our users say it is lighter-weight, faster, more powerful, and easier to use
  • Designed from the ground up for containers without the overhead and limitations of legacy VM and server-basedenvironments.
  • Cloud agnostic and can run on any Kubernetes cluster.

Read what people said in our latest survey

Try Argo Workflows

Access the demo environment (login using Github)

Ecosystem

Argo Events|Argo Workflows Catalog|Couler|Katib|Kedro|Kubeflow Pipelines|Onepanel|Ploomber|Seldon|SQLFlow

SDKs

Check out our Java, Golang and Python SDKs.

Quickstart

kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo-workflows/master/manifests/install.yaml

Who uses Argo Workflows?

Official Argo Workflows user list

Documentation

Features

  • UI to visualize and manage Workflows
  • Artifact support (S3, Artifactory, Alibaba Cloud OSS, HTTP, Git, GCS, raw)
  • Workflow templating to store commonly used Workflows in the cluster
  • Archiving Workflows after executing for later access
  • Scheduled workflows using cron
  • Server interface with REST API (HTTP and GRPC)
  • DAG or Steps based declaration of workflows
  • Step level input & outputs (artifacts/parameters)
  • Loops
  • Parameterization
  • Conditionals
  • Timeouts (step & workflow level)
  • Retry (step & workflow level)
  • Resubmit (memoized)
  • Suspend & Resume
  • Cancellation
  • K8s resource orchestration
  • Exit Hooks (notifications, cleanup)
  • Garbage collection of completed workflow
  • Scheduling (affinity/tolerations/node selectors)
  • Volumes (ephemeral/existing)
  • Parallelism limits
  • Daemoned steps
  • DinD (docker-in-docker)
  • Script steps
  • Event emission
  • Prometheus metrics
  • Multiple executors
  • Multiple pod and workflow garbage collection strategies
  • Automatically calculated resource usage per step
  • Java/Golang/Python SDKs
  • Pod Disruption Budget support
  • Single-sign on (OAuth2/OIDC)
  • Webhook triggering
  • CLI
  • Out-of-the box and custom Prometheus metrics
  • Windows container support
  • Embedded widgets
  • Multiplex log viewer

Community Meetings

We host monthly community meetings where we and the community showcase demos and discuss the current and future state ofthe project. Feel free to join us! For Community Meeting information, minutes and recordingsplease see here.

Participation in the Argo Workflows project is governed bythe CNCF Code of Conduct

Community Blogs and Presentations

Project Resources

  • 一.Argo简介 官网 参考 1. Argo子项目 Argo Workflows:基于容器的任务编排工具 Argo CD:基于GitOps声明的持续交付工具 Argo Events:事件驱动工具 Argo Rollouts:支持金丝雀以及蓝绿发布的应用渐进式发布工具 2. argo CRD Argo Workflows是一个开源容器原生工作流引擎,用于在 Kubernetes 上编排并行作业。Ar

  • 归档 Argo Workflow 支持将工作流执行记录(Workflow)的信息存储到 PostgreSQL 或 MySQL 中,以达到更长久地保存执行记录但又不会影响到 Kubernetes 集群的性能。 这里,给出一个归档( Archive )数据到 PostgreSQL 的配置方法: 首先,安装 PostgreSQL 。这里采用 Helm Chart 的方式来安装: helm repo ad

  • Argo Workflows 是一个云原生的通用的工作流引擎。本教程主要介绍如何用其完成持续集成(Continous Integration, CI)任务。 本文全部内容来自:https://github.com/LinuxSuRen/argo-workflows-guide 如果您感觉本文对您或其他人有帮助,欢迎点赞、转发、分享。更加丰富、详细的内容也会在上面的 GitHub 仓库中更新,大家可

  • 公众号文章内的链接,请访问 https://github.com/LinuxSuRen/argo-workflows-guide#golang-sdk Argo Workflows 官方维护了 Golang、Java、Python 语言的 SDK。下面以 Golang 为例,讲解 SDK 的使用方法。 在运行下面的示例前,有两点需要注意的: Argo Workflows Server 地址 Tok

  • Argo Workflows 内置了几种类型的任务模板,这些任务类型或是方便解决特定问题,或是可以解决通用问题。此外,我们还可以通过执行器(Executor)插件扩展 Argo Workflows 的功能。 执行器插件,会作为工作流 Pod 中 sidecar 的形式存在,通过 HTTP 提供服务。Argo Workflows 规定了 URI,以及 Request 和 Response。据此,我们

  • 基于 Kubernetes 的云原生 CICD 工作流引擎 Argo workflows 完整的教程请查看下面的地址 https://github.com/devops-ws/argo-workflows-guide 下面给出配置 Argo workflows 单点登录的说明: 为了保证 Argo workflows 同时支持 SSO(Single Sign-On) 以及 webhook 的执行,

  • 翻译整理自: 【Github】:https://github.com/argoproj/argo-workflows/ 【Website】:https://argoproj.github.io/ 一、什么是Argo Workflows? Argo workflow是一个开源的容器本地工作流引擎,用于在Kubernetes上编排并行作业。Argo工作流被实现为Kubernetes CRD(自定义资源

  • k8s argo workflow获取登录token的命令 kubectl exec -it argo-server-xxx-xxx -n argo-system -- argo auth token

 相关资料
  • Argo 是一个开源的容器本地工作流引擎,用于在Kubernetes上完成工作。 Argo实现为Kubernetes CRD(自定义资源定义)。 定义工作流中每个步骤都是容器的工作流。 将多步骤工作流建模为一系列任务,或使用图形(DAG)捕获任务之间的依赖关系。 使用Kubernetes上的Argo工作流程,可以在很短的时间内轻松运行计算密集型作业,以进行机器学习或数据处理。 在Kubernete

  • Argo是开源的web框架,目前Argo支撑着58同城几乎所有的web站点,包括wap和手机端的访问等,现在wf每天处理10亿级的请求。经过长时间的运作与运行,证明Argo是一个可靠的、高效的web框架。 Argo在wf做了大量优化和重构,以适应各组织软件开发的个性化需求,提升了系统性能,具有更好的可扩展性。Argo的开源反过来也促进wf2.0的开发。 哲学观 (philosophy) 约定优于配

  • Argo Events - The Event-driven Workflow Automation Framework What is Argo Events? Argo Events is an event-driven workflow automation framework for Kubernetes. It allows you to trigger 10 differentacti

  • Argo Rollouts - Progressive Delivery for Kubernetes What is Argo Rollouts? Argo Rollouts is a Kubernetes controller and set of CRDs which provide advanced deployment capabilities such as blue-green, c

  • Argo 是一个 Java 开发的遵循 RFC 7159 的 JSON 解析器和生成器。提供三个解析接口(推、拉和 DOM 风格解析器)。特点是易用、线程安全、快速。 Maven <!-- https://mvnrepository.com/artifact/net.sourceforge.argo/argo --><dependency>    <groupId>net.sourceforge.

  • Argo CD 是 Kubernetes 的声明性 GitOps 持续交付工具。 优点:   应用程序定义、配置和环境应该是声明性的并且是版本控制的。 应用程序部署和生命周期管理应该是自动化的、可审计的并且易于理解。 Argo CD 遵循 GitOps 模式,使用 Git 存储库作为定义所需应用程序状态的真实来源。Kubernetes 清单可以通过多种方式指定: 自定义应用程序 helm 图 ks