Docker-Anwendungsbereitstellungs-Konnektor - AWS IoT Greengrass

AWS IoT Greengrass Version 1 trat am 30. Juni 2023 in die erweiterte Lebensphase ein. Weitere Informationen finden Sie in der AWS IoT Greengrass V1 Wartungsrichtlinie. Nach diesem Datum AWS IoT Greengrass V1 werden keine Updates mehr veröffentlicht, die Funktionen, Verbesserungen, Bugfixes oder Sicherheitspatches bieten. Geräte, die auf laufen, werden AWS IoT Greengrass V1 nicht gestört und funktionieren weiterhin und stellen eine Verbindung zur Cloud her. Wir empfehlen Ihnen dringend, zu migrieren AWS IoT Greengrass Version 2, da dies wichtige neue Funktionen und Unterstützung für zusätzliche Plattformen bietet.

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.

Docker-Anwendungsbereitstellungs-Konnektor

Der Greengrass Docker-Anwendungsbereitstellungs-Connector erleichtert die Ausführung Ihrer Docker-Images auf einem -AWS IoT GreengrassCore. Der Konnektor verwendet Docker Compose, um eine Docker-Anwendung mit mehreren Containern aus einer docker-compose.yml-Datei zu starten. Insbesondere führt der Konnektor docker-compose-Befehle aus, um Docker-Container auf einem Single-Core-Gerät zu verwalten. Weitere Informationen finden Sie unter Übersicht über Docker Compose in der Docker-Dokumentation. Der Konnektor kann auf Docker-Images zugreifen, die in Docker-Container-Registrys wie Amazon Elastic Container Registry (Amazon ECR), Docker Hub und privaten vertrauenswürdigen Docker-Registrys gespeichert sind.

Nach der Bereitstellung der Greengrass-Gruppe ruft der Konnektor die neuesten Images ab und startet die Docker-Container. Es führt den docker-compose up Befehl docker-compose pull und aus. Anschließend veröffentlicht der Konnektor den Status des Befehls in einem MQTT-Ausgabethema . Er protokolliert auch Statusinformationen zum Ausführen von Docker-Containern. Auf diese Weise können Sie Ihre Anwendungsprotokolle in Amazon überwachen CloudWatch. Weitere Informationen finden Sie unter Überwachen mit AWS IoT Greengrass-Protokollen. Der Konnektor startet auch Docker-Container bei jedem Neustart des Greengrass-Daemons. Die Anzahl der Docker-Container, die auf dem Core ausgeführt werden können, hängt von Ihrer Hardware ab.

Die Docker-Container werden außerhalb der Greengrass-Domäne auf dem Core-Gerät ausgeführt, sodass sie nicht auf die Interprozesskommunikation (IPC) des Cores zugreifen können. Sie können jedoch einige Kommunikationskanäle mit Greengrass-Komponenten konfigurieren, z. B. lokale Lambda-Funktionen. Weitere Informationen finden Sie unter Kommunikation mit Docker-Containern.

Sie können den Konnektor für Szenarien wie das Hosten eines Webservers oder eines MySQL-Servers auf Ihrem Core-Gerät verwenden. Lokale Services in Ihren Docker-Anwendungen können miteinander, mit anderen Prozessen in der lokalen Umgebung und mit Cloud-Services kommunizieren. Sie können beispielsweise einen Webserver auf dem -Kern ausführen, der Anfragen von Lambda-Funktionen an einen Webservice in der Cloud sendet.

Dieser Konnektor wird im No container (Kein Container)-Isolationsmodus ausgeführt, so dass Sie ihn für eine Greengrass-Gruppe bereitstellen können, die ohne Greengrass-Containerisierung ausgeführt wird.

Dieser Konnektor hat die folgenden Versionen.

Version

ARN

7

arn:aws:greengrass:region::/connectors/DockerApplicationDeployment/versions/7

6

arn:aws:greengrass:region::/connectors/DockerApplicationDeployment/versions/6

5

arn:aws:greengrass:region::/connectors/DockerApplicationDeployment/versions/5

4

arn:aws:greengrass:region::/connectors/DockerApplicationDeployment/versions/4

3

arn:aws:greengrass:region::/connectors/DockerApplicationDeployment/versions/3

2

arn:aws:greengrass:region::/connectors/DockerApplicationDeployment/versions/2

1

arn:aws:greengrass:region::/connectors/DockerApplicationDeployment/versions/1

Informationen über Versionsänderungen finden Sie im Änderungsprotokoll.

Voraussetzungen

Dieser Konnektor hat die folgenden Anforderungen:

  • AWS IoT Greengrass Core-Software v1.10 oder höher.

    Anmerkung

    Dieser Konnektor wird auf - OpenWrt Verteilungen nicht unterstützt.

  • Python Version 3.7 oder 3.8 ist auf dem Core-Gerät installiert und der PATH-Umgebungsvariablen hinzugefügt.

    Anmerkung

    Um Python 3.8 zu verwenden, führen Sie den folgenden Befehl aus, um einen symbolischen Link vom standardmäßigen Python-3.7-Installationsordner zu den installierten Python-3.8-Binärdateien zu erstellen.

    sudo ln -s path-to-python-3.8/python3.8 /usr/bin/python3.7

    Dadurch wird Ihr Gerät so konfiguriert, dass es die Python-Anforderung für AWS IoT Greengrass erfüllt.

  • Mindestens 36 MB RAM auf dem Greengrass Core für den Konnektor, um laufende Docker-Container zu überwachen. Der Gesamtspeicherbedarf hängt von der Anzahl der Docker-Container ab, die auf dem Core ausgeführt werden.

  • Docker Engine 1.9.1 oder höher muss auf dem Greengrass Core installiert sein. Version 19.0.3 ist die neueste Version, die nachgewiesenermaßen mit dem Konnektor funktioniert.

    Die ausführbare docker-Datei muss sich im Verzeichnis /usr/bin oder /usr/local/bin befinden.

    Wichtig

    Es wird empfohlen, einen Anmeldeinformationsspeicher zu installieren, um die lokalen Kopien Ihrer Docker-Anmeldeinformationen zu sichern. Weitere Informationen finden Sie unter Sicherheitshinweise.

    Informationen zum Installieren von Docker auf Amazon Linux-Distributionen finden Sie unter Docker-Grundlagen für Amazon ECS im Amazon Elastic Container Service-Entwicklerhandbuch.

  • Docker Compose installiert auf dem Greengrass Core. Die ausführbare docker-compose-Datei muss sich im Verzeichnis /usr/bin oder /usr/local/bin befinden.

    Die folgenden Docker Compose-Versionen funktionieren nachgewiesenermaßen mit dem Konnektor.

    Konnektor-Version

    Verifizierte Docker Compose-Version

    7

    1.25.4

    6

    1.25.4

    5

    1.25.4

    4

    1.25.4

    3

    1.25.4

    2

    1.25.1

    1

    1.24.1

  • Eine einzelne Docker Compose-Datei (z. B. docker-compose.yml), die in Amazon Simple Storage Service (Amazon S3) gespeichert ist. Das Format muss mit der auf dem Core installierten Version von Docker Compose kompatibel sein. Sie sollten die Datei testen, bevor Sie sie auf Ihrem Core verwenden. Wenn Sie die Datei bearbeiten, nachdem Sie die Greengrass-Gruppe bereitgestellt haben, müssen Sie die Gruppe erneut bereitstellen, um Ihre lokale Kopie auf dem Core zu aktualisieren.

  • Ein Linux-Benutzer mit der Berechtigung, den lokalen Docker-Daemon aufzurufen und in das Verzeichnis zu schreiben, in dem die lokale Kopie Ihrer Compose-Datei gespeichert ist. Weitere Informationen finden Sie unter Einrichten des Docker-Benutzers auf dem Core.

  • Die Greengrass-Gruppenrolle muss so konfiguriert sein, dass sie die Aktion s3:GetObject für den S3-Bucket zulässt, der Ihre Compose-Datei enthält. Diese Berechtigung wird in der folgenden Beispiel-IAM-Richtlinie gezeigt.

    { "Version": "2012-10-17", "Statement": [ { "Sid": "AllowAccessToComposeFileS3Bucket", "Action": [ "s3:GetObject", "s3:GetObjectVersion" ], "Effect": "Allow", "Resource": "arn:aws:s3:::bucket-name/*" } ] }
    Anmerkung

    Wenn Ihr S3-Bucket versionsfähig ist, muss die Rolle so konfiguriert werden, dass auch die s3:GetObjectVersion Aktion zugelassen wird. Weitere Informationen finden Sie unter Verwenden der Versionsverwaltung im Benutzerhandbuch für Amazon Simple Storage Service.

    Für die Gruppenrollenanforderung müssen Sie die Rolle so konfigurieren, dass die erforderlichen Berechtigungen erteilt werden, und sicherstellen, dass die Rolle der Gruppe hinzugefügt wurde. Weitere Informationen finden Sie unter Verwalten der Greengrass-Gruppenrolle (Konsole) oder Verwalten der Greengrass-Gruppenrolle (CLI).

  • Wenn Ihre Docker Compose-Datei auf ein in Amazon ECR gespeichertes Docker-Image verweist, ist die Greengrass-Gruppenrolle so konfiguriert, dass Folgendes zugelassen wird:

    • ecr:GetDownloadUrlForLayer - und -ecr:BatchGetImageAktionen auf Ihren Amazon-ECR-Repositorys, die die Docker-Images enthalten.

    • Die ecr:GetAuthorizationToken-Aktion für die Ressourcen.

    Repositorys müssen sich im selben AWS-Konto und im selben AWS-Region wie der Konnektor befinden.

    Wichtig

    Berechtigungen in der Gruppenrolle können von allen Lambda-Funktionen und Konnektoren in der Greengrass-Gruppe übernommen werden. Weitere Informationen finden Sie unter Sicherheitshinweise.

    Diese Berechtigungen werden in der folgenden Beispielrichtlinie angezeigt.

    { "Version": "2012-10-17", "Statement": [ { "Sid": "AllowGetEcrRepositories", "Effect": "Allow", "Action": [ "ecr:GetDownloadUrlForLayer", "ecr:BatchGetImage" ], "Resource": [ "arn:aws:ecr:region:account-id:repository/repository-name" ] }, { "Sid": "AllowGetEcrAuthToken", "Effect": "Allow", "Action": "ecr:GetAuthorizationToken", "Resource": "*" } ] }

    Weitere Informationen finden Sie unter Beispiele für Amazon-ECR-Repository-Richtlinien im Amazon-ECR-Benutzerhandbuch.

    Für die Gruppenrollenanforderung müssen Sie die Rolle so konfigurieren, dass die erforderlichen Berechtigungen erteilt werden, und sicherstellen, dass die Rolle der Gruppe hinzugefügt wurde. Weitere Informationen finden Sie unter Verwalten der Greengrass-Gruppenrolle (Konsole) oder Verwalten der Greengrass-Gruppenrolle (CLI).

  • Wenn Ihre Docker Compose-Datei auf ein Docker-Abbild aus AWS Marketplace verweist, gelten für den Konnektor außerdem folgende Anforderungen:

    • Sie müssen AWS Marketplace-Containerprodukte abonniert haben. Weitere Informationen finden Sie unter Suchen und Abonnieren von Containerprodukten im AWS Marketplace-Abonnentenhandbuch.

    • AWS IoT Greengrass muss so konfiguriert sein, dass lokale Secrets unterstützt werden, wie unter Secrets-Anforderungen beschrieben. Der Konnektor verwendet diese Funktion nur, um Ihre Secrets von abzurufenAWS Secrets Manager, nicht, um sie zu speichern.

    • Sie müssen ein Secret in Secrets Manager für jede AWS Marketplace Registrierung erstellen, die ein Docker-Image speichert, auf das in Ihrer Compose-Datei verwiesen wird. Weitere Informationen finden Sie unter Zugreifen auf Docker-Images aus privaten Repositorys.

  • Wenn Ihre Docker-Compose-Datei auf ein Docker-Image aus privaten Repositorys in anderen Registrierungen als Amazon ECR verweist, z. B. Docker Hub, hat der Konnektor auch die folgenden Anforderungen:

    • AWS IoT Greengrass muss so konfiguriert sein, dass lokale Secrets unterstützt werden, wie unter Secrets-Anforderungen beschrieben. Der Konnektor verwendet diese Funktion nur, um Ihre Secrets von abzurufenAWS Secrets Manager, nicht, um sie zu speichern.

    • Sie müssen ein Secret in Secrets Manager für jedes private Repository erstellen, das ein Docker-Image speichert, auf das in Ihrer Compose-Datei verwiesen wird. Weitere Informationen finden Sie unter Zugreifen auf Docker-Images aus privaten Repositorys.

  • Der Docker-Daemon muss ausgeführt werden, wenn Sie eine Greengrass-Gruppe bereitstellen, die diesen Konnektor enthält.

