Argo Workflows is an open source container-level workflow engine for coordinating parallel jobs on Kubernetes. Argo Workflows implements the entire architecture functionality by abstracting Kubernetes CRDs (Custom Resource Definitions), such as Workflow Template, Workflow, and Cron Workflow.
What can Argo workflow do?
Define workflows, where each step in the workflow is a container.
Model multi-step workflows as a series of tasks, or use directed acyclic graphs (DAGs) to capture dependencies between tasks.
With ArgoWorkflow on Kubernetes, you can easily run compute-intensive jobs for computer learning or data processing in a short time.
Run CI/CD pipelines locally on Kubernetes without configuring complex software development products.
What are the features of Argo workflow?
Workflow: Call multiple workflow templates for task orchestration and execute them in different orders.
Workflow Template: The template of a workflow is a definition of a workflow, so it can be called within a workflow template or in other workflows and workflow templates in the cluster.
Cluster Workflow Template: Cluster-level Workflow Template, which can access all namespaces of the cluster through clusterrole role authorization
Cron Wrokflow: Task scheduling type workflow, equivalent to the advanced version of k8s cronjob.
Installation Configuration
Install argo workflow
Here we install the stable version 2.12.10. The entire installation process will configure service account, role, ClusterRole, deployment, etc.
Since our cluster environment ingress controller uses traefik, and the default internal access method of argo workflow is to access via https, I can only add relevant annotations here to forward requests to argo-server