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

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 Repositorien (wird nicht unterstützt) GitHub Enterprise

  • Amazon-S3-Buckets

  • Systems Manager

Sie können zwar auch Remote-Dokumente mithilfe von State Manager oder Automation, Funktionen von ausführen, aber im folgenden Verfahren wird 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 Manager-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 Erstellen von Systems Manager-Parametern.

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 Run Command (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 möchten GitHub, geben Sie die Quellinformationen im folgenden Format an:

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

      Beispielsweise:

      { "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/DOC-EXAMPLE-BUCKET/scripts/ruby/mySSMdoc.json"}
    • Wenn Sie SSMDocument auswählen, geben Sie für Source Info 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 Other parameters (Weitere Parameter):

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

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

  9. Für Rate control (Ratenregelung):

    • Geben Sie unter Concurrency (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 angeben, die auf verwaltete Knoten angewendet werden, oder indem Sie AWS -Ressourcengruppen angeben, und Sie noch nicht sicher sind, wie viele verwaltete Knoten anvisiert sind, sollten Sie die Anzahl von Zielen, die das Dokument gleichzeitig ausführen kann, beschränken, indem Sie einen Prozentsatz angeben.

    • Geben Sie unter Error threshold (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 Output options (Ausgabeoptionen) die Befehlsausgabe in einer Datei speichern möchten, aktivieren Sie das Kontrollkästchen Enable writing to a S3 bucket (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 zum Schreiben von Daten in einen S3-Bucket sind diejenigen des Instance-Profils (für EC2-Instances) oder der IAM-Servicerolle (hybrid-aktivierte Maschinen), die der Instance zugewiesen sind, und nicht diejenigen des IAM-Benutzers, der diese Aufgabe ausführt. Weitere Informationen finden Sie unter Konfigurieren der für Systems Manager erforderlichen Instanzberechtigungen oder Erstellen einer IAM-Dienstrolle für eine Hybridumgebung. Wenn sich der angegebene S3-Bucket in einem anderen befindet, stellen Sie außerdem sicher AWS-Konto, dass das Instanzprofil oder die IAM-Servicerolle, die dem verwalteten Knoten zugeordnet sind, über die erforderlichen Berechtigungen verfügt, um in diesen Bucket zu schreiben.

  11. Aktivieren Sie das Kontrollkästchen Enable SNS notifications (SNS-Benachrichtigungen aktivieren) im Abschnitt SNS notifications (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. Wählen Sie Ausführen aus.

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.