Ausführen von -Dokumenten von Remote-Standorten - AWS Systems Manager

AWS Systems ManagerChange Managersteht neuen Kunden nicht mehr offen. Bestandskunden können den Service weiterhin wie gewohnt nutzen. Weitere Informationen finden Sie unter Änderung der AWS Systems ManagerChange Manager Verfügbarkeit.

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Ausführen von -Dokumenten von Remote-Standorten

Sie können AWS Systems Manager (SSM-) Dokumente von entfernten Standorten aus ausführen, indem Sie das AWS-RunDocument vordefinierte SSM-Dokument verwenden. Dieses Dokument unterstützt die Ausführung von SSM-Dokumenten, die an den folgenden Speicherorten gespeichert sind:

  • Öffentliche und private GitHub-Repositorys (GitHub Enterprise wird nicht unterstützt)

  • Amazon-S3-Buckets

  • Systems Manager

Sie können Remote-Dokumente zwar auch mithilfe von State Manager oder Automation, Tools unter, ausführen. Im folgenden Verfahren wird jedoch nur beschrieben AWS Systems Manager, wie Sie Remote-SSM-Dokumente mithilfe AWS Systems Manager Run Command der Systems Manager Manager-Konsole ausführen.

Anmerkung

AWS-RunDocument kann verwendet werden, um nur SSM-Dokumente vom Befehlstyp auszuführen, nicht andere Typen wie Automation-Runbooks. Das AWS-RunDocument verwendet das aws:downloadContent-Plugin. Weitere Informationen zum aws:downloadContent-Plugin finden Sie unter aws:downloadContent.

Bevor Sie beginnen

Bevor Sie ein Remote-Dokument ausführen, müssen Sie die folgenden Aufgaben erledigen.

  • Erstellen Sie ein SSM-Befehlsdokument und speichern Sie es an einem Remote-Standort. Weitere Informationen finden Sie unter Erstellen von SSM-Dokumentinhalten.

  • Wenn Sie ein Remote-Dokument ausführen möchten, das in einem privaten GitHub-Repository gespeichert ist, müssen Sie einen Systems-Manager-SecureString-Parameter für Ihr GitHub-Sicherheitszugriffstoken erstellen. Sie können nicht auf ein Remote-Dokument in einem privaten GitHub-Repository zugreifen, indem Sie Ihr Token manuell über SSH übergeben. Das Zugriffstoken muss als SecureString-Systems Manager-Parameter übertragen werden. Weitere Informationen zum Erstellen eines SecureString-Parameters finden Sie unter Parameter Store-Parameter im Systems Manager erstellen.

Ausführen eines Remote-Dokuments (Konsole)

