아르고 워크플로



Argo는 Kubernetes용 오픈 소스 도구 제품군으로 워크플로를 실행하고 클러스터를 관리하며 GitOps를 수행합니다. Argo는 2020년 CNCF 인큐베이팅 프로젝트로 승인되었습니다.
Argo는 다음을 포함한 4개의 하위 프로젝트로 구성됩니다.
  • Argo CD – 여러 k8s 클러스터에 대한 Argo 이벤트, 서비스 및 배포를 포함하여 모든 Kubernetes 리소스의 선언적 GitOps 기반 배포를 지원합니다.
  • Argo Events – Kubernetes용 이벤트 기반 종속성 관리자.
  • Argo Workflows – DAG 및 단계 기반 워크플로를 모두 지원하는 Kubernetes용 컨테이너 기본 워크플로 엔진.

  • Argo Rollouts – 카나리아, 청록색 및 보다 일반적인 형태의 실험과 같은 선언적 점진적 전달 전략을 지원합니다.

    Workflow는 Argo에서 가장 중요한 리소스이며 두 가지 중요한 기능을 제공합니다.
    1. It defines the workflow to be executed.
    2. It stores the state of the workflow.
    

  • 아르고 워크플로



    Argo Workflow는 Kubernetes에서 병렬 작업을 오케스트레이션하기 위한 오픈 소스 컨테이너 네이티브 워크플로 엔진입니다. Argo Workflows는 Kubernetes CRD(사용자 지정 리소스 정의)로 구현됩니다. Argo Workflows는 Argo 제품군의 일부입니다.

    왜 아르고 워크플로우인가?



    Argo에는 워크플로의 각 단계를 컨테이너로 구현할 수 있는 강력한 Kubernetes용 워크플로 엔진이 있습니다.
    이 클라우드 네이티브 워크플로 엔진은 각각 1,000단계로 구성된 10,000개의 동시 워크플로를 실행할 수 있습니다.
    Argo Workflows는 Adobe, Alibaba Cloud, Google, GitHub, IBM, Intuit, NVIDIA, New Relic 및 RedHat을 비롯한 100개 이상의 조직에서 프로덕션에서 활발히 사용하고 있습니다.
    Argo는 k8 위에서 실행되도록 설계되었습니다. VM, AWS ECS, Container Instances on Azure, Google Cloud Run 또는 App Engine 아님. 즉, k8의 장점을 모두 누릴 수 있습니다.


    >   Designed from the ground up for containers without the overhead and limitations of legacy VM and server-based environments.
    >   Cloud agnostic and can run on any Kubernetes cluster.
    >   Easily orchestrate highly parallel jobs on Kubernetes.
    >   Argo Workflows puts a cloud-scale supercomputer at your fingertips!
    

    Argo 워크플로의 사용 –



    • CI/CD
    • Serverless
    • Data Science
    • Batch Processing
    • Data Processing
    • Machine Learning
    • Infrastructure Automation
    

    워크플로는 Kubernetes에서 어떻게 작동합니까?



    Argo는 Kubernetes CRD(Custom Resource Definition)로 구현됩니다. 결과적으로 Argo 워크플로는 kubectl를 사용하여 관리할 수 있습니다.

    워크플로는 차례로 또는 병렬로 실행할 수 있는 일련의 단계입니다. 워크플로의 각 단계에는 자체 컨테이너가 있을 수 있습니다. 즉, 컨테이너 이미지에 무엇이든 넣은 다음 Argo Workflow에 넣을 수 있습니다. 이 Argo Workflow 외에도 사용자는 여러 단계의 워크플로를 작업 시퀀스로 제공하거나 그래프(DAG)를 사용하여 작업 간의 종속성을 캡처할 수 있습니다.

    메모:



    Argo events and Argo Workflows for the most part Works simultaneously. Once the event has been registered, it will trigger the action: e.g., Argo Workflow.
    


    몇 가지 주요 개념:



    • Kubernetes API (application programming interface) - The Kubernetes API lets you query and manipulates the state of objects in Kubernetes.
    
    • Kubernetes CR (Custom Resources) - Custom resources are extensions of the Kubernetes API. A custom resource is an object that extends the Kubernetes API or allows you to introduce your own API into a project or a cluster
    
    •  Kubernetes CRD (Custom Resources Definition) - A custom resource definition (CRD) file defines custom resources and lets the API server handle the entire process. Custom resources definition (CRD) is a powerful feature that enables users to add their own custom objects to the Kubernetes cluster and use it like any other native Kubernetes object.
    
    • Namespaces - Namespaces provides a mechanism for isolating groups of resources within a single cluster.
    
    • Entrypoint - The first step to execute when running a workflow
    
    • Workflow: A Kubernetes resource defining the execution of one or more template. Workflows are named.
    
    • Template: A step, steps or DAG.
    

    Example Workflow Template To echo "Hello World"

    좋은 웹페이지 즐겨찾기