View a markdown version of this page

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

• Das AWS Systems Manager CloudWatch Dashboard wird nach dem 30. April 2026 nicht mehr verfügbar sein. Kunden können die CloudWatch Amazon-Konsole weiterhin verwenden, um ihre CloudWatch Amazon-Dashboards anzuzeigen, zu erstellen und zu verwalten, so wie sie es heute tun. Weitere Informationen finden Sie in der Amazon CloudWatch Dashboard-Dokumentation.

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 zwar auch Remote-Dokumente mithilfe State Manager von Automation, Tools in, ausführen. Im folgenden Verfahren wird jedoch nur beschrieben AWS Systems Manager, wie Remote-SSM-Dokumente mithilfe AWS Systems Manager Run Command der Systems Manager-Konsole ausgeführt werden.

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.

Warnung

AWS-RunDocumentkann Dokumentinhalte aus verschiedenen Quellen ausführen (SSM-Dokumente, S3 GitHub, URLs). Bei der Ausführung von Remote-Dokumenten gelten die ausgewerteten IAM-Berechtigungen für das Remote-Dokument und ssm:GetDocument ssm:SendCommand weiter. AWS-RunDocument Wenn Sie über IAM-Richtlinien verfügen, die den Zugriff auf bestimmte SSM-Dokumente verweigern, können Benutzer mit AWS-RunDocument Berechtigungen diese verweigerten Dokumente trotzdem ausführen, indem sie den Dokumentinhalt als Parameter übergeben. Diese unterliegen möglicherweise nicht denselben dokumentspezifischen IAM-Einschränkungen.

Verwenden Sie eine der folgenden Methoden, um die Ausführung von Dokumenten ordnungsgemäß einzuschränken:

  • Zulässige Quellen zulassen: Wenn Sie die geschachtelte Dokumentausführung verwenden müssen, beschränken Sie den Zugriff nur auf genehmigte Quellen. Verwenden Sie IAM-Richtlinien, um SSM-Dokumentquellen ssm:GetDocument zu kontrollieren. Verwenden Sie IAM- und Amazon S3-Bucket-Richtlinien für Amazon S3-Quellen. Verwenden Sie Netzwerkeinstellungen (wie VPC-Endpunkte oder Sicherheitsgruppen) für öffentliche Internetquellen.

  • Beschränken Sie den Zugriff ssm:SendCommand auf AWS-RunDocument: Ablehnen AWS-RunDocument und alle anderen Dokumente, die das aws:runDocument Plug-in in Ihren IAM-Richtlinien verwenden, um die Ausführung verschachtelter Dokumente zu verhindern.

  • Verwenden Sie Berechtigungsgrenzen: Implementieren Sie IAM-Berechtigungsgrenzen, um maximale Berechtigungen für Benutzer festzulegen und sie unabhängig von der Ausführungsmethode daran zu hindern, unbefugte Dokumente auszuführen.

Weitere Informationen zu bewährten IAM-Methoden und Berechtigungsgrenzen finden Sie im Benutzerhandbuch unter Berechtigungsgrenzen für IAM-Entitäten. AWS Identity and Access Management

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 Erstellen Parameter Store Parameter im Systems Manager.

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

      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 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 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 auf verwaltete Knoten angewendete Tags oder AWS Ressourcengruppen angegeben haben und 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 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 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.