Zugreifen auf Docker-Images aus privaten Repositorys

Wenn Sie Anmeldeinformationen verwenden, um auf Ihre Docker-Abbilder zuzugreifen, müssen Sie dem Konnektor erlauben, darauf zuzugreifen. Wie Sie dies tun, hängt davon ab, wo sich das Docker-Abbild befindet.

Für gespeicherte Docker-Images in Amazon ECR erteilen Sie die Berechtigung, Ihr Autorisierungstoken in der Greengrass-Gruppenrolle abzurufen. Weitere Informationen finden Sie unter Voraussetzungen.

Für Docker-Abbilder, die in anderen privaten Repositorys oder Registrys gespeichert sind, müssen Sie ein Secret in AWS Secrets Manager erstellen, um Ihre Anmeldeinformationen zu speichern. Dies schließt Docker-Abbilder ein, die Sie in AWS Marketplace abonniert haben. Erstellen Sie ein Secret für jedes Repository. Wenn Sie Ihre Secrets in Secrets Manager aktualisieren, werden die Änderungen bei der nächsten Bereitstellung der Gruppe an den Kern weitergegeben.

Anmerkung

Secrets Manager ist ein Service, mit dem Sie Ihre Anmeldeinformationen, Schlüssel und andere Secrets sicher in der speichern und verwalten könnenAWS Cloud. Weitere Informationen finden Sie unter Was ist AWS Secrets Manager? im AWS Secrets Manager-Benutzerhandbuch.

Jedes Secret muss die folgenden Schlüssel enthalten:

Schlüssel

Wert

username

Der Benutzername, der für den Zugriff auf das Repository oder die Registrierung verwendet wird.

password

Das Passwort, das für den Zugriff auf das Repository oder die Registrierung verwendet wird.

registryUrl

Der Endpunkt der Registrierung. Dies muss mit der entsprechenden Registrierungs-URL in der Compose-Datei übereinstimmen.

Anmerkung

Um AWS IoT Greengrass den Zugriff auf ein Secret standardmäßig zu erlauben, muss der Name des Secrets mit greengrass- beginnen. Andernfalls muss Ihre Greengrass-Servicerolle Zugriff gewähren. Weitere Informationen finden Sie unter Gewähren des Zugriffs auf Secret-Werte für AWS IoT Greengrass.

So rufen Sie Anmeldeinformationen für Docker-Abbilder aus AWS Marketplace ab
  1. Rufen Sie Ihr Passwort für Docker-Images von AWS Marketplace mit dem aws ecr get-login-password Befehl ab. Weitere Informationen finden Sie unter get-login-password in der Referenz zum AWS CLI-Befehl.

    aws ecr get-login-password
  2. Rufen Sie die Registrierungs-URL für das Docker-Image ab. Öffnen Sie die -AWS MarketplaceWebsite und öffnen Sie die Startseite des Container-Produkts. Wählen Sie unter Container-Images die Option Container-Image-Details anzeigen aus, um den Benutzernamen und die Registrierungs-URL zu finden.

Verwenden Sie den abgerufenen Benutzernamen, das Passwort und die Registrierungs-URL, um ein Secret für jede AWS Marketplace Registrierung zu erstellen, die Docker-Images speichert, auf die in Ihrer Compose-Datei verwiesen wird.

So erstellen Sie Secrets (Konsole)

Wählen Sie in der AWS Secrets Manager-Konsole Andere Art von Secrets aus. Fügen Sie unter Angabe der Schlüssel/Wert-Paare, die für dieses Secret gespeichert werden sollen Zeilen für username, password und registryUrl hinzu. Weitere Informationen finden Sie unter Erstellen eines grundlegenden Secrets im AWS Secrets Manager -Benutzerhandbuch.

Erstellen eines Secrets mit Benutzernamen, Passwort und registryUrl-Schlüsseln.
So erstellen Sie Secrets (CLI)

AWS CLIVerwenden Sie in der den Secrets-Manager-create-secretBefehl, wie im folgenden Beispiel gezeigt. Weitere Informationen finden Sie unter create-secret in der AWS CLI -Befehlsreferenz.

aws secretsmanager create-secret --name greengrass-MySecret --secret-string [{"username":"Mary_Major"},{"password":"abc123xyz456"},{"registryUrl":"https://docker.io"}]
Wichtig

Es liegt in Ihrer Verantwortung, das DockerComposeFileDestinationPath-Verzeichnis zu sichern, in dem Ihre Docker Compose-Datei und die Anmeldeinformationen für Ihre Docker-Abbilder aus privaten Repositorys gespeichert sind. Weitere Informationen finden Sie unter Sicherheitshinweise.

Parameter

Dieser Konnektor stellt die folgenden Parameter bereit:

Version 7
DockerComposeFileS3Bucket

Der Name des S3-Buckets, der Ihre Docker Compose-Datei enthält. Wenn Sie den Bucket erstellen, müssen Sie die Regeln für Bucket-Namen befolgen, die im Benutzerhandbuch für Amazon Simple Storage Service beschrieben sind.

Anzeigename in der AWS IoT Konsole: Docker Compose-Datei in S3

Anmerkung

In der Konsole kombiniert die Docker Compose-Datei in S3-Eigenschaft die Parameter DockerComposeFileS3Bucket, DockerComposeFileS3Key und DockerComposeFileS3Version.

Erforderlich: true

Typ: string

Gültiges Muster [a-zA-Z0-9\\-\\.]{3,63}

DockerComposeFileS3Key

Der Objektschlüssel für Ihre Docker Compose-Datei in Amazon S3. Weitere Informationen, einschließlich Richtlinien zur Benennung von Objektschlüsseln, finden Sie unter Objektschlüssel und Metadaten im Benutzerhandbuch für Amazon Simple Storage Service.

Anmerkung

In der Konsole kombiniert die Docker Compose-Datei in S3-Eigenschaft die Parameter DockerComposeFileS3Bucket, DockerComposeFileS3Key und DockerComposeFileS3Version.

Erforderlich: true

Typ: string

Gültiges Muster .+

