本文由簡體中文內容自動轉碼而成。阿里雲不保證此自動轉碼的準確性、完整性及時效性。本文内容請以簡體中文版本為準。

批量任務編排概述

更新時間:2024-12-20 20:21

在批量資料處理、機器學習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、準備工作

  1. 開通ACK服務,請參見開通授權並建立ACK叢集

  2. 建立ACK叢集,請參見建立ACK託管叢集

2、搭建環境

  1. 您需要安裝Argo Workflows組件,在叢集中啟用批量任務編排能力。

  2. ACK提供阿里雲Argo CLI或Argo控制台兩種方式來建立和管理工作流程工作。

    • Argo CLI:安裝Argo CLI。

    • Argo控制台:擷取訪問Argo Server所需的Token,存取控制台。

具體操作,請參見啟用批量任務編排能力

3、管理工作流程

(資料工程師)編排並行任務後,您可以通過Argo CLI或Argo控制台進行任務的提交和管理。

  • 基礎使用:如果您是新手使用者,可以參見建立工作流程快速體驗如何在ACK叢集中建立一個工作流程。

  • 進階使用:針對特定業務情境,例如動態DAG Fan-out/Fan-in任務、基因計算工作裡、批量資料處理等,您可以參見最佳實務瞭解解決方案。

(叢集管理員)

  • 管理叢集的資源配額、許可權隔離等。例如,您可以指定不同工作流程運行在不同的命名空間下,請參見向特定命名空間提交工作流程

  • 檢測工作流程的運行狀態,例如將工作流程日誌進行持久化儲存等,請參見持久化工作流程

計費說明

批量任務編排功能本身不收取費用。但除ACK常規計費外,使用批量任務編排時,Argo Server會自動建立一個隨用隨付的CLB執行個體,費用由CLB收取,請參見CLB產品計費

聯絡我們

若您有任何產品建議或疑問,請加入DingTalk群(DingTalk群號:35688562)聯絡我們。

  • 本頁導讀 (1, M)
  • Argo Workflows介紹
  • 使用情境
  • Argo Workflows的優勢包括:
  • 使用Argo Workflows
  • 計費說明
  • 聯絡我們
文檔反饋
phone 聯絡我們