Argo 生態系的介紹
簡單摘要 argo 在 kubernetes 上的相關應用,包含 argo workflow, argo cd, argo rollouts, argo events。不會帶到程式,主要再介紹他們的功能!
For non-member: Link
這篇不會帶來太多的技術,而是專注在講 Argo 相關的元件。以下開始內文啦~
Argo 組織
官網連結:Home | Argo (argoproj.github.io)
Argo 目前是 CNCF 組織下的 incubating 階段。
Argo | Cloud Native Computing Foundation (cncf.io)
知名的專案,先簡單條列個:
- Argo workflow (11067 ⭐️):使用 kuberenetes 組件來構建 DAG 以完成工作排定。
- Argo CD (11067 ⭐️):利用 gitOps 來達成宣告式的佈署設定及自動更新
- Argo Rollouts (1522 ⭐️):多元的佈署策固,提供像是藍綠佈署,金絲雀佈署等等。
- Argo Events (1522⭐️):可自行定義 sensor 觸發及其應對流程
以下就針對這四個元件來介紹~~
Argo workflow
功能介紹
- 透過 Kubernetes CRD 來實作 Argo Workflow
- 適合用在密集的任務,像是 Machine Learning, ETL, Data/Batch Processing, CI/CD 上。比較偏向單次可重覆且有生命週期的任務。
- 因為透過原生的 k8s 來構建,因此速度上會較為快速,且在編寫上也是跟隨 k8s 的格式來撰寫即可
- 提供 go, python, java 的 sdk 來操作 workflow