DockerComposeFileS3Version

Die Objektversion für Ihre Docker Compose-Datei in Amazon S3. Weitere Informationen, einschließlich Richtlinien zur Benennung von Objektschlüsseln, finden Sie unter Verwenden von Versioning im Benutzerhandbuch für Amazon Simple Storage Service.

Anmerkung

In der Konsole kombiniert die Docker Compose-Datei in S3-Eigenschaft die Parameter DockerComposeFileS3Bucket, DockerComposeFileS3Key und DockerComposeFileS3Version.

Erforderlich: false

Typ: string

Gültiges Muster .+

DockerComposeFileDestinationPath

Der absolute Pfad des lokalen Verzeichnisses, das zum Speichern einer Kopie der Docker Compose-Datei verwendet wird. Dies muss ein vorhandenes Verzeichnis sein. Der für DockerUserId angegebene Benutzer muss über die Berechtigung zum Erstellen einer Datei in diesem Verzeichnis verfügen. Weitere Informationen finden Sie unter Einrichten des Docker-Benutzers auf dem AWS IoT Greengrass Core.

Wichtig

In diesem Verzeichnis werden Ihre Docker Compose-Datei und die Anmeldeinformationen für Ihre Docker-Abbilder aus privaten Repositorys gespeichert. Es liegt in Ihrer Verantwortung, dieses Verzeichnis zu sichern. Weitere Informationen finden Sie unter Sicherheitshinweise.

Anzeigename in der AWS IoT Konsole: Verzeichnispfad für lokale Compose-Datei

Erforderlich: true

Typ: string

Gültiges Muster \/.*\/?

Beispiel: /home/username/myCompose

DockerUserId

Die UID des Linux-Benutzers, unter dem der Konnektor ausgeführt wird. Dieser Benutzer muss zur docker-Linux-Gruppe auf dem Core-Gerät gehören und Schreibberechtigungen für das DockerComposeFileDestinationPath-Verzeichnis haben. Weitere Informationen finden Sie unter Einrichten des Docker-Benutzers auf dem Core.

Anmerkung

Wir empfehlen Ihnen, eine Ausführung als Root zu vermeiden, sofern dies nicht absolut notwendig ist. Wenn Sie den Root-Benutzer angeben, müssen Sie Lambda-Funktionen erlauben, als Root auf dem AWS IoT Greengrass Core ausgeführt zu werden. Weitere Informationen finden Sie unter Ausführen einer Lambda-Funktion als Root.

Anzeigename in der AWS IoT Konsole: Docker-Benutzer-ID

Erforderlich: false

Typ: string

Gültiges Muster: ^[0-9]{1,5}$

AWSSecretsArnList

Die Amazon Resource Names (ARNs) der Secrets in AWS Secrets Manager, die die Anmeldeinformationen enthalten, die für den Zugriff auf Ihre Docker-Abbilder in privaten Repositorys verwendet werden. Weitere Informationen finden Sie unter Zugreifen auf Docker-Images aus privaten Repositorys.

Anzeigename in der AWS IoT Konsole: Anmeldeinformationen für private Repositorys

Erforderlich: false. Dieser Parameter ist erforderlich, um auf Docker-Abbilder zuzugreifen, die in privaten Repositorys gespeichert sind.

Typ: array von string

Gültiges Muster: [( ?,? ?"(arn:(aws(-[a-z]+)):secretsmanager:[a-z0-9-]+:[0-9]{12}:secret:([a-zA-Z0-9\]+/)[a-zA-Z0-9/_+=,.@-]+-[a-zA-Z0-9]+)")]

DockerContainerStatusLogFrequency

Die Häufigkeit (in Sekunden), mit der der Konnektor Statusinformationen über die Docker-Container protokolliert, die auf dem Core ausgeführt werden. Der Standardwert ist 300 Sekunden (5 Minuten).

Anzeigename in der AWS IoT Konsole: Protokollierungsfrequenz

Erforderlich: false

Typ: string

Gültiges Muster: ^[1-9]{1}[0-9]{0,3}$

ForceDeploy

Gibt an, ob die Docker-Bereitstellung erzwungen werden soll, wenn sie aufgrund der unsachgemäßen Bereinigung der letzten Bereitstellung fehlschlägt. Der Standardwert ist False.

Anzeigename in der AWS IoT Konsole: Bereitstellung erzwingen

Erforderlich: false

Typ: string

Gültiges Muster: ^(true|false)$

DockerPullBeforeUp

Gibt an, ob der Bereitstellungsprogramm ausgeführt werden soll, docker-compose pull bevor er docker-compose up für ein pull-down-up Verhalten ausgeführt wird. Der Standardwert ist True.

Anzeigename in der AWS IoT Konsole: Docker Pull Before Up

Erforderlich: false

Typ: string

Gültiges Muster: ^(true|false)$

StopContainersOnNewDeployment

Gibt an, ob der Konnektor von Docker Deployer verwaltete Docker-Container stoppen soll, wenn CCPC gestoppt wird (CCPC stoppt, wenn eine neue Gruppe bereitgestellt wird, oder der Kernel wird heruntergefahren). Der Standardwert ist True.

Anzeigename in der AWS IoT Konsole: Docker bei neuer Bereitstellung stoppen

Anmerkung

Wir empfehlen, diesen Parameter auf seinen True Standardwert festzulegen. Der Parameter für False bewirkt, dass Ihr Docker-Container auch nach dem Beenden des AWS IoT Greengrass Kerns oder dem Starten einer neuen Bereitstellung weiter ausgeführt wird. Wenn Sie diesen Parameter auf setzenFalse, müssen Sie sicherstellen, dass Ihre Docker-Container im Falle einer Änderung oder Ergänzung des docker-compose Servicenamens nach Bedarf gewartet werden.

Weitere Informationen finden Sie in der Dokumentation docker-compose zur Compose-Datei.

Erforderlich: false

Typ: string

Gültiges Muster: ^(true|false)$

DockerOfflineMode

Gibt an, ob die vorhandene Docker-Compose-Datei verwendet werden soll, wenn offline AWS IoT Greengrass startet. Der Standardwert ist False.

Erforderlich: false

Typ: string

Gültiges Muster: ^(true|false)$

Version 6
DockerComposeFileS3Bucket

Der Name des S3-Buckets, der Ihre Docker Compose-Datei enthält. Achten Sie beim Erstellen des Buckets darauf, die Regeln für Bucket-Namen zu befolgen, die im Benutzerhandbuch für Amazon Simple Storage Service beschrieben sind.

Anzeigename in der AWS IoT Konsole: Docker Compose-Datei in S3

Anmerkung

In der Konsole kombiniert die Docker Compose-Datei in S3-Eigenschaft die Parameter DockerComposeFileS3Bucket, DockerComposeFileS3Key und DockerComposeFileS3Version.

Erforderlich: true

Typ: string

Gültiges Muster [a-zA-Z0-9\\-\\.]{3,63}

DockerComposeFileS3Key

Der Objektschlüssel für Ihre Docker Compose-Datei in Amazon S3. Weitere Informationen, einschließlich Richtlinien zur Benennung von Objektschlüsseln, finden Sie unter Objektschlüssel und Metadaten im Benutzerhandbuch für Amazon Simple Storage Service.

Anmerkung

In der Konsole kombiniert die Docker Compose-Datei in S3-Eigenschaft die Parameter DockerComposeFileS3Bucket, DockerComposeFileS3Key und DockerComposeFileS3Version.

Erforderlich: true

Typ: string

Gültiges Muster .+

DockerComposeFileS3Version

Die Objektversion für Ihre Docker Compose-Datei in Amazon S3. Weitere Informationen, einschließlich Richtlinien zur Benennung von Objektschlüsseln, finden Sie unter Verwenden von Versioning im Benutzerhandbuch für Amazon Simple Storage Service.

Anmerkung

In der Konsole kombiniert die Docker Compose-Datei in S3-Eigenschaft die Parameter DockerComposeFileS3Bucket, DockerComposeFileS3Key und DockerComposeFileS3Version.

Erforderlich: false

Typ: string

Gültiges Muster .+

DockerComposeFileDestinationPath

Der absolute Pfad des lokalen Verzeichnisses, das zum Speichern einer Kopie der Docker Compose-Datei verwendet wird. Dies muss ein vorhandenes Verzeichnis sein. Der für DockerUserId angegebene Benutzer muss über die Berechtigung zum Erstellen einer Datei in diesem Verzeichnis verfügen. Weitere Informationen finden Sie unter Einrichten des Docker-Benutzers auf dem AWS IoT Greengrass Core.

Wichtig

In diesem Verzeichnis werden Ihre Docker Compose-Datei und die Anmeldeinformationen für Ihre Docker-Abbilder aus privaten Repositorys gespeichert. Es liegt in Ihrer Verantwortung, dieses Verzeichnis zu sichern. Weitere Informationen finden Sie unter Sicherheitshinweise.

Anzeigename in der AWS IoT Konsole: Verzeichnispfad für lokale Compose-Datei

Erforderlich: true

Typ: string

Gültiges Muster \/.*\/?

Beispiel: /home/username/myCompose

DockerUserId

Die UID des Linux-Benutzers, unter dem der Konnektor ausgeführt wird. Dieser Benutzer muss zur docker-Linux-Gruppe auf dem Core-Gerät gehören und Schreibberechtigungen für das DockerComposeFileDestinationPath-Verzeichnis haben. Weitere Informationen finden Sie unter Einrichten des Docker-Benutzers auf dem Core.

