Exemplarische Vorgehensweise: Automatisches Update SSM Agent mit dem AWS CLI - AWS Systems Manager

Exemplarische Vorgehensweise: Automatisches Update SSM Agent mit dem AWS CLI

Mit den folgenden Schritten können Sie eine State Manager-Zuordnung mithilfe der AWS Command Line Interface erstellen. Durch die Zuordnung wird der SSM Agent automatisch entsprechend einem von Ihnen angegebenen Zeitplan aktualisiert. Mehr über SSM Agent erfahren Sie unter Arbeiten mit SSM Agent. Informationen zum Anpassen des Aktualisierungszeitplans für SSM Agent mithilfe der Konsole finden Sie unter Automatische Aktualisierung von SSM Agent.

Wenn Sie über SSM Agent-Aktualisierungen benachrichtigt werden möchten, abonnieren Sie die Seite SSM Agent-Versionshinweise auf GitHub.

Bevor Sie beginnen

Bevor Sie die folgenden Schritte ausführen, stellen Sie sicher, dass Sie mindestens eine Amazon Elastic Compute Cloud (Amazon EC2)-Instance für Linux, macOS oder Windows Server ausführen, die für Systems Manager konfiguriert ist. Weitere Informationen finden Sie unter Einrichten von verwalteten Knoten für AWS Systems Manager.

Wenn Sie eine Zuordnung mit der AWS CLI oder AWS Tools for Windows PowerShell erstellen, können Sie über den Parameter --Targets wie nachfolgend gezeigt Ziel-Instances angeben. Verwenden Sie nicht den Parameter --InstanceID. Der Parameter --InstanceID ist veraltet.

So erstellen Sie eine Zuordnung für die automatische Aktualisierung von SSM Agent
  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. Führen Sie den folgenden Befehl aus, um eine Zuordnung zu erstellen, indem Sie Instances mithilfe von Amazon Elastic Compute Cloud (Amazon EC2)-Tags anvisieren. Ersetzen Sie jeden Beispiel Platzhalter für Ressourcen mit Ihren eigenen Informationen. Der Schedule-Parameter legt einen Zeitplan für die Ausführung der Zuordnung an jedem Sonntagmorgen um 2:00 Uhr (UTC) fest.

    State Manager-Zuordnungen unterstützen nicht alle Cron- und Rate-Ausdrücke. Weitere Informationen zum Erstellen von Cron- und Rate-Ausdrücken für Zuordnungen finden Sie unter Referenz: Cron- und Rate-Ausdrücke für System Manager.

    Linux & macOS
    aws ssm create-association \ --targets Key=tag:tag_key,Values=tag_value \ --name AWS-UpdateSSMAgent \ --schedule-expression "cron(0 2 ? * SUN *)"
    Windows
    aws ssm create-association ^ --targets Key=tag:tag_key,Values=tag_value ^ --name AWS-UpdateSSMAgent ^ --schedule-expression "cron(0 2 ? * SUN *)"

    Sie können auf mehrere Instances abzielen, indem Sie Instance-IDs in einer durch Kommas getrennten Liste angeben.

    Linux & macOS
    aws ssm create-association \ --targets Key=instanceids,Values=instance_ID,instance_ID,instance_ID \ --name AWS-UpdateSSMAgent \ --schedule-expression "cron(0 2 ? * SUN *)"
    Windows
    aws ssm create-association ^ --targets Key=instanceids,Values=instance_ID,instance_ID,instance_ID ^ --name AWS-UpdateSSMAgent ^ --schedule-expression "cron(0 2 ? * SUN *)"

    Sie können die Version des SSM Agent angeben, den Sie aktualisieren möchten.

    Linux & macOS
    aws ssm create-association \ --targets Key=instanceids,Values=instance_ID,instance_ID,instance_ID \ --name AWS-UpdateSSMAgent \ --schedule-expression "cron(0 2 ? * SUN *)" \ --parameters version=ssm_agent_version_number
    Windows
    aws ssm create-association ^ --targets Key=instanceids,Values=instance_ID,instance_ID,instance_ID ^ --name AWS-UpdateSSMAgent ^ --schedule-expression "cron(0 2 ? * SUN *)" ^ --parameters version=ssm_agent_version_number

    Das System gibt unter anderem folgende Informationen zurück

    {
        "AssociationDescription": {
            "ScheduleExpression": "cron(0 2 ? * SUN *)",
            "Name": "AWS-UpdateSSMAgent",
            "Overview": {
                "Status": "Pending",
                "DetailedStatus": "Creating"
            },
            "AssociationId": "123..............",
            "DocumentVersion": "$DEFAULT",
            "LastUpdateAssociationDate": 1504034257.98,
            "Date": 1504034257.98,
            "AssociationVersion": "1",
            "Targets": [
                {
                    "Values": [
                        "TagValue"
                    ],
                    "Key": "tag:TagKey"
                }
            ]
        }
    }

    Das System versucht, die Zuordnung für die Instances zu erstellen und wendet den Status nach der Erstellung an. Der Zuordnungsstatus lautet Pending (Schwebend).

  3. Führen Sie den folgenden Befehl aus, um einen aktualisierten Status der erstellten Zuordnung anzuzeigen.

    aws ssm list-associations

    Wenn auf Ihren Instances nicht die neueste Version von SSM Agent ausgeführt wird, wird der Status Failed angezeigt. Bei Veröffentlichung einer neuen SSM Agent-Version wird der neue Agent automatisch von der Zuordnung installiert und der Status zeigt Success an.