Argo容器本地工作流引擎
Argo 是一個開源的容器本地工作流引擎,用于在Kubernetes上完成工作。 Argo實現(xiàn)為Kubernetes CRD(自定義資源定義)。
-
定義工作流中每個步驟都是容器的工作流。
-
將多步驟工作流建模為一系列任務(wù),或使用圖形(DAG)捕獲任務(wù)之間的依賴關(guān)系。
-
使用Kubernetes上的Argo工作流程,可以在很短的時間內(nèi)輕松運行計算密集型作業(yè),以進行機器學(xué)習(xí)或數(shù)據(jù)處理。
-
在Kubernetes上本地運行CI / CD管道,無需配置復(fù)雜的軟件開發(fā)產(chǎn)品。
架構(gòu)圖:
為何選擇Argo?
Argo專為容器而設(shè)計,沒有傳統(tǒng)VM和基于服務(wù)器的環(huán)境的開銷和限制。
Argo是云不可知的,可以在任何kubernetes集群上運行。
Argo with Kubernetes讓云量級的超級計算機觸手可及。
特征
-
DAG或基于步驟的工作流聲明
-
工件支持(S3,Artifactory,HTTP,Git,raw)
-
步級輸入和輸出(工件/參數(shù))
-
循環(huán)
-
參數(shù)
-
條件語句
-
超時(步驟和工作流程級別)
-
重試(步驟和工作流程級別)
-
重新提交(備忘錄)
-
暫停和恢復(fù)
-
消除
-
K8s資源編排
-
退出掛鉤(通知,清理)
-
已完成工作流的垃圾收集
-
調(diào)度(親和/容忍/節(jié)點選擇器)
-
卷(短暫的/現(xiàn)有的)
-
并行性限制
-
守護步驟
-
DinD(碼頭工具碼頭)
-
腳本步驟
項目資源
-
Argo GitHub: https://github.com/argoproj
-
Argo Slack: click here to join
-
Argo website: https://argoproj.github.io/
-
Argo forum: https://groups.google.com/forum/#!forum/argoproj