Anmerkung

Wir empfehlen Ihnen, eine Ausführung als Root zu vermeiden, sofern dies nicht absolut notwendig ist. Wenn Sie den Root-Benutzer angeben, müssen Sie Lambda-Funktionen erlauben, als Root auf dem AWS IoT Greengrass Core ausgeführt zu werden. Weitere Informationen finden Sie unter Ausführen einer Lambda-Funktion als Root.

Anzeigename in der AWS IoT Konsole: Docker-Benutzer-ID

Erforderlich: false

Typ: string

Gültiges Muster: ^[0-9]{1,5}$

AWSSecretsArnList

Die Amazon Resource Names (ARNs) der Secrets in AWS Secrets Manager, die die Anmeldeinformationen enthalten, die für den Zugriff auf Ihre Docker-Abbilder in privaten Repositorys verwendet werden. Weitere Informationen finden Sie unter Zugreifen auf Docker-Images aus privaten Repositorys.

Anzeigename in der AWS IoT Konsole: Anmeldeinformationen für private Repositorys

Erforderlich: false. Dieser Parameter ist erforderlich, um auf Docker-Abbilder zuzugreifen, die in privaten Repositorys gespeichert sind.

Typ: array von string

Gültiges Muster: [( ?,? ?"(arn:(aws(-[a-z]+)):secretsmanager:[a-z0-9-]+:[0-9]{12}:secret:([a-zA-Z0-9\]+/)[a-zA-Z0-9/_+=,.@-]+-[a-zA-Z0-9]+)")]

DockerContainerStatusLogFrequency

Die Häufigkeit (in Sekunden), mit der der Konnektor Statusinformationen über die Docker-Container protokolliert, die auf dem Core ausgeführt werden. Der Standardwert ist 300 Sekunden (5 Minuten).

Anzeigename in der AWS IoT Konsole: Protokollierungsfrequenz

Erforderlich: false

Typ: string

Gültiges Muster: ^[1-9]{1}[0-9]{0,3}$

ForceDeploy

Gibt an, ob die Docker-Bereitstellung erzwungen werden soll, wenn sie aufgrund der unsachgemäßen Bereinigung der letzten Bereitstellung fehlschlägt. Der Standardwert ist False.

Anzeigename in der AWS IoT Konsole: Bereitstellung erzwingen

Erforderlich: false

Typ: string

Gültiges Muster: ^(true|false)$

DockerPullBeforeUp

Gibt an, ob der Bereitstellungsprogramm ausgeführt werden soll, docker-compose pull bevor er docker-compose up für ein pull-down-up Verhalten ausgeführt wird. Der Standardwert ist True.

Anzeigename in der AWS IoT Konsole: Docker Pull Before Up

Erforderlich: false

Typ: string

Gültiges Muster: ^(true|false)$

StopContainersOnNewDeployment

Gibt an, ob der Konnektor von Docker Deployer verwaltete Docker-Container stoppen soll, wenn CCPC gestoppt wird (wenn eine neue Gruppenbereitstellung durchgeführt wird oder der Kernel heruntergefahren wird). Der Standardwert ist True.

Anzeigename in der AWS IoT Konsole: Docker bei neuer Bereitstellung stoppen

Anmerkung

Wir empfehlen, diesen Parameter auf seinen True Standardwert festzulegen. Der Parameter für False bewirkt, dass Ihr Docker-Container auch nach dem Beenden des AWS IoT Greengrass Cores oder dem Starten einer neuen Bereitstellung weiter ausgeführt wird. Wenn Sie diesen Parameter auf festlegenFalse, müssen Sie sicherstellen, dass Ihre Docker-Container im Falle einer Änderung oder Ergänzung des docker-compose Servicenamens nach Bedarf verwaltet werden.

Weitere Informationen finden Sie in der Dokumentation docker-compose zur Compose-Datei.

Erforderlich: false

Typ: string

Gültiges Muster: ^(true|false)$

Version 5
DockerComposeFileS3Bucket

Der Name des S3-Buckets, der Ihre Docker Compose-Datei enthält. Wenn Sie den Bucket erstellen, müssen Sie die Regeln für Bucket-Namen befolgen, die im Benutzerhandbuch für Amazon Simple Storage Service beschrieben sind.

Anzeigename in der AWS IoT Konsole: Docker Compose-Datei in S3

Anmerkung

In der Konsole kombiniert die Docker Compose-Datei in S3-Eigenschaft die Parameter DockerComposeFileS3Bucket, DockerComposeFileS3Key und DockerComposeFileS3Version.

Erforderlich: true

Typ: string

Gültiges Muster [a-zA-Z0-9\\-\\.]{3,63}

DockerComposeFileS3Key

Der Objektschlüssel für Ihre Docker-Compose-Datei in Amazon S3. Weitere Informationen, einschließlich Richtlinien zur Benennung von Objektschlüsseln, finden Sie unter Objektschlüssel und Metadaten im Benutzerhandbuch für Amazon Simple Storage Service.

Anmerkung

In der Konsole kombiniert die Docker Compose-Datei in S3-Eigenschaft die Parameter DockerComposeFileS3Bucket, DockerComposeFileS3Key und DockerComposeFileS3Version.

Erforderlich: true

Typ: string

Gültiges Muster .+

DockerComposeFileS3Version

Die Objektversion für Ihre Docker-Compose-Datei in Amazon S3. Weitere Informationen, einschließlich Richtlinien zur Benennung von Objektschlüsseln, finden Sie unter Verwenden von Versioning im Benutzerhandbuch für Amazon Simple Storage Service.

Anmerkung

In der Konsole kombiniert die Docker Compose-Datei in S3-Eigenschaft die Parameter DockerComposeFileS3Bucket, DockerComposeFileS3Key und DockerComposeFileS3Version.

Erforderlich: false

Typ: string

Gültiges Muster .+

DockerComposeFileDestinationPath

Der absolute Pfad des lokalen Verzeichnisses, das zum Speichern einer Kopie der Docker Compose-Datei verwendet wird. Dies muss ein vorhandenes Verzeichnis sein. Der für DockerUserId angegebene Benutzer muss über die Berechtigung zum Erstellen einer Datei in diesem Verzeichnis verfügen. Weitere Informationen finden Sie unter Einrichten des Docker-Benutzers auf dem AWS IoT Greengrass Core.

Wichtig

In diesem Verzeichnis werden Ihre Docker Compose-Datei und die Anmeldeinformationen für Ihre Docker-Abbilder aus privaten Repositorys gespeichert. Es liegt in Ihrer Verantwortung, dieses Verzeichnis zu sichern. Weitere Informationen finden Sie unter Sicherheitshinweise.

Anzeigename in der AWS IoT Konsole: Verzeichnispfad für lokale Compose-Datei

Erforderlich: true

Typ: string

Gültiges Muster \/.*\/?

Beispiel: /home/username/myCompose

DockerUserId

Die UID des Linux-Benutzers, unter dem der Konnektor ausgeführt wird. Dieser Benutzer muss zur docker-Linux-Gruppe auf dem Core-Gerät gehören und Schreibberechtigungen für das DockerComposeFileDestinationPath-Verzeichnis haben. Weitere Informationen finden Sie unter Einrichten des Docker-Benutzers auf dem Core.

Anmerkung

Wir empfehlen Ihnen, eine Ausführung als Root zu vermeiden, sofern dies nicht absolut notwendig ist. Wenn Sie den Root-Benutzer angeben, müssen Sie Lambda-Funktionen erlauben, als Root auf dem AWS IoT Greengrass Core ausgeführt zu werden. Weitere Informationen finden Sie unter Ausführen einer Lambda-Funktion als Root.

Anzeigename in der AWS IoT Konsole: Docker-Benutzer-ID

Erforderlich: false

Typ: string

Gültiges Muster: ^[0-9]{1,5}$

AWSSecretsArnList

Die Amazon Resource Names (ARNs) der Secrets in AWS Secrets Manager, die die Anmeldeinformationen enthalten, die für den Zugriff auf Ihre Docker-Abbilder in privaten Repositorys verwendet werden. Weitere Informationen finden Sie unter Zugreifen auf Docker-Images aus privaten Repositorys.

Anzeigename in der AWS IoT Konsole: Anmeldeinformationen für private Repositorys

Erforderlich: false. Dieser Parameter ist erforderlich, um auf Docker-Abbilder zuzugreifen, die in privaten Repositorys gespeichert sind.

Typ: array von string

Gültiges Muster: [( ?,? ?"(arn:(aws(-[a-z]+)):secretsmanager:[a-z0-9-]+:[0-9]{12}:secret:([a-zA-Z0-9\]+/)[a-zA-Z0-9/_+=,.@-]+-[a-zA-Z0-9]+)")]

DockerContainerStatusLogFrequency

Die Häufigkeit (in Sekunden), mit der der Konnektor Statusinformationen über die Docker-Container protokolliert, die auf dem Core ausgeführt werden. Der Standardwert ist 300 Sekunden (5 Minuten).

Anzeigename in der AWS IoT Konsole: Protokollierungsfrequenz

Erforderlich: false

Typ: string

Gültiges Muster: ^[1-9]{1}[0-9]{0,3}$

ForceDeploy

Gibt an, ob die Docker-Bereitstellung erzwungen werden soll, wenn sie aufgrund der unsachgemäßen Bereinigung der letzten Bereitstellung fehlschlägt. Der Standardwert ist False.

Anzeigename in der AWS IoT Konsole: Bereitstellung erzwingen

