argo简介
argo 是一个基于 kubernetes CRD 实现的一个 Workflow(工作流) 工具,基于 kubernetes 的调度能力实现了工作流的控制和任务的运行,同时提供了一个 Dashboard来方便我们查看任务的进程和详情。
ArgoCD功能有哪些?
- 将应用程序自动部署到指定环境中
- 可通过CRD方式定义执行对象
- 多租户管理和RBAC权限集成管控
- 多集应用管理和部署
- 可视化UI
- 支持多种Kubernetes配置对象(Kustomize,Helm,Ksonnet,Jsonnet,plain-YAML)
- 支持SSO集成(OIDC,OAuth2,LDAP,SAML 2.0,GitHub,GitLab,Microsoft,LinkedIn)
- Webhook集成可实现通知
- 自带metric指标暴露
argo根据前置任务执行状态判断是否继续执行后续任务
apiVersion: argoproj.io/v1alpha1
kind: CronWorkflow
metadata:
name: coinflip-cron
spec:
schedule: "* * * * *"
concurrencyPolicy: Forbid
successfulJobsHistoryLimit: 1
failedJobsHistoryLimit: 1
startingDeadlineSeconds: 0
workflowSpec:
entrypoint: coinflip
templates:
- name: coinflip
steps:
- -