argoproj/argo-workflows
Workflow Engine for Kubernetes
해결하는 문제
Argo Workflows는 Kubernetes에서 복잡한 병렬 작업을 오케스트레이션하는 문제를 해결합니다. 머신러닝 및 데이터 처리에 필요한 것과 같은 계산 집약적인 멀티 스텝 작업을 관리하는 컨테이너 네이티브 방식을 제공함으로써 레거시 VM 및 서버 기반 환경의 오버헤드를 제거합니다.
작동 방식
Kubernetes Custom Resource Definition (CRD)로 구현된 Argo Workflows를 사용하면 각 단계가 컨테이너인 워크플로우를 정의할 수 있습니다. 이러한 워크플로우는 단순한 작업 시퀀스로 모델링하거나 단계 간의 복잡한 종속성을 캡처하기 위한 유향 비순환 그래프(DAG)로 모델링할 수 있습니다. REST API (HTTP 및 GRPC)를 갖춘 서버 인터페이스를 제공하며 Java, Golang, Python (Hera를 통해), Typescript (Juno를 통해)의 다양한 클라이언트 라이브러리를 지원합니다.
대상 사용자
모든 Kubernetes 클러스터에서 확장 가능하고 클라우드에 종속되지 않는 배치 처리, 머신러닝 파이프라인 또는 CI/CD 자동화를 실행해야 하는 개발자 및 플랫폼 엔지니어를 위해 설계되었습니다.
주요 특징
- 컨테이너 네이티브 오케스트레이션: 워크플로우의 모든 단계는 Kubernetes를 위해 특별히 설계된 컨테이너입니다.
- 유연한 워크플로우 모델링: DAG와 순차적 단계를 모두 지원합니다.
- 풍부한 기능 세트: 시각화를 위한 UI, 아티팩트 지원 (S3, GCS, Azure 등), 예약된 cron 워크플로우, 루프/조건 로직이 포함됩니다.
- 강력한 실행 제어: 단계별 타임아웃, 재시도, 재제출 및 워크플로우 일시 중지 및 재개 기능을 제공합니다.
- 광범위한 생태계: Kubeflow Pipelines 및 Metaflow와 같은 주요 프로젝트에서 AI/ML 오케스트레이션을 위해 사용됩니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트