Erforderlich: false

Typ: string

Gültiges Muster: ^(true|false)$

DockerPullBeforeUp

Gibt an, ob der Bereitstellungsprogramm ausgeführt werden soll, docker-compose pull bevor er docker-compose up für ein pull-down-up Verhalten ausgeführt wird. Der Standardwert ist True.

Anzeigename in der AWS IoT Konsole: Docker Pull Before Up

Erforderlich: false

Typ: string

Gültiges Muster: ^(true|false)$

Versions 2 - 4
DockerComposeFileS3Bucket

Der Name des S3-Buckets, der Ihre Docker Compose-Datei enthält. Achten Sie beim Erstellen des Buckets darauf, die Regeln für Bucket-Namen zu befolgen, die im Benutzerhandbuch für Amazon Simple Storage Service beschrieben sind.

Anzeigename in der AWS IoT Konsole: Docker Compose-Datei in S3

Anmerkung

In der Konsole kombiniert die Docker Compose-Datei in S3-Eigenschaft die Parameter DockerComposeFileS3Bucket, DockerComposeFileS3Key und DockerComposeFileS3Version.

Erforderlich: true

Typ: string

Gültiges Muster [a-zA-Z0-9\\-\\.]{3,63}

DockerComposeFileS3Key

Der Objektschlüssel für Ihre Docker-Compose-Datei in Amazon S3. Weitere Informationen, einschließlich Richtlinien zur Benennung von Objektschlüsseln, finden Sie unter Objektschlüssel und Metadaten im Benutzerhandbuch für Amazon Simple Storage Service.

Anmerkung

In der Konsole kombiniert die Docker Compose-Datei in S3-Eigenschaft die Parameter DockerComposeFileS3Bucket, DockerComposeFileS3Key und DockerComposeFileS3Version.

Erforderlich: true

Typ: string

Gültiges Muster .+

DockerComposeFileS3Version

Die Objektversion für Ihre Docker-Compose-Datei in Amazon S3. Weitere Informationen, einschließlich Richtlinien zur Benennung von Objektschlüsseln, finden Sie unter Verwenden von Versioning im Benutzerhandbuch für Amazon Simple Storage Service.

Anmerkung

In der Konsole kombiniert die Docker Compose-Datei in S3-Eigenschaft die Parameter DockerComposeFileS3Bucket, DockerComposeFileS3Key und DockerComposeFileS3Version.

Erforderlich: false

Typ: string

Gültiges Muster .+

DockerComposeFileDestinationPath

Der absolute Pfad des lokalen Verzeichnisses, das zum Speichern einer Kopie der Docker Compose-Datei verwendet wird. Dies muss ein vorhandenes Verzeichnis sein. Der für DockerUserId angegebene Benutzer muss über die Berechtigung zum Erstellen einer Datei in diesem Verzeichnis verfügen. Weitere Informationen finden Sie unter Einrichten des Docker-Benutzers auf dem AWS IoT Greengrass Core.

Wichtig

In diesem Verzeichnis werden Ihre Docker Compose-Datei und die Anmeldeinformationen für Ihre Docker-Abbilder aus privaten Repositorys gespeichert. Es liegt in Ihrer Verantwortung, dieses Verzeichnis zu sichern. Weitere Informationen finden Sie unter Sicherheitshinweise.

Anzeigename in der AWS IoT Konsole: Verzeichnispfad für lokale Compose-Datei

Erforderlich: true

Typ: string

Gültiges Muster \/.*\/?

Beispiel: /home/username/myCompose

DockerUserId

Die UID des Linux-Benutzers, unter dem der Konnektor ausgeführt wird. Dieser Benutzer muss zur docker-Linux-Gruppe auf dem Core-Gerät gehören und Schreibberechtigungen für das DockerComposeFileDestinationPath-Verzeichnis haben. Weitere Informationen finden Sie unter Einrichten des Docker-Benutzers auf dem Core.

Anmerkung

Wir empfehlen Ihnen, eine Ausführung als Root zu vermeiden, sofern dies nicht absolut notwendig ist. Wenn Sie den Root-Benutzer angeben, müssen Sie Lambda-Funktionen erlauben, als Root auf dem AWS IoT Greengrass Core ausgeführt zu werden. Weitere Informationen finden Sie unter Ausführen einer Lambda-Funktion als Root.

Anzeigename in der AWS IoT Konsole: Docker-Benutzer-ID

Erforderlich: false

Typ: string

Gültiges Muster: ^[0-9]{1,5}$

AWSSecretsArnList

Die Amazon Resource Names (ARNs) der Secrets in AWS Secrets Manager, die die Anmeldeinformationen enthalten, die für den Zugriff auf Ihre Docker-Abbilder in privaten Repositorys verwendet werden. Weitere Informationen finden Sie unter Zugreifen auf Docker-Images aus privaten Repositorys.

Anzeigename in der AWS IoT Konsole: Anmeldeinformationen für private Repositorys

Erforderlich: false. Dieser Parameter ist erforderlich, um auf Docker-Abbilder zuzugreifen, die in privaten Repositorys gespeichert sind.

Typ: array von string

Gültiges Muster: [( ?,? ?"(arn:(aws(-[a-z]+)):secretsmanager:[a-z0-9-]+:[0-9]{12}:secret:([a-zA-Z0-9\]+/)[a-zA-Z0-9/_+=,.@-]+-[a-zA-Z0-9]+)")]

DockerContainerStatusLogFrequency

Die Häufigkeit (in Sekunden), mit der der Konnektor Statusinformationen über die Docker-Container protokolliert, die auf dem Core ausgeführt werden. Der Standardwert ist 300 Sekunden (5 Minuten).

Anzeigename in der AWS IoT Konsole: Protokollierungsfrequenz

Erforderlich: false

Typ: string

Gültiges Muster: ^[1-9]{1}[0-9]{0,3}$

ForceDeploy

Gibt an, ob die Docker-Bereitstellung erzwungen werden soll, wenn sie aufgrund der unsachgemäßen Bereinigung der letzten Bereitstellung fehlschlägt. Der Standardwert ist False.

Anzeigename in der AWS IoT Konsole: Bereitstellung erzwingen

Erforderlich: false

Typ: string

Gültiges Muster: ^(true|false)$

Version 1
DockerComposeFileS3Bucket

Der Name des S3-Buckets, der Ihre Docker Compose-Datei enthält. Achten Sie beim Erstellen des Buckets darauf, die Regeln für Bucket-Namen zu befolgen, die im Benutzerhandbuch für Amazon Simple Storage Service beschrieben sind.

Anzeigename in der AWS IoT Konsole: Docker Compose-Datei in S3

Anmerkung

In der Konsole kombiniert die Docker Compose-Datei in S3-Eigenschaft die Parameter DockerComposeFileS3Bucket, DockerComposeFileS3Key und DockerComposeFileS3Version.

Erforderlich: true

Typ: string

Gültiges Muster [a-zA-Z0-9\\-\\.]{3,63}

DockerComposeFileS3Key

Der Objektschlüssel für Ihre Docker-Compose-Datei in Amazon S3. Weitere Informationen, einschließlich Richtlinien zur Benennung von Objektschlüsseln, finden Sie unter Objektschlüssel und Metadaten im Benutzerhandbuch für Amazon Simple Storage Service.

Anmerkung

In der Konsole kombiniert die Docker Compose-Datei in S3-Eigenschaft die Parameter DockerComposeFileS3Bucket, DockerComposeFileS3Key und DockerComposeFileS3Version.

Erforderlich: true

Typ: string

Gültiges Muster .+

DockerComposeFileS3Version

Die Objektversion für Ihre Docker Compose-Datei in Amazon S3. Weitere Informationen, einschließlich Richtlinien zur Benennung von Objektschlüsseln, finden Sie unter Verwenden von Versioning im Benutzerhandbuch für Amazon Simple Storage Service.

Anmerkung

In der Konsole kombiniert die Docker Compose-Datei in S3-Eigenschaft die Parameter DockerComposeFileS3Bucket, DockerComposeFileS3Key und DockerComposeFileS3Version.

Erforderlich: false

Typ: string

Gültiges Muster .+

DockerComposeFileDestinationPath

Der absolute Pfad des lokalen Verzeichnisses, das zum Speichern einer Kopie der Docker Compose-Datei verwendet wird. Dies muss ein vorhandenes Verzeichnis sein. Der für DockerUserId angegebene Benutzer muss über die Berechtigung zum Erstellen einer Datei in diesem Verzeichnis verfügen. Weitere Informationen finden Sie unter Einrichten des Docker-Benutzers auf dem AWS IoT Greengrass Core.

Wichtig

In diesem Verzeichnis werden Ihre Docker Compose-Datei und die Anmeldeinformationen für Ihre Docker-Abbilder aus privaten Repositorys gespeichert. Es liegt in Ihrer Verantwortung, dieses Verzeichnis zu sichern. Weitere Informationen finden Sie unter Sicherheitshinweise.

Anzeigename in der AWS IoT Konsole: Verzeichnispfad für lokale Compose-Datei

Erforderlich: true

Typ: string

Gültiges Muster \/.*\/?

Beispiel: /home/username/myCompose

DockerUserId

Die UID des Linux-Benutzers, unter dem der Konnektor ausgeführt wird. Dieser Benutzer muss zur docker-Linux-Gruppe auf dem Core-Gerät gehören und Schreibberechtigungen für das DockerComposeFileDestinationPath-Verzeichnis haben. Weitere Informationen finden Sie unter Einrichten des Docker-Benutzers auf dem Core.

