手動建立 OpsItems - AWS Systems Manager

手動建立 OpsItems

本節包含如何手動在 AWS Systems Manager OpsCenter 中建立 OpsItems。

開始之前

當手動建立 OpsItem 時,您可以為受影響的資源指定 Amazon Resource Name (ARN)。如果指定 ARN,則 OpsCenter 會自動建立資源詳細資訊的深度連結。例如,如果您指定受影響之 Amazon EC2 執行個體的 ARN,則 OpsCenter 會建立該執行個體詳細資訊的深度連結。如需如何建立 ARN 的詳細資訊,請參閱《Amazon Web Services 一般參考》中的 Amazon Resource Name (ARN) 與 AWS 服務命名空間

注意

OpsCenter 不支援建立所有 ARN 類型的深度連結。若要檢視根據 ARN 支援深度連結的資源清單,請參閱 支援的資源參考

使用主控台建立 OpsItems

下列處理程序說明如何使用 Systems Manager 主控台來建立 OpsItem。

使用主控台手動建立 OpsItem

  1. 開啟位於 AWS Systems Managerhttps://console.aws.amazon.com/systems-manager/ 的 主控台。https://console.aws.amazon.com/systems-manager/

  2. 在導覽窗格中,選擇 OpsCenter

  3. 選擇 Create OpsItem (建立 OpsItem)。如果您沒有看到此按鈕,請選擇 (OpsItems) 索引標籤,然後選擇 Create (建立 OpsItem)

  4. 針對 Title (標題),輸入描述名稱,協助您了解 OpsItem 的用途。

  5. 對於 Source (來源),輸入受影響的 AWS 資源類型或其他來源資訊,協助使用者了解 OpsItem 的根源。

    注意

    建立 OpsItem 後,您不能編輯 Source (來源) 欄位。

  6. (選用) 對於 Priority (優先順序),選擇優先順序層級。

  7. (選用) 對於 Severity (嚴重性),選擇嚴重性層級。

  8. (選用) 對於 Category (類別),選擇類別。

  9. 針對 Description (描述),輸入此 OpsItem 的資訊,包括 (如合適) 重現問題的步驟。

  10. 對於 Deduplication string (重複資料刪除字串),輸入單詞系統應用來檢查重複 OpsItems 的單字。如需重複資料刪除字串的詳細資訊,請參閱減少重複的 OpsItems

  11. (選用) 對於 Notifications (通知),指定當此 OpsItem 更新時通知傳送目標的 Amazon SNS 主題 ARN。您必須指定和 OpsItem 同一 AWS 區域 的 Amazon SNS ARN。

  12. (選用) 在 Related resources (相關資源) 下,選擇 Add (新增) 指定受影響資源和任何相關資源的 ID 或 Amazon Resource Name (ARN)。

  13. 選擇 Create OpsItem (建立 OpsItem)。

如果成功,即會開啟 OpsItem。如需如何在 OpsItem 中設定選項的資訊,請參閱 使用 OpsItems

透過使用 AWS CLI 建立 OpsItems

下列處理程序說明如何使用 AWS Command Line Interface (AWS CLI) 建立 OpsItem。

透過使用 AWS CLI 手動建立 OpsItem

  1. 如果您尚未安裝並設定 AWS Command Line Interface (AWS CLI),請進行相應的操作。

    如需相關資訊,請參閱安裝或升級 AWS 命令列工具

  2. 開啟 AWS Command Line Interface (AWS CLI) 並執行以下命令來建立 OpsItem。

    aws ssm create-ops-item --title "Descriptive_title" --description "Information_about_the_issue" --priority Number_between_1_and_5 --source Source_of_the_issue --operational-data Up_to_20_KB_of_data_or_path_to_JSON_file --notifications Arn="SNS_ARN_in_same_Region" --tags "Key=key_name,Value=a_value"

    請見下方範例。

    Linux 管理入口網站 macOS

    aws ssm create-ops-item --title "EC2 instance disk full" --description "Log clean up may have failed which caused the disk to be full" --priority 2 --source ec2 --operational-data '{"EC2":{"Value":"12345","Type":"SearchableString"}}' --notifications Arn="arn:aws:sns:us-west-1:12345678:TestUser1" --tags "Key=EC2,Value=ProductionServers"

    以下命令會在 OperationalData 中使用 /aws/resources 金鑰,來建立含 Amazon DynamoDB 相關資源的 OpsItem。

    aws ssm create-ops-item --title "EC2 instance disk full" --description "Log clean up may have failed which caused the disk to be full" --priority 2 --source ec2 --operational-data '{"/aws/resources":{"Value":"[{\"arn\": \"arn:aws:dynamodb:us-west-2:12345678:table/OpsItems\"}]","Type":"SearchableString"}}' --notifications Arn="arn:aws:sns:us-west-2:12345678:TestUser"

    以下命令會在 OperationalData 中使用 /aws/automations 金鑰,來建立可將 AWS-ASGEnterStandby 文件指定為相關聯的 Automation Runbook 的 OpsItem。

    aws ssm create-ops-item --title "EC2 instance disk full" --description "Log clean up may have failed which caused the disk to be full" --priority 2 --source ec2 --operational-data '{"/aws/automations":{"Value":"[{\"automationId\": \"AWS-ASGEnterStandby\", \"automationType\": \"AWS::SSM::Automation\"}]","Type":"SearchableString"}}' --notifications Arn="arn:aws:sns:us-west-2:12345678:TestUser"

    Windows

    aws ssm create-ops-item --title "RDS instance not responding" --description "RDS instance not responding to ping" --priority 1 --source RDS --operational-data={\"RDS\":{\"Value\":\"abcd\",\"Type\":\"SearchableString\"}} --notifications Arn="arn:aws:sns:us-west-1:12345678:TestUser1" --tags "Key=RDS,Value=ProductionServers"

    以下命令在 OperationalData 中使用 /aws/resources 索引鍵,建立含 EC2 執行個體相關資源的 OpsItem。

    aws ssm create-ops-item --title "EC2 instance disk full" --description "Log clean up may have failed which caused the disk to be full" --priority 2 --source ec2 --operational-data={\"/aws/resources\":{\"Value\":\"[{\\"""arn\\""":\\"""arn:aws:ec2:us-east-1:123456789012:instance/i-1234567890abcdef0\\"""}]\",\"Type\":\"SearchableString\"}}

    以下命令會在 OperationalData 中使用 /aws/automations 金鑰,來建立可將 AWS -RestartEC2Instance 文件指定為相關聯的 Automation Runbook 的 OpsItem。

    aws ssm create-ops-item --title "EC2 instance disk full" --description "Log clean up may have failed which caused the disk to be full" --priority 2 --source ec2 --operational-data={\"/aws/automations\":{\"Value\":\"[{\\"""automationId\\""":\\"""AWS-RestartEC2Instance\\”"",\\"""automationType\\""":\\"""AWS::SSM::Automation\\"""}]\",\"Type\":\"SearchableString\"}}

    從檔案指定營運資料

    當您建立 OpsItem 時,您可以從檔案指定營運資料。這個檔案必須是 JSON 檔案,且檔案內容必須使用以下格式:

    { "key_name": { "Type": "SearchableString", "Value": "Up to 20 KB of data" } }

    請見此處範例。

    aws ssm create-ops-item --title "EC2 instance disk full" --description "Log clean up may have failed which caused the disk to be full" --priority 2 --source ec2 --operational-data file:///Users/TestUser1/Desktop/OpsItems/opsData.json --notifications Arn="arn:aws:sns:us-west-1:12345678:TestUser1" --tags "Key=EC2,Value=Production"
    注意

    如需如何在不同的本機作業系統的命令列輸入 JSON 格式參數的資訊,請參閱《AWS Command Line Interface 使用者指南》中的在 AWS CLI 中搭配字串使用引號

    系統會傳回相關資訊,如下所示。

    {
        "OpsItemId": "oi-1a2b3c4d5e6f"
    }
  3. 執行以下命令來檢視您建立的 OpsItem 詳細資訊。

    aws ssm get-ops-item --ops-item-id ID

    系統會傳回相關資訊,如下所示。

    {
        "OpsItem": {
            "CreatedBy": "arn:aws:iam::12345678:user/TestUser",
            "CreatedTime": 1558386334.995,
            "Description": "Log clean up may have failed which caused the disk to be full",
            "LastModifiedBy": "arn:aws:iam::12345678:user/TestUser",
            "LastModifiedTime": 1558386334.995,
            "Notifications": [
                {
                    "Arn": "arn:aws:sns:us-west-1:12345678:TestUser"
                }
            ],
            "Priority": 2,
            "RelatedOpsItems": [],
            "Status": "Open",
            "OpsItemId": "oi-1a2b3c4d5e6f",
            "Title": "EC2 instance disk full",
            "Source": "ec2",
            "OperationalData": {
                "EC2": {
                    "Value": "12345",
                    "Type": "SearchableString"
                }
            }
        }
    }
  4. 執行下列命令以更新 OpsItem。此命令會將狀態從 Open (預設值) 變更成 InProgress

    aws ssm update-ops-item --ops-item-id ID --status InProgress

    此命令無輸出。

  5. 再次執行以下命令,驗證狀態已變更為 InProgress

    aws ssm get-ops-item --ops-item-id ID

透過使用 AWS Tools for Windows PowerShell 建立 OpsItems

  1. 開啟 AWS Tools for Windows PowerShell 並執行以下命令,以指定您的登入資料。

    Set-AWSCredentials –AccessKey key-name –SecretKey key-name
  2. 執行下列命令,以設定 PowerShell 工作階段的區域。

    Set-DefaultAWSRegion -Region Region
  3. 執行下列命令以建立新的 OpsItem。這個命令會指定 Systems Manager Automation Runbook 來修復此 OpsItem。

    $opsItem = New-Object Amazon.SimpleSystemsManagement.Model.OpsItemDataValue $opsItem.Type = [Amazon.SimpleSystemsManagement.OpsItemDataType]::SearchableString $opsItem.Value = '[{\"automationId\":\"runbook_name\",\"automationType\":\"AWS::SSM::Automation\"}]' $newHash = @{" /aws/automations"=[Amazon.SimpleSystemsManagement.Model.OpsItemDataValue]$opsItem} New-SSMOpsItem -Title "title" -Description "description" -Priority priority_number -Source AWS_service -OperationalData $newHash

    如果成功,命令會輸出新 OpsItem 的 ID。

    以下範例指定受損 Amazon EC2 執行個體的 ARN。

    $opsItem = New-Object Amazon.SimpleSystemsManagement.Model.OpsItemDataValue $opsItem.Type = [Amazon.SimpleSystemsManagement.OpsItemDataType]::SearchableString $opsItem.Value = '[{\"arn\":\"arn:aws:ec2:us-east-1:123456789012:instance/i-1234567890abcdef0\"}]' $newHash = @{" /aws/resources"=[Amazon.SimpleSystemsManagement.Model.OpsItemDataValue]$opsItem} New-SSMOpsItem -Title "EC2 instance disk full still" -Description "Log clean up may have failed which caused the disk to be full" -Priority 2 -Source ec2 -OperationalData $newHash