本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
(可選)設置 Amazon SNS 以接收有關的通知 OpsItems
您可以設定OpsCenter為在系統建立OpsItem或更新現有主題時,將通知傳送至 Amazon 簡單通知服務 (AmazonSNS) 主題OpsItem。
完成下列步驟以接收 OpsItems 的通知。
-
注意
如果您在步驟 2 中開啟 AWS Key Management Service (AWS KMS) 伺服器端加密,則必須完成步驟 3。否則,可以略過步驟 3。
第 1 步:創建和訂閱 Amazon SNS 主題
若要接收通知,您必須建立並訂閱 Amazon SNS 主題。如需詳細資訊,請參閱 Amazon SNS 簡單通知服務開發人員指南中的建立 Amazon SNS 主題和訂閱 Amazon 主題。
注意
如果您OpsCenter在多個帳戶 AWS 區域 或帳戶中使用,則必須在要接收OpsItem通知的每個區域或帳戶中建立並訂閱 Amazon SNS 主題。
步驟 2:更新 Amazon SNS 訪問政策
您必須將 Amazon SNS 主題與OpsItems. 使用下列程序設定 Amazon SNS 存取政策,以便 Systems Manager 可以將OpsItems通知發佈到您在步驟 1 中建立的 Amazon SNS 主題。
登錄 AWS Management Console 並在 https://console.aws.amazon.com/sns/v3/
home 上打開 Amazon SNS 控制台。 -
在導覽窗格中,選擇主題。
-
選擇在步驟 1 中建立的主題,然後選擇編輯。
-
展開 Access policy (存取政策)。
-
將以下
Sid
區塊新增至現有的政策。替換每個example resource placeholder
使用您自己的信息。{ "Sid": "Allow OpsCenter to publish to this topic", "Effect": "Allow", "Principal": { "Service": "ssm.amazonaws.com" }, "Action": "SNS:Publish", "Resource": "arn:aws:sns:
region
:account ID
:topic name
", // Account ID of the SNS topic owner "Condition": { "StringEquals": { "AWS:SourceAccount": "account ID
" // Account ID of the OpsItem owner } } }注意
aws:SourceAccount
全域條件金鑰可防止混淆代理人情境。若要使用此條件金鑰,請將值設定為相應 OpsItem 擁有者的帳戶 ID。如需詳細資訊,請參閱《IAM使用指南》中的「混淆代理」。 -
選擇 Save changes (儲存變更)。
現在,系統會在建立或更新 Amazon SNS 主題時OpsItems傳送通知。
重要
如果您在步驟 2 中使用 AWS Key Management Service (AWS KMS) 伺服器端加密金鑰設定 Amazon SNS 主題,請完成步驟 3。否則,可以略過步驟 3。
步驟 3:更新 AWS KMS 存取政策
如果您為 Amazon SNS 主題開啟了 AWS KMS 伺服器端加密,則還必須更新設定主題時所選擇的存取政策。 AWS KMS key 使用下列程序更新存取政策,以便 Systems Manager 可以將OpsItem通知發佈到您在步驟 1 中建立的 Amazon SNS 主題。
注意
OpsCenter不支援 Amazon SNS 佈OpsItems到使用 AWS 受管金鑰.
-
在 https://console.aws.amazon.com/kms
處開啟 AWS KMS 主控台。 -
若要變更 AWS 區域,請使用頁面右上角的「地區」選取器。
-
在導覽窗格中,選擇 Customer managed keys (客戶受管金鑰)。
-
選擇您在建立主題時選擇的KMS金鑰 ID。
-
在 Key policy (金鑰政策) 區段中,選擇 Switch to policy view (切換至政策檢視)。
-
選擇編輯。
-
將以下
Sid
區塊新增至現有的政策。替換每個example resource placeholder
使用您自己的信息。{ "Sid": "Allow OpsItems to decrypt the key", "Effect": "Allow", "Principal": { "Service": "ssm.amazonaws.com" }, "Action": ["kms:Decrypt", "kms:GenerateDataKey*"], "Resource": "arn:aws:kms:
region
:account ID
:key/key ID
" }在以下範例中,第 14 行輸入新區塊。
-
選擇 Save changes (儲存變更)。
步驟 4:開啟預設 OpsItems 規則以傳送有關新 OpsItems 的通知
Amazon 中的默認OpsItems規則 EventBridge 未使用 Amazon SNS 通知的 Amazon 資源名稱(ARN)配置。使用下列程序編輯中的規則 EventBridge 並輸入notifications
區塊。
將通知區塊新增至預設 OpsItem 規則
在開啟 AWS Systems Manager 主控台https://console.aws.amazon.com/systems-manager/
。 -
在導覽窗格中,選擇 OpsCenter。
-
選擇 OpsItems 索引標籤,然後選擇 Configure sources (設定來源)。
-
選擇您要以
notifications
區塊設定的來源規則名稱,如下列範例所示。該規則在 Amazon 中打開 EventBridge。
-
在規則詳細資訊頁面的 Targets (目標) 索引標籤上,選擇 Edit (編輯)。
-
在 Additional settings (其他設定) 區段中,選擇 Configure input transformer (設定輸入轉換器)。
-
在範本方塊中,以下列格式新增
notifications
區塊。"notifications":[{"arn":"arn:aws:sns:
region
:account ID
:topic name
"}],範例如下。
"notifications":[{"arn":"arn:aws:sns:us-west-2:1234567890:MySNSTopic"}],
在區塊之前輸入通知
resources
區塊,如下列範例中美國西部 (奧勒岡) (us-west-2) 區域所示。{ "title": "EBS snapshot copy failed", "description": "CloudWatch Event Rule SSMOpsItems-EBS-snapshot-copy-failed was triggered. Your EBS snapshot copy has failed. See below for more details.", "category": "Availability", "severity": "2", "source": "EC2", "notifications": [{ "arn": "arn:aws:sns:us-west-2:1234567890:MySNSTopic" }], "resources": <resources>, "operationalData": { "/aws/dedup": { "type": "SearchableString", "value": "{\"dedupString\":\"SSMOpsItems-EBS-snapshot-copy-failed\"}" }, "/aws/automations": { "value": "[ { \"automationType\": \"AWS:SSM:Automation\", \"automationId\": \"AWS-CopySnapshot\" } ]" }, "failure-cause": { "value": <failure - cause> }, "source": { "value": <source> }, "start-time": { "value": <start - time> }, "end-time": { "value": <end - time> } } }
-
選擇確認。
-
選擇 Next (下一步)。
-
選擇 Next (下一步)。
-
選擇更新規則。
下次系統為預設規則OpsItem建立時,會向 Amazon SNS 主題發佈通知。