Anmerkung

Wir empfehlen Ihnen, eine Ausführung als Root zu vermeiden, sofern dies nicht absolut notwendig ist. Wenn Sie den Root-Benutzer angeben, müssen Sie Lambda-Funktionen erlauben, als Root auf dem AWS IoT Greengrass Core ausgeführt zu werden. Weitere Informationen finden Sie unter Ausführen einer Lambda-Funktion als Root.

Anzeigename in der AWS IoT Konsole: Docker-Benutzer-ID

Erforderlich: false

Typ: string

Gültiges Muster: ^[0-9]{1,5}$

AWSSecretsArnList

Die Amazon Resource Names (ARNs) der Secrets in AWS Secrets Manager, die die Anmeldeinformationen enthalten, die für den Zugriff auf Ihre Docker-Abbilder in privaten Repositorys verwendet werden. Weitere Informationen finden Sie unter Zugreifen auf Docker-Images aus privaten Repositorys.

Anzeigename in der AWS IoT Konsole: Anmeldeinformationen für private Repositorys

Erforderlich: false. Dieser Parameter ist erforderlich, um auf Docker-Abbilder zuzugreifen, die in privaten Repositorys gespeichert sind.

Typ: array von string

Gültiges Muster: [( ?,? ?"(arn:(aws(-[a-z]+)):secretsmanager:[a-z0-9-]+:[0-9]{12}:secret:([a-zA-Z0-9\]+/)[a-zA-Z0-9/_+=,.@-]+-[a-zA-Z0-9]+)")]

DockerContainerStatusLogFrequency

Die Häufigkeit (in Sekunden), mit der der Konnektor Statusinformationen über die Docker-Container protokolliert, die auf dem Core ausgeführt werden. Der Standardwert ist 300 Sekunden (5 Minuten).

Anzeigename in der AWS IoT Konsole: Protokollierungsfrequenz

Erforderlich: false

Typ: string

Gültiges Muster: ^[1-9]{1}[0-9]{0,3}$

Beispiel für das Erstellen eines Konnektors (AWS CLI)

Der folgende CLI-Befehl erstellt eine ConnectorDefinition mit einer Anfangsversion, die den Greengrass Docker-Anwendungsbereitstellungs-Connector enthält.

aws greengrass create-connector-definition --name MyGreengrassConnectors --initial-version '{ "Connectors": [ { "Id": "MyDockerAppplicationDeploymentConnector", "ConnectorArn": "arn:aws:greengrass:region::/connectors/DockerApplicationDeployment/versions/5", "Parameters": { "DockerComposeFileS3Bucket": "myS3Bucket", "DockerComposeFileS3Key": "production-docker-compose.yml", "DockerComposeFileS3Version": "123", "DockerComposeFileDestinationPath": "/home/username/myCompose", "DockerUserId": "1000", "AWSSecretsArnList": "[\"arn:aws:secretsmanager:region:account-id:secret:greengrass-secret1-hash\",\"arn:aws:secretsmanager:region:account-id:secret:greengrass-secret2-hash\"]", "DockerContainerStatusLogFrequency": "30", "ForceDeploy": "True", "DockerPullBeforeUp": "True" } } ] }'
Anmerkung

Die Lambda-Funktion in diesem Konnektor hat einen langlebigen Lebenszyklus.

Eingabedaten

Dieser Konnektor benötigt oder akzeptiert keine Eingabedaten.

Ausgabedaten

Dieser Konnektor veröffentlicht den Status des docker-compose up-Befehls als Ausgabedaten.

Themenfilter im Abonnement

dockerapplicationdeploymentconnector/message/status

Beispielausgabe: Erfolg
{ "status":"success", "GreengrassDockerApplicationDeploymentStatus":"Successfully triggered docker-compose up", "S3Bucket":"myS3Bucket", "ComposeFileName":"production-docker-compose.yml", "ComposeFileVersion":"123" }
Beispielausgabe: Fehler
{ "status":"fail", "error_message":"description of error", "error":"InvalidParameter" }

Der Fehlertyp kann InvalidParameter oder InternalError sein.

Einrichten des Docker-Benutzers auf dem AWS IoT Greengrass Core

Der Bereitstellungs-Connector der Greengrass-Docker-Anwendung wird als der Benutzer ausgeführt, den Sie für den -DockerUserIdParameter angeben. Wenn Sie keinen Wert angeben, wird der Konnektor als ggc_user ausgeführt. Dies ist die standardmäßige Greengrass-Zugriffsidentität.

Damit der Konnektor mit dem Docker-Daemon interagieren kann, muss der Docker-Benutzer zur docker-Linux-Gruppe auf dem Core gehören. Der Docker-Benutzer muss auch über Schreibberechtigungen für das DockerComposeFileDestinationPath-Verzeichnis verfügen. Hier speichert der Konnektor Ihre lokale docker-compose.yml-Datei und die Docker-Anmeldeinformationen.

Anmerkung
  • Es wird empfohlen, einen Linux-Benutzer zu erstellen, anstatt den Standard-ggc_user zu verwenden. Andernfalls kann jede Lambda-Funktion in der Greengrass-Gruppe auf die Compose-Datei und Docker-Anmeldeinformationen zugreifen.

  • Wir empfehlen Ihnen, eine Ausführung als Root zu vermeiden, sofern dies nicht absolut notwendig ist. Wenn Sie den Root-Benutzer angeben, müssen Sie Lambda-Funktionen erlauben, als Root auf dem AWS IoT Greengrass Core ausgeführt zu werden. Weitere Informationen finden Sie unter Ausführen einer Lambda-Funktion als Root.

  1. Erstellen Sie den Benutzer. Sie können den useradd-Befehl ausführen und die optionale -u-Option zum Zuweisen einer UID hinzufügen. Beispielsweise:

    sudo useradd -u 1234 user-name
  2. Fügen Sie den Benutzer der docker-Gruppe auf dem Core hinzu. Beispielsweise:

    sudo usermod -aG docker user-name

    Weitere Informationen, einschließlich dem Erstellen der docker-Gruppe, finden Sie unter Verwalten von Docker als Nicht-Root-Benutzer in der Docker-Dokumentation.

  3. Erteilen Sie dem Benutzer die Berechtigungen, in das für den DockerComposeFileDestinationPath-Parameter angegebene Verzeichnis zu schreiben. Beispielsweise:

    1. So legen Sie den Benutzer als Besitzer des Verzeichnisses fest. In diesem Beispiel wird die UID aus Schritt 1 verwendet.

      chown 1234 docker-compose-file-destination-path
    2. So erteilen Sie dem Besitzer Lese- und Schreibberechtigungen.

      chmod 700 docker-compose-file-destination-path

      Weitere Informationen finden Sie unter How To Manage File And Folder Permissions In Linux in der Linux Foundation-Dokumentation.

    3. Wenn Sie beim Erstellen des Benutzers keine UID zugewiesen haben oder wenn Sie einen vorhandenen Benutzer verwendet haben, führen Sie den id-Befehl aus, um die UID zu suchen.

      id -u user-name

      Sie verwenden die UID, um den DockerUserId-Parameter für den Konnektor zu konfigurieren.

Nutzungsinformationen

Wenn Sie den Greengrass-Docker-Anwendungsbereitstellungs-Connector verwenden, sollten Sie die folgenden implementierungsspezifischen Nutzungsinformationen beachten.

  • Präfix für Projektnamen behoben. Der Konnektor stellt das greengrassdockerapplicationdeployment-Präfix den Namen der Docker-Container vor, die er startet. Der Konnektor verwendet dieses Präfix als Projektname in den ausgeführten docker-compose-Befehlen.

  • Protokollierungsverhalten. Der Konnektor schreibt Statusinformationen und Fehlerbehebungsinformationen in eine Protokolldatei. Sie können so konfigurierenAWS IoT Greengrass, dass Protokolle an CloudWatch -Protokolle gesendet werden und Protokolle lokal geschrieben werden. Weitere Informationen finden Sie unter Protokollieren für Konnektoren. Dies ist der Pfad zum lokalen Protokoll für den Konnektor:

    /greengrass-root/ggc/var/log/user/region/aws/DockerApplicationDeployment.log

    Sie müssen über Root-Berechtigungen verfügen, um auf lokale Protokolle zugreifen zu können.

  • Aktualisieren von Docker-Images. Docker speichert Abbilder auf dem Core-Gerät zwischen. Wenn Sie ein Docker-Abbild aktualisieren und die Änderung an das Core-Gerät weitergeben möchten, stellen Sie sicher, dass Sie das Tag für das Abbild in der Compose-Datei ändern. Änderungen werden wirksam, nachdem die Greengrass-Gruppe bereitgestellt wurde.

  • 10-minütiges Timeout für Bereinigungsvorgänge. Wenn der Greengrass-Daemon während eines Neustarts beendet wird, wird der docker-compose down Befehl initiiert. Alle Docker-Container haben maximal 10 Minuten, nachdem initiiert docker-compose down wurde, um Bereinigungsvorgänge durchzuführen. Wenn die Bereinigung nicht innerhalb von 10 Minuten abgeschlossen ist, müssen Sie die verbleibenden Container manuell bereinigen. Weitere Informationen finden Sie unter docker rm in der Docker-CLI-Dokumentation.

  • Ausführen von Docker-Befehlen. Um Probleme zu beheben, können Sie Docker-Befehle in einem Terminalfenster auf dem Core-Gerät ausführen. Führen Sie beispielsweise den folgenden Befehl aus, um die Docker-Container anzuzeigen, die vom Konnektor gestartet wurden:

    docker ps --filter name="greengrassdockerapplicationdeployment"
  • Reservierte Ressourcen-ID. Der Konnektor verwendet die DOCKER_DEPLOYER_SECRET_RESOURCE_RESERVED_ID_index-ID für die Greengrass-Ressourcen, die er in der Greengrass-Gruppe erstellt. Ressourcen-IDs müssen in der Gruppe eindeutig sein. Weisen Sie daher keine Ressourcen-ID zu, die möglicherweise mit dieser reservierten Ressourcen-ID in Konflikt steht.

  • Offline-Modus. Wenn Sie den DockerOfflineMode Konfigurationsparameter auf setzenTrue, kann der Docker-Konnektor im Offline-Modus arbeiten. Dies kann passieren, wenn eine Greengrass-Gruppenbereitstellung neu gestartet wird, während das Core-Gerät offline ist, und der Konnektor keine Verbindung zu Amazon S3 oder Amazon ECR herstellen kann, um die Docker-Compose-Datei abzurufen.

    Wenn der Offline-Modus aktiviert ist, versucht der Konnektor, Ihre Compose-Datei herunterzuladen und docker login Befehle wie bei einem normalen Neustart auszuführen. Wenn diese Versuche fehlschlagen, sucht der Konnektor nach einer lokal gespeicherten Compose-Datei in dem Ordner, der mit dem DockerComposeFileDestinationPath Parameter angegeben wurde. Wenn eine lokale Compose-Datei vorhanden ist, folgt der Konnektor der normalen docker-compose Befehlsfolge und ruft aus lokalen Bildern ab. Wenn die Compose-Datei oder die lokalen Bilder nicht vorhanden sind, schlägt der Konnektor fehl. Das Verhalten der StopContainersOnNewDeployment Parameter ForceDeploy und bleibt im Offline-Modus gleich.

