全部產品
Search
文件中心

Container Service for Kubernetes:開啟事件驅動觸發工作流程自動運行

更新時間:Sep 15, 2024

工作流程叢集支援事件驅動功能,可通過監控事件觸發工作流程自動運行,您可以使用該功能構建事件驅動的自動化系統。事件驅動支援各種事件來源,包括阿里雲Object Storage Service、阿里雲輕量訊息佇列(原 MNS)、Git代碼倉庫,EventBrige等。

背景資訊

事件驅動功能基於開源Argo Event專案構建,完全符合開源事件驅動標準,方便您將開源事件驅動遷移到工作流程叢集

重點模組說明:

  • Event Source

    Argo Event自訂資源,針對不同的事件來源建立不同的Event Source資源,並觸發建立Event Source Pod擷取事件。

    當前工作流程叢集支援Git、阿里雲Object Storage Service、阿里雲輕量訊息佇列(原 MNS)作為事件來源,如有其他需求,請提交工單申請。

  • Event Bus

    Event Source擷取事件後,會緩衝到Event Bus中。Event Bus支援以下兩種類型:

    • NATS:基於開源NATS構建的使用ECI啟動並執行本地訊息系統。

    • 輕量訊息佇列(原 MNS):通過使用雲上輕量訊息佇列(原 MNS)緩衝事件,如果您已經使用輕量訊息佇列(原 MNS),可以建立一個輕量訊息佇列(原 MNS)作為Event Bus。

  • Event Sensor

    從Event Bus中讀取事件,按照定義的規則過濾事件,並觸發工作流程的運行。您可以參考開源Argo Event設定Sensor Trigger條件、轉換、過濾器等。

    Event Sensor僅支援觸發建立Argo工作流程,如果有其他需求,請提交工單申請。

計費說明

以下資源建立會涉及ECI執行個體計費,具體計費資訊,請參見ECI計費概述

  • 建立Event Source後,會觸發建立一個Event Source Pod,並以ECI執行個體運行。

  • 使用NATS方式建立Event Bus會建立一個Event Bus Pod,並以ECI執行個體運行。

  • 建立Event Sensor後,會建立一個Event Sensor Pod,並以ECI執行個體運行。

前提條件

操作步驟

  1. 擷取工作流程叢集的ID。

    • 通過命令列方式擷取。

    aliyun adcp DescribeHubClusters --Profile=XFlow
  2. 執行以下命令開啟事件驅動功能。

    aliyun adcp UpdateHubClusterFeature --ArgoEventsEnabled true --ClusterId ***
    重要

    請將ClusterId後的***替換為您在步驟1中實際擷取的工作流程叢集ID。

  3. 等待一段時間後,執行以下命令查看叢集的詳細資料。

    aliyun adcp DescribeHubClusterDetails --ClusterId ***
  4. 在返回結果中查看Condition類型為EnabledArgoEvents的狀態為True,表示事件驅動功能開啟成功。

    預期結果如下:

     {
                                    "Message": "",
                                    "Reason": "",
                                    "Status": "True",
                                    "Type": "EnabledArgoEvents"
                            }

後續操作

開啟事件驅動工作流程功能後,您可以使用OSS事件觸發工作流程,或者通過輕量訊息佇列(原 MNS)觸發工作流程。具體操作如下: