Manuelles Erstellen von OpsItems (AWS CLI) - AWS Systems Manager

Manuelles Erstellen von OpsItems (AWS CLI)

Im folgenden Verfahren wird das Erstellen eines OpsItem über die AWS Command Line Interface (AWS CLI) beschrieben.

Erstellen eines OpsItem mithilfe der AWS CLI
  1. Installieren und konfigurieren Sie AWS Command Line Interface (AWS CLI), wenn noch nicht erfolgt.

    Weitere Informationen finden Sie unter Installieren oder Aktualisieren der neuesten Version von AWS CLI.

  2. Öffnen Sie die AWS CLI und führen Sie den folgenden Befehl aus, um ein OpsItem zu erstellen. Ersetzen Sie jeden Beispiel Platzhalter für Ressourcen mit Ihren eigenen Informationen.

    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"

    Angabe von Betriebsdaten aus einer Datei

    Wenn Sie ein OpsItem erstellen, können Sie Betriebsdaten aus einer Datei angeben. Die Datei muss eine JSON-Datei sein, und der Inhalt der Datei muss das folgende Format aufweisen.

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

    Ein Beispiel.

    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"
    Anmerkung

    Informationen zur Eingabe von JSON-formatierten Parametern in der Befehlszeile verschiedener lokaler Betriebssysteme finden Sie unter Verwenden von Anführungszeichen mit Zeichenfolgen in der AWS CLI im AWS Command Line Interface-Benutzerhandbuch.

    Das System gibt unter anderem folgende Informationen zurück

    {
        "OpsItemId": "oi-1a2b3c4d5e6f"
    }
  3. Führen Sie den folgenden Befehl aus, um Details zu dem von Ihnen erstellten OpsItem anzuzeigen.

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

    Das System gibt unter anderem folgende Informationen zurück

    {
        "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. Führen Sie den folgenden Befehl aus, um das OpsItem zu aktualisieren. Dieser Befehl ändert den Status von Open (Standardwert) zu InProgress.

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

    Der Befehl hat keine Ausgabe.

  5. Führen Sie den folgenden Befehl erneut aus, um zu überprüfen, ob der Status zu InProgress geändert wurde.

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

Beispiele für die Erstellung eines OpsItem

Die folgenden Beispiele zeigen, wie Sie ein OpsItem mit dem Linux-Verwaltungsportal, macOS oder Windows erstellen und verwalten.

Linux-Verwaltungsportal oder macOS

Der folgende Befehl erstellt ein OpsItem, wenn eine Instance-Festplatte von Amazon Elastic Compute Cloud (Amazon EC2) voll ist.

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"

Der folgende Befehl verwendet den /aws/resources-Schlüssel in OperationalData, um ein OpsItem mit einer Amazon-DynamoDB-bezogenen Ressource zu erstellen.

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"

Der folgende Befehl verwendet den /aws/automations-Schlüssel in OperationalData, um ein OpsItem zu erstellen, das das AWS-ASGEnterStandby-Dokument als zugeordnetes Automation-Runbook angibt.

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

Der folgende Befehl erstellt ein OpsItem wenn eine Amazon Relational Database Service (Amazon RDS)-Instance nicht reagiert.

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"

Der folgende Befehl verwendet den /aws/resources-Schlüssel in OperationalData, um ein OpsItem mit einer Amazon-EC2-Instance-bezogenen Ressource zu erstellen.

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\"}}

Der folgende Befehl verwendet den /aws/automations-Schlüssel in OperationalData, um ein OpsItem zu erstellen, das das AWS-RestartEC2Instance-Runbook als zugeordnetes Automation-Runbook angibt.

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\"}}