Kommunikation mit Docker-Containern

AWS IoT Greengrass unterstützt die folgenden Kommunikationskanäle zwischen Greengrass-Komponenten und Docker-Containern:

  • Greengrass-Lambda-Funktionen können REST-APIs verwenden, um mit Prozessen in Docker-Containern zu kommunizieren. Sie können einen Server in einem Docker-Container einrichten, der einen Port öffnet. Lambda-Funktionen können mit dem Container auf diesem Port kommunizieren.

  • Prozesse in Docker-Containern können MQTT-Nachrichten über den lokalen Greengrass-Nachrichtenbroker austauschen. Sie können den Docker-Container als Client-Gerät in der Greengrass-Gruppe einrichten und dann Abonnements erstellen, damit der Container mit Greengrass-Lambda-Funktionen, Client-Geräten und anderen Connectors in der Gruppe oder mit AWS IoT und dem lokalen Schattenservice kommunizieren kann. Weitere Informationen finden Sie unter Konfigurieren der MQTT-Kommunikation mit Docker-Containern.

  • Greengrass-Lambda-Funktionen können eine freigegebene Datei aktualisieren, um Informationen an Docker-Container zu übergeben. Sie können die Compose-Datei für ein Bind-Mount des freigegebenen Dateipfads für einen Docker-Container verwenden.

Konfigurieren der MQTT-Kommunikation mit Docker-Containern

Sie können einen Docker-Container als Client-Gerät konfigurieren und ihn einer Greengrass-Gruppe hinzufügen. Anschließend können Sie Abonnements erstellen, die die MQTT-Kommunikation zwischen dem Docker-Container und Greengrass-Komponenten oder AWS IoT ermöglichen. Im folgenden Verfahren erstellen Sie ein Abonnement, mit dem das Docker-Containergerät Schattenaktualisierungsmeldungen vom lokalen Schattenservice empfangen kann. Sie können diesem Muster folgen, um andere Abonnements zu erstellen.

Anmerkung

Bei diesem Verfahren wird davon ausgegangen, dass Sie bereits eine Greengrass-Gruppe und einen Greengrass-Kern (v1.10 oder höher) erstellt haben. Informationen zum Erstellen einer Greengrass-Gruppe und eines Kerns finden Sie unter Erste Schritte mit AWS IoT Greengrass.

