

• Das AWS Systems Manager CloudWatch Dashboard wird nach dem 30. April 2026 nicht mehr verfügbar sein. Kunden können weiterhin die CloudWatch Amazon-Konsole verwenden, um ihre CloudWatch Amazon-Dashboards anzusehen, zu erstellen und zu verwalten, so wie sie es heute tun. Weitere Informationen finden Sie in der [Amazon CloudWatch Dashboard-Dokumentation](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html). 

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.

# Python-Skripte von GitHub ausführen
<a name="integration-github-python"></a>

Dieser Abschnitt enthält Verfahren, mit denen Sie Python-Skripte entweder über die AWS Systems Manager Konsole oder die AWS Command Line Interface (AWS CLI) ausführen können. GitHub 

## Ausführen eines Python-Skripts von GitHub (Konsole)
<a name="integration-github-python-console"></a>

**Ausführen eines Python-Skripts von GitHub**

1. Öffnen Sie die AWS Systems Manager Konsole unter [https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/).

1. Wählen Sie im Navigationsbereich **Run Command** aus.

1. Wählen Sie **Befehl ausführen** aus.

1. Wählen Sie in der Liste **Command document** (Befehlsdokument) die Option **`AWS-RunRemoteScript`** aus.

1. Führen Sie unter **Command parameters (Befehlsparameter)** die folgenden Schritte aus:
   + Wählen Sie unter **Quelltyp** die **GitHub** aus. 
   + Geben Sie im Feld **Source Info** die für den Zugriff auf die Quelle erforderlichen Informationen im folgenden Format an:

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

     Im Folgenden wird beispielsweise ein Verzeichnis von Skripts mit dem Namen *complex-script* heruntergeladen.

     ```
     {
         "owner": "TestUser1",
         "repository": "SSMTestDocsRepo",
         "getOptions": "branch:myBranch",
         "path": "scripts/python/complex-script",
         "tokenInfo": "{{ssm-secure:myAccessTokenParam}}"
     }
     ```
**Anmerkung**  
`"branch"` ist nur erforderlich, wenn Ihre Skripts in einer anderen Verzweigung als `master` gespeichert sind.  
Um die Version Ihrer Skripts zu verwenden, die sich in einem bestimmten *Commit* in Ihrem Repository befinden, verwenden Sie `commitID` mit `getOptions`statt `branch`. Zum Beispiel:  
`"getOptions": "commitID:bbc1ddb94...b76d3bEXAMPLE",`
   + Geben Sie für **Command Line (Befehlszeile)** Parameter für die Skriptausführung ein. Ein Beispiel.

     ```
     mainFile.py argument-1 argument-2
     ```

     In diesem Beispiel wird `mainFile.py` ausgeführt. Diese Datei kann anschließend andere Skripts im Verzeichnis `complex-script` ausführen.
   + (Optional) Geben Sie für **Working Directory** (Arbeitsverzeichnis) den Namen eines Verzeichnisses auf dem Knoten ein, auf dem das Skript heruntergeladen und ausgeführt werden soll.
   + (Optional) Geben Sie für **Execution Timeout (Ausführungstimeout)** die Dauer in Sekunden an, bis das System die Skriptbefehlausführung fehlschlagen lässt. 

1. 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](fleet-manager-troubleshooting-managed-nodes.md) Tipps zur Fehlerbehebung.

1. 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. 

1. 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.

1. (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](setup-instance-permissions.md) oder [Eine IAM-Servicerolle für eine Hybrid-Umgebung erstellen](hybrid-multicloud-service-role.md). 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.

1. 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](monitoring-sns-notifications.md).

1. Klicken Sie auf **Ausführen**.

## Führen Sie ein Python-Skript aus, GitHub indem Sie den AWS CLI
<a name="integration-github-python-cli"></a>

1. Installieren und konfigurieren Sie AWS Command Line Interface (AWS CLI), falls Sie dies noch nicht getan haben.

   Weitere Informationen finden Sie unter [Installieren oder Aktualisieren der neuesten Version von AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html).

1. Führen Sie den folgenden Befehl aus, um ein Skript von GitHub herunterzuladen und auszuführen.

   ```
   aws ssm send-command --document-name "AWS-RunRemoteScript" --instance-ids "instance-IDs" --parameters '{"sourceType":["GitHub"],"sourceInfo":["{\"owner\":\"owner_name\", \"repository\":\"repository_name\", \"path\": \"path_to_script_or_directory"}"],"commandLine":["commands_to_run"]}'
   ```

   Ein Beispiel.

   ```
   aws ssm send-command --document-name "AWS-RunRemoteScript" --instance-ids "i-02573cafcfEXAMPLE" --parameters '{"sourceType":["GitHub"],"sourceInfo":["{\"owner\":\"TestUser1\", \"repository\":\"GitHubTestPublic\", \"path\": \"scripts/python/complex-script\"}"],"commandLine":["mainFile.py argument-1 argument-2 "]}'
   ```

   In diesem Beispiel wird ein Verzeichnis von Skripts mit dem Namen `complex-script` heruntergeladen. Der `commandLine`-Eintrag führt `mainFile.py` aus. Diese Datei kann anschließend andere Skripts im Verzeichnis `complex-script` ausführen.