So führen Sie ein Remote-Dokument aus
  1. Öffnen Sie die AWS Systems Manager Konsole unter. https://console.aws.amazon.com/systems-manager/

  2. Wählen Sie im Navigationsbereich Run Command aus.

  3. Wählen Sie Befehl ausführen aus.

  4. Wählen Sie in der Liste Dokument die Option AWS-RunDocument.

  5. Wählen Sie unter Command parameters (Befehlsparameter) für Source Type (Quelltyp) eine Option aus.

    • Wenn Sie GitHub auswählen, geben Sie für Quallinformationen Informationen in folgendem Format an:

      { "owner": "owner_name", "repository": "repository_name", "path": "path_to_document", "getOptions":"branch:branch_name", "tokenInfo": "{{ssm-secure:secure-string-token}}" }

      Zum Beispiel:

      { "owner":"TestUser", "repository":"GitHubTestExamples", "path":"scripts/python/test-script", "getOptions":"branch:exampleBranch", "tokenInfo":"{{ssm-secure:my-secure-string-token}}" }
      Anmerkung

      getOptions sind zusätzliche Optionen zum Abrufen von Inhalten aus einem anderen Branch als dem Master-Branch oder aus einem bestimmten Commit im Repository. getOptions kann weggelassen werden, wenn Sie den letzten Commit in der Master-Branch verwenden. Der branch-Parameter ist nur erforderlich, wenn Ihr SSM-Dokument in einer anderen Verzweigung als master gespeichert ist.

      Um die Version Ihres SSM-Dokuments in einem bestimmten Commit in Ihrem Repository zu verwenden, verwenden Sie commitID mit getOptionsstatt branch. Zum Beispiel:

      "getOptions": "commitID:bbc1ddb94...b76d3bEXAMPLE",
    • Wenn Sie S3 auswählen, geben Sie für Source Info Informationen in folgendem Format an:

      {"path":"URL_to_document_in_S3"}

      Zum Beispiel:

      {"path":"https://s3.amazonaws.com/amzn-s3-demo-bucket/scripts/ruby/mySSMdoc.json"}
    • Wenn Sie SSMDocument auswählen, geben Sie für Quallinformationen Informationen in folgendem Format an:

      {"name": "document_name"}

      Zum Beispiel:

      {"name": "mySSMdoc"}
  6. Geben Sie im Feld Document Parameters Parameter für das Remote-SSM-Dokument ein. Wenn Sie beispielsweise das Dokument AWS-RunPowerShell ausführen, könnten Sie Folgendes angeben:

    {"commands": ["date", "echo \"Hello World\""]}

    Wenn Sie das Dokument AWS-ConfigureAWSPack ausführen, könnten Sie Folgendes angeben:

    { "action":"Install", "name":"AWSPVDriver" }
  7. Identifizieren Sie für den Abschnitt Targets (Ziele) die verwalteten Knoten, auf denen Sie diese Operation ausführen möchten, indem Sie Tags angeben, Instances oder Edge-Geräte manuell auswählen oder eine Ressourcengruppe angeben.

    Tipp

    Wenn ein verwalteter Knoten, den Sie erwarten, nicht aufgeführt ist, finden Sie weitere Informationen unter Problembehandlung bei der Verfügbarkeit verwalteter Knoten Tipps zur Fehlerbehebung.

  8. Für Weitere Parameter:

    • Geben Sie im Feld Kommentar Informationen zu diesem Befehl ein.

    • Geben Sie für Timeout (Sekunden) in Sekunden an, wie lange gewartet werden soll, bis für die gesamte Befehlsausführung ein Fehler auftritt.

  9. Für Ratenregelung:

    • Geben Sie unter Nebenläufigkeit entweder eine Zahl oder einen Prozentsatz der verwalteten Knoten an, auf denen der Befehl gleichzeitig ausgeführt werden soll.

      Anmerkung

      Wenn Sie Ziele ausgewählt haben, indem Sie Tags für verwaltete Knoten oder AWS Ressourcengruppen angegeben haben und Sie sich nicht sicher sind, wie viele verwaltete Knoten das Ziel sind, schränken Sie die Anzahl der Ziele ein, die das Dokument gleichzeitig ausführen können, indem Sie einen Prozentsatz angeben.

    • Geben Sie unter Fehlerschwellenwert an, wann die Ausführung des Befehls auf anderen verwalteten Knoten beendet werden soll, nachdem dafür entweder auf einer bestimmten Anzahl oder einem Prozentsatz von Knoten ein Fehler aufgetreten ist. Falls Sie beispielsweise drei Fehler angeben, sendet Systems Manager keinen Befehl mehr, wenn der vierte Fehler empfangen wird. Von verwalteten Knoten, auf denen der Befehl noch verarbeitet wird, werden unter Umständen ebenfalls Fehler gesendet.

  10. (Optional) Wenn Sie im Abschnitt Ausgabeoptionen die Befehlsausgabe in einer Datei speichern möchten, aktivieren Sie das Kontrollkästchen Schreiben in einen S3-Bucket aktivieren. Geben Sie die Namen für den Bucket und das Präfix (Ordner) in die Textfelder ein.

    Anmerkung

    Die S3-Berechtigungen, die das Schreiben der Daten in einen S3-Bucket ermöglichen, sind diejenigen des Instanzprofils (für EC2 Instances) oder der IAM-Servicerolle (hybridaktivierte Maschinen), die der Instanz zugewiesen wurden, nicht die des IAM-Benutzers, der diese Aufgabe ausführt. Weitere Informationen finden Sie unter Instance-Berechtigungen für Systems Manager konfigurieren oder Eine IAM-Servicerolle für eine Hybrid-Umgebung erstellen. Wenn sich der angegebene S3-Bucket in einem anderen AWS-Konto befindet, stellen Sie außerdem sicher, dass das Instance-Profil oder die IAM-Servicerolle, die dem verwalteten Knoten zugeordnet ist, über die erforderlichen Berechtigungen zum Schreiben in diesen Bucket verfügt.

  11. Aktivieren Sie das Kontrollkästchen SNS-Benachrichtigungen aktivieren im Abschnitt SNS-Benachrichtigungen, wenn Sie über den Status der Befehlsausführung benachrichtigt werden möchten,

    Weitere Informationen zum Konfigurieren von Amazon-SNS-Benachrichtigungen für Run Command finden Sie unter Überwachung von Systems Manager-Statusänderungen mit Amazon SNS-Benachrichtigungen.

  12. Klicken Sie auf Ausführen.

Anmerkung

Informationen zum Neustarten von Servern und Instances bei Verwendung von Run Command für den Aufruf von Skripts finden Sie unter Umgang mit Neustarts beim Ausführen von Befehlen.