So konfigurieren Sie einen Docker-Container als Client-Gerät und fügen ihn einer Greengrass-Gruppe hinzu
  1. Erstellen Sie einen Ordner auf dem Core-Gerät, um die Zertifikate und Schlüssel zu speichern, die zur Authentifizierung des Greengrass-Geräts verwendet werden.

    Der Dateipfad muss auf dem Docker-Container gemountet werden, den Sie starten möchten. Das folgende Snippet zeigt, wie Sie einen Dateipfad in Ihrer Compose-Datei mounten. In diesem Beispiel path-to-device-certs steht für den Ordner, den Sie in diesem Schritt erstellt haben.

    version: '3.3' services: myService: image: user-name/repo:image-tag volumes: - /path-to-device-certs/:/path-accessible-in-container
  2. Erweitern Sie im Navigationsbereich der AWS IoTKonsole unter Verwalten die Option Greengrass-Geräte und wählen Sie dann Gruppen (V1) aus.

  3. Wählen Sie die Zielgruppe aus.

  4. Wählen Sie auf der Gruppenkonfigurationsseite Client-Geräte und dann Zuordnen aus.

  5. Wählen Sie im Modal Client-Gerät mit dieser Gruppe verknüpfen die Option Neues AWS IoT Objekt erstellen aus.

    Die Seite Objekte erstellen wird in einer neuen Registerkarte geöffnet.

  6. Wählen Sie auf der Seite Objekte erstellen die Option Einzelobjekt erstellen und dann Weiter aus.

  7. Geben Sie auf der Seite Objekteigenschaften angeben einen Namen für das Gerät ein und wählen Sie dann Weiter aus.

  8. Wählen Sie auf der Seite Gerätezertifikat konfigurieren die Option Weiter aus.

  9. Führen Sie auf der Seite Richtlinien an Zertifikat anhängen einen der folgenden Schritte aus:

    • Wählen Sie eine vorhandene Richtlinie aus, die Berechtigungen gewährt, die Client-Geräte benötigen, und wählen Sie dann Objekt erstellen aus.

      Ein Modal wird geöffnet, in dem Sie die Zertifikate und Schlüssel herunterladen können, die das Gerät zum Herstellen einer Verbindung mit dem AWS Cloud und dem -Kern verwendet.

    • Erstellen und fügen Sie eine neue Richtlinie an, die Client-Geräteberechtigungen gewährt. Gehen Sie wie folgt vor:

      1. Wählen Sie Richtlinie erstellen aus.

        Die Seite Create policy (Richtlinie erstellen) wird in einer neuen Registerkarte geöffnet.

      2. Führen Sie auf der Seite Create policy (Richtlinie erstellen) die folgenden Schritte aus:

        1. Geben Sie unter Richtlinienname einen Namen ein, der die Richtlinie beschreibt, z. B. GreengrassV1ClientDevicePolicy.

        2. Wählen Sie auf der Registerkarte Richtlinienanweisungen unter Richtliniendokument die Option JSON aus.

        3. Geben Sie das folgende Richtliniendokument ein. Diese Richtlinie ermöglicht es dem Client-Gerät, Greengrass-Kerne zu erkennen und zu allen MQTT-Themen zu kommunizieren. Informationen zum Einschränken des Zugriffs dieser Richtlinie finden Sie unter Geräteauthentifizierung und -autorisierung für AWS IoT Greengrass.

          { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iot:Publish", "iot:Subscribe", "iot:Connect", "iot:Receive" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "greengrass:*" ], "Resource": [ "*" ] } ] }
        4. Wählen Sie Create (Erstellen) aus, um die Richtlinie zu erstellen.

      3. Kehren Sie zur Browser-Registerkarte zurück, auf der die Seite Richtlinien an Zertifikat anhängen geöffnet ist. Gehen Sie wie folgt vor:

        1. Wählen Sie in der Liste Richtlinien die Richtlinie aus, die Sie erstellt haben, z. B. GreengrassV1ClientDevicePolicy.

          Wenn die Richtlinie nicht angezeigt wird, wählen Sie die Schaltfläche Aktualisieren.

        2. Wählen Sie Objekt erstellen aus.

          Ein Modal wird geöffnet, in dem Sie die Zertifikate und Schlüssel herunterladen können, die das Gerät zum Herstellen einer Verbindung mit dem AWS Cloud und dem -Kern verwendet.

  10. Laden Sie im Modal Zertifikate und Schlüssel herunterladen die Gerätezertifikate herunter.

    Wichtig

    Bevor Sie Fertig wählen, laden Sie die Sicherheitsressourcen herunter.

    Gehen Sie wie folgt vor:

    1. Wählen Sie für Gerätezertifikat die Option Herunterladen aus, um das Gerätezertifikat herunterzuladen.

    2. Wählen Sie für Öffentliche Schlüsseldatei die Option Herunterladen aus, um den öffentlichen Schlüssel für das Zertifikat herunterzuladen.

    3. Wählen Sie für Private Schlüsseldatei die Option Herunterladen aus, um die private Schlüsseldatei für das Zertifikat herunterzuladen.

    4. Überprüfen Sie die Serverauthentifizierung im -AWS IoTEntwicklerhandbuch und wählen Sie das entsprechende Stammzertifizierungsstellenzertifikat aus. Wir empfehlen Ihnen, Amazon Trust Services (ATS)-Endpunkte und ATS-Stammzertifizierungsstellenzertifikate zu verwenden. Wählen Sie unter Stammzertifizierungsstellenzertifikate die Option Herunterladen für ein Stammzertifizierungsstellenzertifikat aus.

    5. Wählen Sie Erledigt aus.

    Notieren Sie sich die Zertifikat-ID, die in den Dateinamen für das Gerätezertifikat und die Schlüssel üblich ist. Sie benötigen sie später.

  11. Kopieren Sie die Zertifikate und Schlüssel in den Ordner, den Sie in Schritt 1 erstellt haben.

Erstellen Sie als Nächstes ein Abonnement in der Gruppe. In diesem Beispiel können Sie ein Abonnement erstellen, damit das Docker-Containergerät MQTT-Nachrichten vom lokalen Schattenservice empfangen kann.

Anmerkung

Die maximale Größe eines Schattendokuments beträgt 8 KB. Weitere Informationen finden Sie unter AWS IoT-Kontingente im AWS IoT-Entwicklerhandbuch.

So erstellen Sie ein Abonnement, mit dem das Docker-Containergerät MQTT-Nachrichten vom lokalen Schattenservice empfangen kann
  1. Wählen Sie auf der Gruppenkonfigurationsseite die Registerkarte Abonnements und dann Abonnement hinzufügen aus.

  2. Konfigurieren Sie auf der Seite Select your source and target die Quelle und das Ziel wie folgt:

    1. Wählen Sie für Eine Quelle auswählen die Option Services und danach Local Shadow Service (Service lokaler Schatten) aus.

    2. Wählen Sie für Ziel auswählen die Option Geräte und dann Ihr Gerät aus.

    3. Wählen Sie Weiter aus.

    4. Wählen Sie auf der Seite Daten nach einem Thema filtern für Themenfilter die Option $aws/things/MyDockerDevice/shadow/update/acceptedund dann Weiter aus. Ersetzen Sie MyDockerDevice durch den Namen des Geräts, das Sie zuvor erstellt haben.

    5. Wählen Sie Finish (Abschließen).

Fügen Sie den folgenden Codeausschnitt in das Docker-Abbild ein, das Sie in der Compose-Datei referenzieren. Das ist der Greengrass-Gerätecode. Fügen Sie außerdem Code in Ihrem Docker-Container hinzu, der das Greengrass-Gerät innerhalb des Containers startet. Es kann als separater Prozess im Abbild oder in einem separaten Thread ausgeführt werden.

import os import sys import time import uuid from AWSIoTPythonSDK.core.greengrass.discovery.providers import DiscoveryInfoProvider from AWSIoTPythonSDK.exception.AWSIoTExceptions import DiscoveryInvalidRequestException from AWSIoTPythonSDK.MQTTLib import AWSIoTMQTTClient # Replace thingName with the name you registered for the Docker device. thingName = "MyDockerDevice" clientId = thingName # Replace host with the IoT endpoint for your &AWS-account;. host = "myPrefix.iot.region.amazonaws.com" # Replace topic with the topic where the Docker container subscribes. topic = "$aws/things/MyDockerDevice/shadow/update/accepted" # Replace these paths based on the download location of the certificates for the Docker container. rootCAPath = "/path-accessible-in-container/AmazonRootCA1.pem" certificatePath = "/path-accessible-in-container/certId-certificate.pem.crt" privateKeyPath = "/path-accessible-in-container/certId-private.pem.key" # Discover Greengrass cores. discoveryInfoProvider = DiscoveryInfoProvider() discoveryInfoProvider.configureEndpoint(host) discoveryInfoProvider.configureCredentials(rootCAPath, certificatePath, privateKeyPath) discoveryInfoProvider.configureTimeout(10) # 10 seconds. GROUP_CA_PATH = "./groupCA/" MQTT_QOS = 1 discovered = False groupCA = None coreInfo = None try: # Get discovery info from AWS IoT. discoveryInfo = discoveryInfoProvider.discover(thingName) caList = discoveryInfo.getAllCas() coreList = discoveryInfo.getAllCores() # Use first discovery result. groupId, ca = caList[0] coreInfo = coreList[0] # Save the group CA to a local file. groupCA = GROUP_CA_PATH + groupId + "_CA_" + str(uuid.uuid4()) + ".crt" if not os.path.exists(GROUP_CA_PATH): os.makedirs(GROUP_CA_PATH) groupCAFile = open(groupCA, "w") groupCAFile.write(ca) groupCAFile.close() discovered = True except DiscoveryInvalidRequestException as e: print("Invalid discovery request detected!") print("Type: %s" % str(type(e))) print("Error message: %s" % str(e)) print("Stopping...") except BaseException as e: print("Error in discovery!") print("Type: %s" % str(type(e))) print("Error message: %s" % str(e)) print("Stopping...") myAWSIoTMQTTClient = AWSIoTMQTTClient(clientId) myAWSIoTMQTTClient.configureCredentials(groupCA, privateKeyPath, certificatePath) # Try to connect to the Greengrass core. connected = False for connectivityInfo in coreInfo.connectivityInfoList: currentHost = connectivityInfo.host currentPort = connectivityInfo.port myAWSIoTMQTTClient.configureEndpoint(currentHost, currentPort) try: myAWSIoTMQTTClient.connect() connected = True except BaseException as e: print("Error in connect!") print("Type: %s" % str(type(e))) print("Error message: %s" % str(e)) if connected: break if not connected: print("Cannot connect to core %s. Exiting..." % coreInfo.coreThingArn) sys.exit(-2) # Handle the MQTT message received from GGShadowService. def customCallback(client, userdata, message): print("Received an MQTT message") print(message) # Subscribe to the MQTT topic. myAWSIoTMQTTClient.subscribe(topic, MQTT_QOS, customCallback) # Keep the process alive to listen for messages. while True: time.sleep(1)

Sicherheitshinweise

Beachten Sie bei der Verwendung des Greengrass Docker-Anwendungsbereitstellungs-Connectors die folgenden Sicherheitsüberlegungen.

Lokale Speicherung der Docker Compose-Datei

Der Konnektor speichert eine Kopie der Compose-Datei in dem für den DockerComposeFileDestinationPath-Parameter angegebenen Verzeichnis.

Es liegt in Ihrer Verantwortung, dieses Verzeichnis zu sichern. Sie sollten Dateisystemberechtigungen verwenden, um den Zugriff auf das Verzeichnis zu beschränken.

Lokale Speicherung der Docker-Anmeldeinformationen

Wenn Ihre Docker-Abbilder in privaten Repositorys gespeichert sind, speichert der Konnektor Ihre Docker-Anmeldeinformationen in dem für den DockerComposeFileDestinationPath-Parameter angegebenen Verzeichnis.

Es liegt in Ihrer Verantwortung, diese Anmeldeinformationen zu sichern. Beispielsweise sollten Sie credential-helper auf dem Core-Gerät verwenden, wenn Sie Docker Engine installieren.

Installieren von Docker Engine von einer vertrauenswürdigen Quelle

Es liegt in Ihrer Verantwortung, Docker Engine von einer vertrauenswürdigen Quelle zu installieren. Dieser Konnektor verwendet den Docker-Daemon auf dem Core-Gerät, um auf Ihre Docker-Komponenten zuzugreifen und Docker-Container zu verwalten.

Umfang der Greengrass-Gruppenrollenberechtigungen

Berechtigungen, die Sie der Greengrass-Gruppenrolle hinzufügen, können von allen Lambda-Funktionen und Konnektoren in der Greengrass-Gruppe übernommen werden. Dieser Konnektor erfordert Zugriff auf Ihre Docker Compose-Datei, die in einem S3-Bucket gespeichert ist. Sie erfordert auch Zugriff auf Ihr Amazon-ECR-Autorisierungstoken, wenn Ihre Docker-Images in einem privaten Repository in Amazon ECR gespeichert sind.

Lizenzen

Der Greengrass Docker-Anwendungsbereitstellungs-Connector enthält die folgende Software/Lizenzierung von Drittanbietern:

Dieser Konnektor wurde gemäß der Greengrass Core Software License Agreement veröffentlicht.

Änderungsprotokoll

In der folgenden Tabelle werden die Änderungen in jeder Version des Konnektors beschrieben.

Version

Änderungen

7

Es wurde hinzugefügtDockerOfflineMode, um eine vorhandene Docker-Compose-Datei zu verwenden, wenn offline AWS IoT Greengrass startet. Implementierte Wiederholungsversuche für den docker login Befehl. Unterstützung für 32-Bit-UIDs .

6

Es wurde hinzugefügtStopContainersOnNewDeployment, um die Containerbereinigung zu überschreiben, wenn eine neue Bereitstellung durchgeführt wird oder CCPC beendet wird. Sicherere Mechanismen zum Herunterfahren und Starten. YAML-Validierungsfehlerbehebung.

5

Images werden abgerufen, bevor ausgeführt wirddocker-compose down.

4

pull-before-up Verhalten zum Aktualisieren von Docker-Images hinzugefügt.

3

Es wurde ein Problem beim Suchen von Umgebungsvariablen behoben.

2

Der Parameter ForceDeploy wurde hinzugefügt.

1

Erstversion.

Eine Greengrass-Gruppe kann jeweils nur eine Version des Connectors enthalten. Weitere Informationen zum Aktualisieren einer Konnektorversion finden Sie unter Aktualisieren von Konnektorversionen.

Weitere Informationen finden Sie auch unter