本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 Amazon EventBridge 排程器啟動 Step Functions 狀態機器執行
Amazon EventBridge Scheduler 是無伺服器排程器,可讓您從單一中央受管服務建立、執行和管理任務。使用 EventBridge Scheduler,您可以使用循環模式的 cron 和速率運算式來建立排程,或設定一次性呼叫。您可以設定彈性的傳送時間範圍、定義重試限制,以及設定失敗API呼叫的最長保留時間。
例如,使用 EventBridge Scheduler,您可以在發生安全性相關事件時按排程啟動狀態機器執行,或將資料處理工作自動化。
本頁說明如何使用「 EventBridge 排程器」,按排程開始執行「Step Functions」狀態機器。
設定執行角色
當您建立新排程時, EventBridge 排程器必須具有代表您呼叫其目標API作業的權限。您可以使用執行角色將這些權限授與 EventBridge 「排程器」。排程執行角色所連接的許可政策會定義哪些是必要許可。這些權限取決於API您希望 EventBridge 排程器呼叫的目標。
當您使用「 EventBridge 排程器」主控台建立排程時,如下列程序所示, EventBridge Scheduler 會根據您選取的目標自動設定執行角色。如果您想要使用其中一個排 EventBridge 程器SDKs、或來建立排程 AWS CLI AWS CloudFormation,您必須具有現有的執行角色,以授與 EventBridge 排程器呼叫目標所需的權限。如需有關手動設定排程執行角色的詳細資訊,請參閱《EventBridge 排程器使用指南》中的 < 設定執行角色 >。
建立排程
使用主控台建立排程
在https://console.aws.amazon.com/scheduler/家
中打開 Amazon EventBridge 調度程序控制台。 -
在排程頁面上,選擇建立排程。
-
在指定排程詳細資訊頁面的排程名稱和描述區段中,執行以下動作:
-
在排程名稱中,輸入排程的名稱,例如:
MyTestSchedule
。 -
(選用) 在描述中,輸入對排程的描述,例如:
My first schedule
。 -
針對排程群組,從下拉式清單中選擇排程群組。如果您沒有群組,請選擇預設值。若要建立排程群組,請選擇建立自己的排程。
您可以使用排程群組,為不同群組的排程加上標籤。
-
-
-
選擇排程選項。
頻率 執行此作業... 一次性排程
一次性排程只會在您指定的日期與時間調用目標一次。
針對日期和時間執行以下動作:
-
依
YYYY/MM/DD
格式輸入有效日期。 -
依
hh:mm
格式輸入時間戳記 (24 小時)。 -
針對時區選擇時區。
週期性排程
週期性排程會依您指定的頻率,使用 cron 或 Rate 運算式調用目標。
-
在排程模式中,執行下列其中一項動作:
-
若要使用 Cron 運算式定義排程,請選擇 Cron 排程,然後輸入 Cron 運算式。
-
若要使用 Rate 表達式定義排程,請選擇 Rate 排程,然後輸入 Rate 表達式。
如需 Cron 和費率運算式的詳細資訊,請參閱 Amazon 排程器使用者指南中的 EventBridge 排程器上的 EventBridge 排程類型。
-
-
對於彈性時段,選擇關閉可關閉此選項,或者也能選擇其中一個預先定義的時間範圍。例如,如果您選擇 15 分鐘並設定週期性排程,每小時調用目標一次,則排程會在每小時一開始的 15 分鐘內執行。
-
-
-
(選用) 如果您在上一個步驟中選擇週期性排程,請在時間範圍區段執行以下動作:
-
針對時區選擇時區。
-
對於開始日期和時間,依
YYYY/MM/DD
格式輸入有效日期,接著依 24 小時的hh:mm
格式指定時間戳記。 -
對於結束日期和時間,依
YYYY/MM/DD
格式輸入有效日期,接著依 24 小時的hh:mm
格式指定時間戳記。
-
-
選擇 Next (下一步)。
-
在「選取目標」 頁面上,選擇「 EventBridge 排程器」呼叫的 AWS API作業:
-
選擇AWS Step Functions StartExecution。
-
在StartExecution區段中,選取狀態機或選擇建立新狀態機。
目前,您無法依排程執行「同步快速」工作流程。
-
輸入執行的JSON承載。即使您的狀態機不需要任何JSON裝載,您仍必須依照下列範例所示的JSON格式包含輸入。
{ "Comment": "sampleJSONData" }
-
-
選擇 Next (下一步)。
-
在設定頁面執行以下動作:
-
若要開啟排程,請在排程狀態底下切換到啟用排程。
-
若要設定排程的重試原則,請在重試原則和無效字母佇列 (DLQ) 下,執行下列動作:
-
切換到重試。
-
針對事件的保留時間上限,輸入 EventBridge 排程器必須保留未處理事件的最大小時數和最小時數。
-
時間最長可設為 24 小時。
-
針對重試次數上限,輸入目標傳回錯誤時, EventBridge 排程器重試排程的次數上限。
最大值為重試 185 次。
使用重試原則時,如果排程無法呼叫其目標, EventBridge 排程器會重新執行排程。一旦設定此功能,您就必須設定排程的最長保留時間和重試次數。
-
-
選擇 EventBridge 排程器儲存未傳遞事件的位置。
無效字母佇列 () DLQ 選項 執行此作業... 不儲存 選擇無。 將活動儲存在建立排程的相同 AWS 帳戶 位置 -
選擇選擇一個 Amazon SQS 隊列在我 AWS 帳戶 作為一個DLQ.
-
選擇 Amazon SQS 隊列的 Amazon 資源名稱(ARN)。
將活動儲存在與建立排程不同 AWS 帳戶 的位置 -
選擇 AWS 帳戶 將其他 Amazon SQS 佇列指定為DLQ。
-
輸入 Amazon SQS 隊列的 Amazon 資源名稱(ARN)。
-
-
若要使用由客戶管理的金鑰加密您的目標輸入,請在加密底下選擇自訂加密設定 (進階)。
如果您選擇此選項,請輸入現有的KMS金鑰ARN或選擇 [建立] AWS KMS key以瀏覽主 AWS KMS 控台。如需 EventBridge 排程器如何加密靜態資料的詳細資訊,請參閱 Amazon EventBridge 排程器使用者指南中的靜態加密。
-
若要讓 EventBridge 排程器為您建立新的執行角色,請選擇 [為此排程建立新角色]。接著輸入角色名稱。如果您選擇此選項, EventBridge Scheduler 會將範本化目標所需的必要權限附加至角色。
-
-
選擇 Next (下一步)。
-
在檢閱和建立排程頁面上,檢閱排程的詳細資訊。在每個區段中選擇編輯,即可返回該步驟並編輯其詳細資訊。
-
選擇建立排程。
您可以在排程頁面檢視新建立和現有的排程。在狀態欄底下,確認您的新排程狀態為已啟用。
若要確認 EventBridge 排程器是否呼叫狀態機器,請檢查狀態機器的 Amazon CloudWatch 記錄。
相關資源
如需有關 EventBridge 排程器的詳細資訊,請參閱下列內容: