工作流程叢集支援事件驅動功能,可通過監控事件觸發工作流程自動運行,您可以使用該功能構建事件驅動的自動化系統。事件驅動支援各種事件來源,包括阿里雲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)觸發工作流程。具體操作如下: