在批量資料處理、機器學習Pipeline、基礎設施自動化、CI/CD等情境中,傳統的批量任務編排、流程式編排等系統並不能很好地應對日益複雜的任務編排情境,也無法支撐自動化拓展需求。阿里雲提供了相容雲原生工作流程引擎Argo Workflows的組件,協助您降低批量任務的編排複雜度。
Argo Workflows介紹
Argo Workflows是一個強大的雲原生工作流程引擎,專門用於在Kubernetes中定義、管理和調度複雜的工作流程。工作流程可以包含多個任務,任務之間可以存在依賴關係,這種靈活性降低了任務配置的複雜度。
使用情境
Argo Workflows可支援批量資料處理、機器學習Pipeline、基礎設施自動化、CI/CD等情境,廣泛應用於自動駕駛、科學計算、金融量化、數位媒體等行業。
批量資料處理:典型應用情境包括大規模高精地圖處理、金融量化回測模擬、並行音視頻處理、動畫渲染等。
科學計算:典型應用情境包括複雜科學計算類比模擬、藥物研發訓練、基因測序、變異比對檢測、能源勘探等。
類比模擬:典型應用情境包括自動駕駛演算法模擬、分子動力學類比、天文資料類比模擬、金融建模等。
機器學習Pipeline:典型應用情境包括機器學習資料預先處理、分布式訓練、大模型參數調優、模型評估部署等。
基礎設施自動化:典型應用情境包括雲資源自動化管理、資源備份與恢複、節點池遷移、叢集遷移升級等。
CI/CD:典型應用情境包括並行CI Pipeline、多階段構建和測試、跨雲的應用部署、審批次程序整合等。
Argo Workflows的優勢包括:
雲原生:專為Kubernetes而設計,每個任務都是一個Pod,充分利用了容器的輕量級和靈活性。
輕量可擴充:輕量化,與傳統虛擬機器(VM)相比,沒有額外的開銷和限制。藉助Kubernetes的調度能力,可並行啟動數千個任務,提高處理效率。
靈活的編排能力:基於DAG和Step的靈活組合能夠支援定製任意複雜的工作流程邏輯,並且藉助強大的重試和緩衝機制,提升工作流程的運行成功率。
豐富的生態:支援編排各種類型任務,包括Spark、Ray、TensorFlow Job等。結合事件驅動,可以構建全自動化的任務處理平台。
使用Argo Workflows
ACK Argo Workflows相容社區Argo Workflows並在開源基礎上進行增強,您無需修改現有Argo工作流程即可實現無縫遷移。ACK的Argo Workflows相比開源基礎之上有如下優勢:
高度彈性,自動擴充,最佳化計算成本。
可靠性高,多可用性區域負載平衡,調度可靠性高。
增強控制面,規模,效能、效率、穩定性、可觀測性大幅提升。
OSS儲存管理增強,支援大檔案上傳、Artifacts GC、串流。
Container Service技術專家支援,協助您的業務團隊最佳化工作流程,有效提升運行效能、降低成本。
ACK Argo Workflows提供兩種使用方式,以滿足不同使用者的需求:
Serverless Argo Workflows:若您希望免營運,專註於商務程序編排,並且有大規模、高效能等需求,您需要構建單獨的工作流程叢集,詳細操作,請參見Serverless Argo Workflows。
Argo Workflows組件on ACK:若您已經擁有ACK叢集,希望利用已有叢集資源,可以使用Argo Workflows組件來編排自己的業務工作流程。本文主要介紹Argo Workflows 組件在ACK叢集上的使用。
安裝Argo Workflows組件後,您便可啟用批量任務編排能力。您可以通過阿里雲Argo CLI或Argo控制台提交和管理工作流程。
不同角色的流程大體如下。
流程 | 說明 |
1、準備工作 | 開通ACK服務,請參見開通授權並建立ACK叢集。 建立ACK叢集,請參見建立ACK託管叢集。
|
2、搭建環境 | 您需要安裝Argo Workflows組件,在叢集中啟用批量任務編排能力。 ACK提供阿里雲Argo CLI或Argo控制台兩種方式來建立和管理工作流程工作。
具體操作,請參見啟用批量任務編排能力。 |
3、管理工作流程 | (資料工程師)編排並行任務後,您可以通過Argo CLI或Argo控制台進行任務的提交和管理。 |
(叢集管理員) |
計費說明
批量任務編排功能本身不收取費用。但除ACK常規計費外,使用批量任務編排時,Argo Server會自動建立一個隨用隨付的CLB執行個體,費用由CLB收取,請參見CLB產品計費。
聯絡我們
若您有任何產品建議或疑問,請加入DingTalk群(DingTalk群號:35688562)聯絡我們。