本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
在 ARC 中使用區域切換搭配 Amazon EventBridge
使用 Amazon EventBridge,您可以設定事件驅動規則,以監控 Amazon Application Recovery Controller (ARC) 中的區域切換資源,然後啟動使用其他服務的目標動作 AWS 。例如,只要區域切換計劃完成執行,您就可以透過發出 Amazon SNS 主題的訊號來設定傳送電子郵件通知的規則。
您可以在 Amazon EventBridge 中建立規則,以處理下列 ARC 區域切換事件:
-
區域切換計畫執行。事件指定區域切換計劃已執行 (執行)。
-
區域切換計畫評估。事件指定區域切換計畫評估已完成。
若要擷取您感興趣的特定 ARC 事件,請定義 EventBridge 可用來偵測事件的事件特定模式。事件模式的結構與其相符的事件相同。該模式引用您欲比對的欄位,並提供您正在尋找的數值。
盡可能發出事件。在正常操作情況下,它們會以近乎即時的方式從 ARC 交付至 EventBridge。不過,可能會發生延遲或阻止事件交付的情況。
如需 EventBridge 規則如何使用事件模式的詳細資訊,請參閱 EventBridge 中的事件和事件模式。
使用 EventBridge 監控區域切換資源
使用 EventBridge,您可以建立規則,定義 ARC 為區域切換資源發出事件時要採取的動作。
若要在 EventBridge 主控台中輸入或複製事件模式並貼上,請在主控台中選取 以輸入我自己的選項。為了協助您判斷可能對您有用的事件模式,本主題包含範例區域切換模式。
建立資源事件的規則
前往 https://console.aws.amazon.com/events/
開啟 Amazon EventBridge 主控台。 -
若要 AWS 區域 在 中建立規則,請選擇您建立要監控事件之計劃的區域。
-
選擇 Create rule (建立規則)。
-
輸入規則的Name (名稱),或者輸入描述。
-
對於事件匯流排,請保留預設值 。
-
選擇下一步。
-
對於建置事件模式步驟,對於事件來源,請保留預設值 AWS 事件。
-
在範例事件下,選擇輸入我自己的事件。
-
針對範例事件,輸入或複製並貼上事件模式。如需範例,請參閱下一節。
範例區域切換模式
事件模式的結構與其相符的事件相同。該模式引用您欲比對的欄位,並提供您正在尋找的數值。
您可以將本節的事件模式複製並貼到 EventBridge 中,以建立可用來監控 ARC 動作和資源的規則。
下列事件模式提供您可能會在 EventBridge 中用於 ARC 中區域切換功能的範例。
-
從區域切換中選取 PlanExecution 的所有事件。
{ "source": [ "aws.arc-region-switch" ], "detail-type": [ "ARC Region switch Plan Execution" ] }
-
從區域切換選取所有事件以進行 PlanEvaluation。
{ "source": [ "aws.arc-region-switch" ], "detail-type": [ "ARC Region Switch Plan Evaluation" ] }
以下是區域切換計畫執行的範例 ARC 事件:
{ "version": "0", "id": "1111111-bbbb-aaaa-cccc-dddddEXAMPLE", # Random uuid "detail-type": "ARC Region Switch Plan Execution", "source": "aws.arc-region-switch", "account": "111122223333", "time": "2023-11-16T23:38:14Z", "region": "us-east-1", "resources": ["arn:aws:arc-region-switch::111122223333:plan/aaaaaExample"], # planArn "detail": { "version": "0.0.1", "eventType": "ExecutionStarted", "executionId": "bbbbbbEXAMPLE", "executionAction": "activating/deactivating {region}", "idempotencyKey": "1111111-2222-3333-4444-5555555555", # As there is a possibility of dual logging } }
以下是區域切換計畫步驟層級執行的範例 ARC 事件:
{ "version": "0", "id": "1111111-bbbb-aaaa-cccc-dddddEXAMPLE", # Random uuid "detail-type": "ARC Region Switch Plan Execution", "source": "aws.arc-region-switch", "account": "111122223333", "time": "2023-11-16T23:38:14Z", "region": "us-east-1", "resources": ["arn:aws:arc-region-switch::111122223333:plan/aaaaaExample"], # planArn "detail": { "version": "0.0.1", "eventType": "StepStarted", "executionId": "bbbbbbEXAMPLE", "executionAction": "activating/deactivating {region}", "idempotencyKey": "1111111-2222-3333-4444-5555555555", # As there is a possibility of dual logging "stepDetails" : { "stepName": "Routing control step", "resource": ["arn:aws:route53-recovery-control::111122223333:controlpanel/abcdefghiEXAMPLE/routingcontrol/jklmnopqrsEXAMPLE"] } } }
以下是區域切換計畫評估警告的 ARC 事件範例。
對於區域切換計畫評估,會在傳回警告時發出事件。如果未清除警告,則只會每 24 小時發出一次警告事件。清除事件時,不會針對該警告發出其他事件。
{ "version": "0", "id": "05d4d2d5-9c76-bfea-72d2-d4614802adb4", # Random uuid "detail-type": "ARC Region Switch Plan Execution", "source": "aws.arc-region-switch", "account": "111122223333", "time": "2023-11-16T23:38:14Z", "region": "us-east-1", "resources": ["arn:aws:arc-region-switch::111122223333:plan/a2b89be4821bfd1d"], "detail": { "version": "0.0.1", "idempotencyKey": "1111111-2222-3333-4444-5555555555", "metadata": { "evaluationTime" : "timestamp", "warning" : "There is a plan evaluation warning for arn:aws:arc-region-switch::111122223333:plan/a2b89be4821bfd1d. Navigate to the Region switch console to resolve." } } }
指定要用作目標的 CloudWatch 日誌群組
建立 EventBridge 規則時,您必須指定要傳送符合規則之事件的目標。如需 EventBridge 可用目標的清單,請參閱 EventBridge 主控台中可用的目標。您可以新增至 EventBridge 規則的其中一個目標是 Amazon CloudWatch 日誌群組。本節說明將 CloudWatch 日誌群組新增為目標的需求,並提供在建立規則時新增日誌群組的程序。
若要將 CloudWatch 日誌群組新增為目標,您可以執行下列其中一項操作:
建立新的日誌群組
選擇現有的日誌群組
如果您在建立規則時使用主控台指定新的日誌群組,EventBridge 會自動為您建立日誌群組。請確定您用作 EventBridge 規則目標的日誌群組以 開頭/aws/events
。如果您想要選擇現有的日誌群組,請注意,只有開頭為 的日誌群組才會在下拉式功能表中/aws/events
顯示為選項。如需詳細資訊,請參閱《Amazon CloudWatch 使用者指南》中的建立新的日誌群組。
如果您建立或使用 CloudWatch 日誌群組,以使用主控台外部的 CloudWatch 操作做為目標,請確定您已正確設定許可。如果您使用主控台將日誌群組新增至 EventBridge 規則,則日誌群組的資源型政策會自動更新。但是,如果您使用 AWS Command Line Interface 或 AWS SDK 來指定日誌群組,則必須更新日誌群組的資源型政策。下列範例政策說明您必須在日誌群組的資源型政策中定義的許可:
{ "Statement": [ { "Action": [ "logs:CreateLogStream", "logs:PutLogEvents" ], "Effect": "Allow", "Principal": { "Service": [ "events.amazonaws.com", "delivery.logs.amazonaws.com" ] }, "Resource": "arn:aws:logs:region:account:log-group:/aws/events/*:*", "Sid": "TrustEventsToStoreLogEvent" } ], "Version": "2012-10-17" }
您無法使用 主控台為日誌群組設定資源型政策。若要將必要的許可新增至以資源為基礎的政策,請使用 CloudWatch PutResourcePolicy API 操作。然後,您可以使用 describe-resource-policies
為資源事件建立規則並指定 CloudWatch 日誌群組目標
前往 https://console.aws.amazon.com/events/
開啟 Amazon EventBridge 主控台。 -
選擇您要 AWS 區域 在其中建立規則的 。
-
選擇建立規則,然後輸入該規則的任何相關資訊,例如事件模式或排程詳細資訊。
如需建立 EventBridge 規則以進行整備的詳細資訊,請參閱使用 EventBridge 監控整備檢查資源。
在選取目標頁面上,選擇 CloudWatch 做為您的目標。
從下拉式選單中選擇 CloudWatch 日誌群組。