工作流程叢集支援事件驅動功能,可通過監控事件觸發工作流程自動運行,您可以使用該功能構建事件驅動的自動化系統。事件驅動支援各種事件來源,包括阿里雲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執行個體運行。
前提條件
操作步驟
-
擷取工作流程叢集的ID。
-
通過命令列方式擷取。
aliyun adcp DescribeHubClusters --Profile=XFlow-
通過控制台方式擷取。
登入工作流程叢集控制台,在工作流程叢集頁面的基礎資訊頁簽中擷取叢集ID。
-
-
執行以下命令開啟事件驅動功能。
aliyun adcp UpdateHubClusterFeature --ArgoEventsEnabled true --ClusterId ***重要請將ClusterId後的***替換為您在步驟1中實際擷取的工作流程叢集ID。
-
等待一段時間後,執行以下命令查看叢集的詳細資料。
aliyun adcp DescribeHubClusterDetails --ClusterId *** -
在返回結果中查看Condition類型為
EnabledArgoEvents的狀態為True,表示事件驅動功能開啟成功。預期結果如下:
{ "Message": "", "Reason": "", "Status": "True", "Type": "EnabledArgoEvents" }
後續操作
開啟事件驅動工作流程功能後,您可以使用OSS事件觸發工作流程,或者通過輕量訊息佇列(原 MNS)觸發工作流程。具體操作如下: