Installieren Sie die AWS IoT Greengrass Core-Software mit AWS IoT Flottenbereitstellung - AWS IoT Greengrass

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.

Installieren Sie die AWS IoT Greengrass Core-Software mit AWS IoT Flottenbereitstellung

Diese Funktion ist für Version 2.4.0 und höher der Greengrass Nucleus-Komponente verfügbar.

Mit AWS IoT Fleet Provisioning können Sie konfigurieren, AWS IoT dass X.509-Gerätezertifikate und private Schlüssel generiert und sicher an Ihre Geräte gesendet werden, wenn diese zum ersten Mal eine Verbindung herstellen. AWS IoT AWS IoT stellt Client-Zertifikate bereit, die von der Amazon Root Certificate Authority (CA) signiert wurden. Sie können auch so konfigurieren AWS IoT , dass Dinggruppen, Dingtypen und Berechtigungen für Greengrass-Kerngeräte angegeben werden, die Sie mit Fleet Provisioning bereitstellen. Sie definieren eine Bereitstellungsvorlage, um zu definieren, wie jedes Gerät bereitgestellt wird AWS IoT . In der Bereitstellungsvorlage werden die Ressourcen für Dinge, Richtlinien und Zertifikate angegeben, die bei der Bereitstellung für ein Gerät erstellt werden sollen. Weitere Informationen finden Sie unter Bereitstellungsvorlagen im Entwicklerhandbuch.AWS IoT Core

AWS IoT Greengrass bietet ein AWS IoT Flottenbereitstellungs-Plugin, mit dem Sie die AWS IoT Greengrass Core-Software mithilfe von AWS Ressourcen installieren können, die durch AWS IoT Fleet Provisioning erstellt wurden. Das Fleet Provisioning Plugin verwendet die Bereitstellung nach Anspruch. Geräte verwenden ein Provisioning-Anspruchszertifikat und einen privaten Schlüssel, um ein eindeutiges X.509-Gerätezertifikat und einen privaten Schlüssel zu erhalten, die sie für den regulären Betrieb verwenden können. Sie können das Antragszertifikat und den privaten Schlüssel während der Herstellung in jedes Gerät einbetten, sodass Ihre Kunden die Geräte später aktivieren können, wenn jedes Gerät online ist. Sie können dasselbe Antragszertifikat und denselben privaten Schlüssel für mehrere Geräte verwenden. Weitere Informationen finden Sie unter Provisioning by Claim im AWS IoT Core Developer Guide.

Anmerkung

Das Fleet Provisioning-Plugin unterstützt derzeit nicht das Speichern von privaten Schlüssel- und Zertifikatsdateien in einem Hardware-Sicherheitsmodul (HSM). Um ein HSM zu verwenden, installieren Sie die AWS IoT Greengrass Core-Software mit manueller Bereitstellung.

Um die AWS IoT Greengrass Core-Software mit AWS IoT Flottenbereitstellung zu installieren, müssen Sie Ressourcen in Ihrem einrichten, die für AWS-Konto die Bereitstellung von Greengrass-Core-Geräten AWS IoT verwendet werden. Zu diesen Ressourcen gehören eine Bereitstellungsvorlage, Antragszertifikate und eine IAM-Rolle für den Tokenaustausch. Nachdem Sie diese Ressourcen erstellt haben, können Sie sie wiederverwenden, um mehrere Kerngeräte in einer Flotte bereitzustellen. Weitere Informationen finden Sie unter Einrichten der AWS IoT Flottenbereitstellung für Greengrass-Core-Geräte.

Wichtig

Bevor Sie die AWS IoT Greengrass Core-Software herunterladen, überprüfen Sie, ob Ihr Kerngerät die Anforderungen für die Installation und Ausführung der AWS IoT Greengrass Core-Software v2.0 erfüllt.

Voraussetzungen

Um die AWS IoT Greengrass Core-Software mit AWS IoT Flottenbereitstellung zu installieren, müssen Sie zunächst die AWS IoT Flottenbereitstellung für Greengrass-Kerngeräte einrichten. Nachdem Sie diese Schritte einmal abgeschlossen haben, können Sie Fleet Provisioning verwenden, um die AWS IoT Greengrass Core-Software auf einer beliebigen Anzahl von Geräten zu installieren.

Endpunkte abrufen AWS IoT

Holen Sie sich die AWS IoT Endpunkte für Sie und speichern Sie sie AWS-Konto, um sie später zu verwenden. Ihr Gerät verwendet diese Endpunkte, um eine Verbindung herzustellen. AWS IoT Gehen Sie wie folgt vor:

  1. Holen Sie sich den AWS IoT Datenendpunkt für Ihren AWS-Konto.

    aws iot describe-endpoint --endpoint-type iot:Data-ATS

    Die Antwort sieht dem folgenden Beispiel ähnlich, wenn die Anfrage erfolgreich ist.

    { "endpointAddress": "device-data-prefix-ats.iot.us-west-2.amazonaws.com" }
  2. Rufen Sie den Endpunkt der AWS IoT Anmeldeinformationen für Ihren AWS-Konto ab.

    aws iot describe-endpoint --endpoint-type iot:CredentialProvider

    Die Antwort sieht ähnlich wie im folgenden Beispiel aus, wenn die Anfrage erfolgreich ist.

    { "endpointAddress": "device-credentials-prefix.credentials.iot.us-west-2.amazonaws.com" }

Laden Sie Zertifikate auf das Gerät herunter

Das Gerät verwendet ein Anspruchszertifikat und einen privaten Schlüssel, um seine Anfrage zur Bereitstellung von AWS Ressourcen zu authentifizieren und ein X.509-Gerätezertifikat zu erwerben. Sie können das Antragszertifikat und den privaten Schlüssel bei der Herstellung in das Gerät einbetten oder das Zertifikat und den Schlüssel bei der Installation auf das Gerät kopieren. In diesem Abschnitt kopieren Sie das Antragszertifikat und den privaten Schlüssel auf das Gerät. Sie laden auch das Zertifikat der Amazon Root Certificate Authority (CA) auf das Gerät herunter.

Wichtig

Private Schlüssel für Provisioning Claim sollten jederzeit gesichert sein, auch auf Greengrass-Core-Geräten. Wir empfehlen Ihnen, anhand von CloudWatch Kennzahlen und Protokollen von Amazon nach Hinweisen auf Missbrauch zu suchen, wie z. B. die unbefugte Verwendung des Antragszertifikats zur Bereitstellung von Geräten. Wenn Sie einen Missbrauch feststellen, deaktivieren Sie das Provisioning Claim Certificate, sodass es nicht für die Bereitstellung von Geräten verwendet werden kann. Weitere Informationen finden Sie unter Überwachung AWS IoT im AWS IoT Core Entwicklerhandbuch.

Damit Sie die Anzahl der Geräte und die Geräte, die sich bei Ihnen registrieren, besser verwalten können, können Sie AWS-Konto bei der Erstellung einer Flottenbereitstellungsvorlage einen Pre-Provisioning-Hook angeben. Ein Pre-Provisioning-Hook ist eine AWS Lambda Funktion, die Vorlagenparameter validiert, die Geräte bei der Registrierung angeben. Sie können beispielsweise einen Pre-Provisioning-Hook erstellen, der eine Geräte-ID mit einer Datenbank vergleicht, um sicherzustellen, dass das Gerät über eine Bereitstellungsberechtigung verfügt. Weitere Informationen finden Sie unter Pre-Provisioning Hooks im Developer Guide.AWS IoT Core

So laden Sie Anspruchszertifikate auf das Gerät herunter
  1. Kopieren Sie das Antragszertifikat und den privaten Schlüssel auf das Gerät. Wenn SSH und SCP auf dem Entwicklungscomputer und dem Gerät aktiviert sind, können Sie den scp Befehl auf Ihrem Entwicklungscomputer verwenden, um das Anspruchszertifikat und den privaten Schlüssel zu übertragen. Mit dem folgenden Beispielbefehl werden diese Dateien in einem Ordner mit dem Namen claim-certs auf Ihrem Entwicklungscomputer auf das Gerät übertragen. device-ip-addressErsetzen Sie es durch die IP-Adresse Ihres Geräts.

    scp -r claim-certs/ device-ip-address:~
  2. Erstellen Sie den Greengrass-Stammordner auf dem Gerät. Sie werden später die AWS IoT Greengrass Core-Software in diesem Ordner installieren.

    Anmerkung

    Windows hat eine Pfadlängenbegrenzung von 260 Zeichen. Wenn Sie Windows verwenden, verwenden Sie einen Stammordner wie C:\greengrass\v2 oder, D:\greengrass\v2 um die Greengrass-Komponentenpfade unter der Obergrenze von 260 Zeichen zu halten.

    Linux or Unix
    • Ersetzen Sie es /greengrass/v2 durch den Ordner, den Sie verwenden möchten.

    sudo mkdir -p /greengrass/v2
    Windows Command Prompt
    • Ersetzen Sie C:\greengrass\v2 durch den zu verwendenden Ordner.

    mkdir C:\greengrass\v2
    PowerShell
    • Ersetzen Sie C:\greengrass\v2 durch den zu verwendenden Ordner.

    mkdir C:\greengrass\v2
  3. (Nur Linux) Legen Sie die Berechtigungen des übergeordneten Elements des Greengrass-Stammordners fest.

    • Ersetzen Sie /greengrass durch das übergeordnete Objekt des Stammordners.

    sudo chmod 755 /greengrass
  4. Verschieben Sie die Anspruchszertifikate in den Greengrass-Stammordner.

    • Ersetzen Sie /greengrass/v2 oder C:\greengrass\v2 durch den Greengrass-Stammordner.

    Linux or Unix
    sudo mv ~/claim-certs /greengrass/v2
    Windows Command Prompt (CMD)
    move %USERPROFILE%\claim-certs C:\greengrass\v2
    PowerShell
    mv -Path ~\claim-certs -Destination C:\greengrass\v2
  5. Laden Sie das Zertifikat der Amazon Root Certificate Authority (CA) herunter. AWS IoT Zertifikate sind standardmäßig mit dem Root-CA-Zertifikat von Amazon verknüpft.

    Linux or Unix
    sudo curl -o /greengrass/v2/AmazonRootCA1.pem https://www.amazontrust.com/repository/AmazonRootCA1.pem
    Windows Command Prompt (CMD)
    curl -o C:\greengrass\v2\\AmazonRootCA1.pem https://www.amazontrust.com/repository/AmazonRootCA1.pem
    PowerShell
    iwr -Uri https://www.amazontrust.com/repository/AmazonRootCA1.pem -OutFile C:\greengrass\v2\\AmazonRootCA1.pem

Richten Sie die Geräteumgebung ein

Folgen Sie den Schritten in diesem Abschnitt, um ein Linux- oder Windows-Gerät einzurichten, das als Ihr AWS IoT Greengrass Kerngerät verwendet werden soll.

Richten Sie ein Linux-Gerät ein

Um ein Linux-Gerät einzurichten für AWS IoT Greengrass V2
  1. Installieren Sie die Java-Runtime, die für die Ausführung der AWS IoT Greengrass Core-Software erforderlich ist. Wir empfehlen, dass Sie die Langzeit-Support-Versionen von Amazon Corretto oder OpenJDK verwenden. Version 8 oder höher ist erforderlich. Die folgenden Befehle zeigen Ihnen, wie Sie OpenJDK auf Ihrem Gerät installieren.

    • Für Debian- oder Ubuntu-basierte Distributionen:

      sudo apt install default-jdk
    • Für Red Hat-basierte Distributionen:

      sudo yum install java-11-openjdk-devel
    • Für Amazon Linux 2:

      sudo amazon-linux-extras install java-openjdk11
    • Für Amazon Linux 2023:

      sudo dnf install java-11-amazon-corretto -y

    Führen Sie nach Abschluss der Installation den folgenden Befehl aus, um zu überprüfen, ob Java auf Ihrem Linux-Gerät ausgeführt wird.

    java -version

    Der Befehl druckt die Version von Java, die auf dem Gerät ausgeführt wird. Bei einer Debian-basierten Distribution könnte die Ausgabe beispielsweise dem folgenden Beispiel ähneln.

    openjdk version "11.0.9.1" 2020-11-04
    OpenJDK Runtime Environment (build 11.0.9.1+1-post-Debian-1deb10u2)
    OpenJDK 64-Bit Server VM (build 11.0.9.1+1-post-Debian-1deb10u2, mixed mode)
  2. (Optional) Erstellen Sie den Standardsystembenutzer und die Standardgruppe, die Komponenten auf dem Gerät ausführen. Sie können auch festlegen, dass der AWS IoT Greengrass Core-Software-Installer diesen Benutzer und diese Gruppe während der Installation mithilfe des --component-default-user Installer-Arguments erstellt. Weitere Informationen finden Sie unter Installer-Argumente.

    sudo useradd --system --create-home ggc_user sudo groupadd --system ggc_group
  3. Stellen Sie sicher, dass der Benutzer, der die AWS IoT Greengrass Core-Software ausführt (in der Regelroot), über die erforderlichen Rechte verfügt, die Software sudo mit jedem beliebigen Benutzer und jeder Gruppe auszuführen.

    1. Führen Sie den folgenden Befehl aus, um die /etc/sudoers Datei zu öffnen.

      sudo visudo
    2. Stellen Sie sicher, dass die Berechtigung für den Benutzer wie im folgenden Beispiel aussieht.

      root ALL=(ALL:ALL) ALL
  4. (Optional) Um containerisierte Lambda-Funktionen auszuführen, müssen Sie cgroups v1 aktivieren und Sie müssen die Speicher - und Geräte-Cgroups aktivieren und mounten. Wenn Sie nicht vorhaben, containerisierte Lambda-Funktionen auszuführen, können Sie diesen Schritt überspringen.

    Um diese Cgroups-Optionen zu aktivieren, starten Sie das Gerät mit den folgenden Linux-Kernelparametern.

    cgroup_enable=memory cgroup_memory=1 systemd.unified_cgroup_hierarchy=0

    Informationen zum Anzeigen und Einstellen der Kernel-Parameter für Ihr Gerät finden Sie in der Dokumentation zu Ihrem Betriebssystem und Bootloader. Folgen Sie den Anweisungen, um die Kernel-Parameter dauerhaft einzustellen.

  5. Installieren Sie alle anderen erforderlichen Abhängigkeiten auf Ihrem Gerät, wie in der Liste der Anforderungen unter angegebenAnforderungen an Speichergeräte.

Richten Sie ein Windows-Gerät ein

Anmerkung

Diese Funktion ist für Version 2.5.0 und höher der Greengrass Nucleus-Komponente verfügbar.

Um ein Windows-Gerät einzurichten für AWS IoT Greengrass V2
  1. Installieren Sie die Java-Runtime, die für die Ausführung der AWS IoT Greengrass Core-Software erforderlich ist. Wir empfehlen, dass Sie die Langzeit-Support-Versionen von Amazon Corretto oder OpenJDK verwenden. Version 8 oder höher ist erforderlich.

  2. Prüfen Sie, ob Java in der Systemvariablen PATH verfügbar ist, und fügen Sie es hinzu, falls nicht. Auf dem LocalSystem Konto wird die AWS IoT Greengrass Core-Software ausgeführt, sodass Sie der Systemvariablen PATH statt der Benutzervariablen PATH für Ihren Benutzer Java hinzufügen müssen. Gehen Sie wie folgt vor:

    1. Drücken Sie die Windows-Taste, um das Startmenü zu öffnen.

    2. Geben Sie environment variables ein, um im Startmenü nach den Systemoptionen zu suchen.

    3. Wählen Sie in den Suchergebnissen des Startmenüs die Option Systemumgebungsvariablen bearbeiten aus, um das Fenster mit den Systemeigenschaften zu öffnen.

    4. Wählen Sie Umgebungsvariablen... um das Fenster Umgebungsvariablen zu öffnen.

    5. Wählen Sie unter Systemvariablen die Option Pfad und dann Bearbeiten aus. Im Fenster Umgebungsvariable bearbeiten können Sie jeden Pfad in einer separaten Zeile anzeigen.

    6. Überprüfen Sie, ob der Pfad zum bin Ordner der Java-Installation vorhanden ist. Der Pfad könnte dem folgenden Beispiel ähneln.

      C:\\Program Files\\Amazon Corretto\\jdk11.0.13_8\\bin
    7. Wenn der bin Ordner der Java-Installation in Path fehlt, wählen Sie Neu, um ihn hinzuzufügen, und klicken Sie dann auf OK.

  3. Öffnen Sie die Windows-Eingabeaufforderung (cmd.exe) als Administrator.

  4. Erstellen Sie den Standardbenutzer für das LocalSystem Konto auf dem Windows-Gerät. Ersetzen Sie das Passwort durch ein sicheres Passwort.

    net user /add ggc_user password
    Tipp

    Abhängig von Ihrer Windows-Konfiguration ist das Benutzerkennwort möglicherweise so eingestellt, dass es an einem Datum in der future abläuft. Um sicherzustellen, dass Ihre Greengrass-Anwendungen weiterhin funktionieren, verfolgen Sie, wann das Passwort abläuft, und aktualisieren Sie es, bevor es abläuft. Sie können das Benutzerkennwort auch so einrichten, dass es niemals abläuft.

    • Führen Sie den folgenden Befehl aus, um zu überprüfen, wann ein Benutzer und sein Passwort ablaufen.

      net user ggc_user | findstr /C:expires
    • Führen Sie den folgenden Befehl aus, um das Passwort eines Benutzers so einzustellen, dass es nie abläuft.

      wmic UserAccount where "Name='ggc_user'" set PasswordExpires=False
    • Wenn Sie Windows 10 oder höher verwenden und der wmicBefehl veraltet ist, führen Sie den folgenden PowerShell Befehl aus.

      Get-CimInstance -Query "SELECT * from Win32_UserAccount WHERE name = 'ggc_user'" | Set-CimInstance -Property @{PasswordExpires="False"}
  5. Laden Sie das PsExecProgramm von Microsoft herunter und installieren Sie es auf dem Gerät.

  6. Verwenden Sie das PsExec Hilfsprogramm, um den Benutzernamen und das Passwort für den Standardbenutzer in der Credential Manager-Instanz für das LocalSystem Konto zu speichern. Ersetzen Sie das Passwort durch das Passwort des Benutzers, das Sie zuvor festgelegt haben.

    psexec -s cmd /c cmdkey /generic:ggc_user /user:ggc_user /pass:password

    Wenn das PsExec License Agreementgeöffnet wird, stimmen Sie Acceptder Lizenz zu und führen Sie den Befehl aus.

    Anmerkung

    Auf Windows-Geräten wird auf dem LocalSystem Konto der Greengrass-Nucleus ausgeführt, und Sie müssen das PsExec Hilfsprogramm verwenden, um die Standardbenutzerinformationen im LocalSystem Konto zu speichern. Wenn Sie die Credential Manager-Anwendung verwenden, werden diese Informationen nicht im Konto, sondern im Windows-Konto des aktuell angemeldeten Benutzers gespeichert. LocalSystem

Laden Sie die AWS IoT Greengrass Core-Software herunter

Sie können die neueste Version der AWS IoT Greengrass Core-Software von der folgenden Adresse herunterladen:

Anmerkung

Sie können eine bestimmte Version der AWS IoT Greengrass Core-Software von der folgenden Adresse herunterladen. Ersetzen Sie die Version durch die Version, die Sie herunterladen möchten.

https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-version.zip
Um die AWS IoT Greengrass Core-Software herunterzuladen
  1. Laden Sie die Core-Software auf Ihrem AWS IoT Greengrass Core-Gerät in eine Datei mit dem Namen heruntergreengrass-nucleus-latest.zip.

    Linux or Unix
    curl -s https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-nucleus-latest.zip > greengrass-nucleus-latest.zip
    Windows Command Prompt (CMD)
    curl -s https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-nucleus-latest.zip > greengrass-nucleus-latest.zip
    PowerShell
    iwr -Uri https://d2s8p88vqu9w66.cloudfront.net/releases/greengrass-nucleus-latest.zip -OutFile greengrass-nucleus-latest.zip

    Mit dem Download dieser Software stimmen Sie der Greengrass Core-Software-Lizenzvereinbarung zu.

  2. (Optional) Um die Greengrass Nucleus-Softwaresignatur zu überprüfen

    Anmerkung

    Diese Funktion ist mit Greengrass Nucleus Version 2.9.5 und höher verfügbar.

    1. Verwenden Sie den folgenden Befehl, um die Signatur Ihres Greengrass-Kernartefakts zu überprüfen:

      Linux or Unix
      jarsigner -verify -certs -verbose greengrass-nucleus-latest.zip
      Windows Command Prompt (CMD)

      Der Dateiname kann je nach installierter JDK-Version anders aussehen. Ersetzen Sie es jdk17.0.6_10durch die JDK-Version, die Sie installiert haben.

      "C:\\Program Files\\Amazon Corretto\\jdk17.0.6_10\\bin\\jarsigner.exe" -verify -certs -verbose greengrass-nucleus-latest.zip
      PowerShell

      Der Dateiname sieht je nach installierter JDK-Version möglicherweise anders aus. Ersetzen Sie es jdk17.0.6_10durch die JDK-Version, die Sie installiert haben.

      'C:\\Program Files\\Amazon Corretto\\jdk17.0.6_10\\bin\\jarsigner.exe' -verify -certs -verbose greengrass-nucleus-latest.zip
    2. Der jarsigner Aufruf liefert eine Ausgabe, die die Ergebnisse der Überprüfung angibt.

      1. Wenn die Greengrass Nucleus-Zip-Datei signiert ist, enthält die Ausgabe die folgende Anweisung:

        jar verified.
      2. Wenn die Greengrass Nucleus-Zip-Datei nicht signiert ist, enthält die Ausgabe die folgende Anweisung:

        jar is unsigned.
    3. Wenn Sie die -certs Option Jarsigner zusammen mit den -verbose Optionen -verify und angegeben haben, enthält die Ausgabe auch detaillierte Informationen zum Unterzeichnerzertifikat.

  3. Entpacken Sie die AWS IoT Greengrass Core-Software in einen Ordner auf Ihrem Gerät. GreengrassInstallerErsetzen Sie es durch den Ordner, den Sie verwenden möchten.

    Linux or Unix
    unzip greengrass-nucleus-latest.zip -d GreengrassInstaller && rm greengrass-nucleus-latest.zip
    Windows Command Prompt (CMD)
    mkdir GreengrassInstaller && tar -xf greengrass-nucleus-latest.zip -C GreengrassInstaller && del greengrass-nucleus-latest.zip
    PowerShell
    Expand-Archive -Path greengrass-nucleus-latest.zip -DestinationPath .\\GreengrassInstaller rm greengrass-nucleus-latest.zip
  4. (Optional) Führen Sie den folgenden Befehl aus, um die Version der AWS IoT Greengrass Core-Software zu sehen.

    java -jar ./GreengrassInstaller/lib/Greengrass.jar --version
Wichtig

Wenn Sie eine Version von Greengrass Nucleus vor v2.4.0 installieren, entfernen Sie diesen Ordner nicht, nachdem Sie die AWS IoT Greengrass Core-Software installiert haben. Die AWS IoT Greengrass Core-Software verwendet die Dateien in diesem Ordner zur Ausführung.

Wenn Sie die neueste Version der Software heruntergeladen haben, installieren Sie v2.4.0 oder höher, und Sie können diesen Ordner entfernen, nachdem Sie die AWS IoT Greengrass Core-Software installiert haben.

Laden Sie das AWS IoT Fleet Provisioning Plugin herunter

Sie können die neueste Version des AWS IoT Fleet Provisioning-Plug-ins von der folgenden Adresse herunterladen:

Anmerkung

Sie können eine bestimmte Version des AWS IoT Fleet Provisioning-Plug-ins von der folgenden Adresse herunterladen. Ersetzen Sie die Version durch die Version, die heruntergeladen werden soll. Weitere Informationen zu den einzelnen Versionen des Fleet Provisioning-Plug-ins finden Sie unterAWS IoT Changelog des Plug-ins für die Flottenbereitstellung.

https://d2s8p88vqu9w66.cloudfront.net/releases/aws-greengrass-FleetProvisioningByClaim/fleetprovisioningbyclaim-version.jar

Das Fleet Provisioning Plugin ist Open Source. Den Quellcode finden Sie im AWS IoT Fleet Provisioning Plugin unter. GitHub

Um das AWS IoT Fleet Provisioning Plugin herunterzuladen
  • Laden Sie auf Ihrem Gerät das AWS IoT Fleet Provisioning-Plugin in eine Datei mit dem Namen herunter. aws.greengrass.FleetProvisioningByClaim.jar GreengrassInstallerErsetzen Sie es durch den Ordner, den Sie verwenden möchten.

    Linux or Unix
    curl -s https://d2s8p88vqu9w66.cloudfront.net/releases/aws-greengrass-FleetProvisioningByClaim/fleetprovisioningbyclaim-latest.jar > GreengrassInstaller/aws.greengrass.FleetProvisioningByClaim.jar
    Windows Command Prompt (CMD)
    curl -s https://d2s8p88vqu9w66.cloudfront.net/releases/aws-greengrass-FleetProvisioningByClaim/fleetprovisioningbyclaim-latest.jar > GreengrassInstaller/aws.greengrass.FleetProvisioningByClaim.jar
    PowerShell
    iwr -Uri https://d2s8p88vqu9w66.cloudfront.net/releases/aws-greengrass-FleetProvisioningByClaim/fleetprovisioningbyclaim-latest.jar -OutFile GreengrassInstaller/aws.greengrass.FleetProvisioningByClaim.jar

    Mit dem Download dieser Software stimmen Sie der Greengrass Core-Software-Lizenzvereinbarung zu.

Installieren Sie die AWS IoT Greengrass Core-Software

Führen Sie das Installationsprogramm mit Argumenten aus, die die folgenden Aktionen angeben:

  • Die Installation erfolgt aus einer Teilkonfigurationsdatei, in der angegeben ist, dass das Fleet Provisioning-Plugin zur Bereitstellung von AWS Ressourcen verwendet werden soll. Die AWS IoT Greengrass Core-Software verwendet eine Konfigurationsdatei, die die Konfiguration jeder Greengrass-Komponente auf dem Gerät spezifiziert. Das Installationsprogramm erstellt eine vollständige Konfigurationsdatei aus der Teilkonfigurationsdatei, die Sie bereitstellen, und den AWS Ressourcen, die das Fleet Provisioning-Plugin erstellt.

  • Geben Sie an, dass der ggc_user Systembenutzer zur Ausführung von Softwarekomponenten auf dem Kerngerät verwendet werden soll. Auf Linux-Geräten gibt dieser Befehl auch an, dass die ggc_group Systemgruppe verwendet werden soll, und das Installationsprogramm erstellt den Systembenutzer und die Systemgruppe für Sie.

  • Richten Sie die AWS IoT Greengrass Core-Software als Systemdienst ein, der beim Booten ausgeführt wird. Auf Linux-Geräten erfordert dies das Systemd-Init-System.

    Wichtig

    Auf Windows Core-Geräten müssen Sie die AWS IoT Greengrass Core-Software als Systemdienst einrichten.

Weitere Hinweise zu den Argumenten, die Sie angeben können, finden Sie unterInstaller-Argumente.

Anmerkung

Wenn Sie AWS IoT Greengrass auf einem Gerät mit begrenztem Arbeitsspeicher arbeiten, können Sie die Speichermenge steuern, die die AWS IoT Greengrass Core-Software verwendet. Um die Speicherzuweisung zu steuern, können Sie im jvmOptions Konfigurationsparameter Ihrer Nucleus-Komponente die Optionen für die JVM-Heap-Größe festlegen. Weitere Informationen finden Sie unter Steuern Sie die Speicherzuweisung mit JVM-Optionen.

Um die Core-Software zu installieren AWS IoT Greengrass
  1. Überprüfen Sie die Version der AWS IoT Greengrass Core-Software.

    • GreengrassInstallerErsetzen Sie es durch den Pfad zu dem Ordner, der die Software enthält.

    java -jar ./GreengrassInstaller/lib/Greengrass.jar --version
  2. Verwenden Sie einen Texteditor, um eine Konfigurationsdatei mit dem Namen config.yaml zu erstellen, die dem Installationsprogramm zur Verfügung gestellt werden soll.

    Auf einem Linux-basierten System können Sie beispielsweise den folgenden Befehl ausführen, um die Datei mit GNU Nano zu erstellen.

    nano GreengrassInstaller/config.yaml

    Kopieren Sie den folgenden YAML-Inhalt in die Datei. Diese Teilkonfigurationsdatei spezifiziert Parameter für das Fleet Provisioning Plugin. Weitere Informationen zu den Optionen, die Sie angeben können, finden Sie unterKonfigurieren des AWS IoT Flottenbereitstellungs-Plugins.

    Linux or Unix
    --- services: aws.greengrass.Nucleus: version: "2.12.6" aws.greengrass.FleetProvisioningByClaim: configuration: rootPath: "/greengrass/v2" awsRegion: "us-west-2" iotDataEndpoint: "device-data-prefix-ats.iot.us-west-2.amazonaws.com" iotCredentialEndpoint: "device-credentials-prefix.credentials.iot.us-west-2.amazonaws.com" iotRoleAlias: "GreengrassCoreTokenExchangeRoleAlias" provisioningTemplate: "GreengrassFleetProvisioningTemplate" claimCertificatePath: "/greengrass/v2/claim-certs/claim.pem.crt" claimCertificatePrivateKeyPath: "/greengrass/v2/claim-certs/claim.private.pem.key" rootCaPath: "/greengrass/v2/AmazonRootCA1.pem" templateParameters: ThingName: "MyGreengrassCore" ThingGroupName: "MyGreengrassCoreGroup"
    Windows
    --- services: aws.greengrass.Nucleus: version: "2.12.6" aws.greengrass.FleetProvisioningByClaim: configuration: rootPath: "C:\\greengrass\\v2" awsRegion: "us-west-2" iotDataEndpoint: "device-data-prefix-ats.iot.us-west-2.amazonaws.com" iotCredentialEndpoint: "device-credentials-prefix.credentials.iot.us-west-2.amazonaws.com" iotRoleAlias: "GreengrassCoreTokenExchangeRoleAlias" provisioningTemplate: "GreengrassFleetProvisioningTemplate" claimCertificatePath: "C:\\greengrass\\v2\\claim-certs\\claim.pem.crt" claimCertificatePrivateKeyPath: "C:\\greengrass\\v2\\claim-certs\\claim.private.pem.key" rootCaPath: "C:\\greengrass\\v2\\AmazonRootCA1.pem" templateParameters: ThingName: "MyGreengrassCore" ThingGroupName: "MyGreengrassCoreGroup"

    Führen Sie dann die folgenden Schritte aus:

    • Ersetzen Sie 2.12.6 durch die Version der AWS IoT Greengrass Core-Software.

    • Ersetzen Sie jede Instanz von /greengrass/v2 oder C:\greengrass\v2 durch den Greengrass-Stammordner.

      Anmerkung

      Auf Windows-Geräten müssen Sie Pfadtrennzeichen als doppelte umgekehrte Schrägstriche (\\) angeben, z. B. C:\\greengrass\\v2

    • Ersetzen Sie us-west-2 durch die AWS Region, in der Sie die Bereitstellungsvorlage und andere Ressourcen erstellt haben.

    • Ersetzen Sie das durch Ihren iotDataEndpoint Datenendpunkt AWS IoT .

    • Ersetzen Sie den iotCredentialEndpoint durch den Endpunkt Ihrer AWS IoT Anmeldeinformationen.

    • GreengrassCoreTokenExchangeRoleAliasErsetzen Sie es durch den Namen des Alias der Token-Exchange-Rolle.

    • GreengrassFleetProvisioningTemplateErsetzen Sie es durch den Namen der Vorlage für die Flottenbereitstellung.

    • Ersetzen Sie den claimCertificatePath durch den Pfad zum Antragszertifikat auf dem Gerät.

    • Ersetzen Sie den claimCertificatePrivateKeyPath durch den Pfad zum privaten Schlüssel des Anspruchszertifikats auf dem Gerät.

    • Ersetzen Sie die Vorlagenparameter (templateParameters) durch die Werte, die für die Bereitstellung des Geräts verwendet werden sollen. Dieses Beispiel bezieht sich auf die Beispielvorlage, die ThingGroupName Parameter definiertThingName.

    Anmerkung

    In dieser Konfigurationsdatei können Sie andere Konfigurationsoptionen wie die zu verwendenden Ports und den Netzwerk-Proxy anpassen, wie im folgenden Beispiel gezeigt. Weitere Informationen finden Sie unter Greengrass Nucleus-Konfiguration.

    Linux or Unix
    --- services: aws.greengrass.Nucleus: version: "2.12.6" configuration: mqtt: port: 443 greengrassDataPlanePort: 443 networkProxy: noProxyAddresses: "http://192.168.0.1,www.example.com" proxy: url: "http://my-proxy-server:1100" username: "Mary_Major" password: "pass@word1357" aws.greengrass.FleetProvisioningByClaim: configuration: rootPath: "/greengrass/v2" awsRegion: "us-west-2" iotDataEndpoint: "device-data-prefix-ats.iot.us-west-2.amazonaws.com" iotCredentialEndpoint: "device-credentials-prefix.credentials.iot.us-west-2.amazonaws.com" iotRoleAlias: "GreengrassCoreTokenExchangeRoleAlias" provisioningTemplate: "GreengrassFleetProvisioningTemplate" claimCertificatePath: "/greengrass/v2/claim-certs/claim.pem.crt" claimCertificatePrivateKeyPath: "/greengrass/v2/claim-certs/claim.private.pem.key" rootCaPath: "/greengrass/v2/AmazonRootCA1.pem" templateParameters: ThingName: "MyGreengrassCore" ThingGroupName: "MyGreengrassCoreGroup" mqttPort: 443 proxyUrl: "http://my-proxy-server:1100" proxyUserName: "Mary_Major" proxyPassword: "pass@word1357"
    Windows
    --- services: aws.greengrass.Nucleus: version: "2.12.6" configuration: mqtt: port: 443 greengrassDataPlanePort: 443 networkProxy: noProxyAddresses: "http://192.168.0.1,www.example.com" proxy: url: "http://my-proxy-server:1100" username: "Mary_Major" password: "pass@word1357" aws.greengrass.FleetProvisioningByClaim: configuration: rootPath: "C:\\greengrass\\v2" awsRegion: "us-west-2" iotDataEndpoint: "device-data-prefix-ats.iot.us-west-2.amazonaws.com" iotCredentialEndpoint: "device-credentials-prefix.credentials.iot.us-west-2.amazonaws.com" iotRoleAlias: "GreengrassCoreTokenExchangeRoleAlias" provisioningTemplate: "GreengrassFleetProvisioningTemplate" claimCertificatePath: "C:\\greengrass\\v2\\claim-certs\\claim.pem.crt" claimCertificatePrivateKeyPath: "C:\\greengrass\\v2\\claim-certs\\claim.private.pem.key" rootCaPath: "C:\\greengrass\\v2\\AmazonRootCA1.pem" templateParameters: ThingName: "MyGreengrassCore" ThingGroupName: "MyGreengrassCoreGroup" mqttPort: 443 proxyUrl: "http://my-proxy-server:1100" proxyUserName: "Mary_Major" proxyPassword: "pass@word1357"

    Um einen HTTPS-Proxy zu verwenden, müssen Sie Version 1.1.0 oder höher des Fleet Provisioning-Plug-ins verwenden. Sie müssen zusätzlich Folgendes angeben rootCaPathsystem, wie im folgenden Beispiel gezeigt.

    Linux or Unix
    --- system: rootCaPath: "/greengrass/v2/AmazonRootCA1.pem" services: ...
    Windows
    --- system: rootCaPath: "C:\\greengrass\\v2\\AmazonRootCA1.pem" services: ...
  3. Führen Sie das Installationsprogramm aus. Geben Sie --trusted-plugin an, ob das Fleet Provisioning-Plug-In bereitgestellt werden soll, und geben Sie --init-config an, dass die Konfigurationsdatei bereitgestellt werden soll.

    • /greengrass/v2Ersetzen Sie es durch den Greengrass-Stammordner.

    • Ersetzen Sie jede Instanz von GreengrassInstallerdurch den Ordner, in den Sie das Installationsprogramm entpackt haben.

    Linux or Unix
    sudo -E java -Droot="/greengrass/v2" -Dlog.store=FILE \ -jar ./GreengrassInstaller/lib/Greengrass.jar \ --trusted-plugin ./GreengrassInstaller/aws.greengrass.FleetProvisioningByClaim.jar \ --init-config ./GreengrassInstaller/config.yaml \ --component-default-user ggc_user:ggc_group \ --setup-system-service true
    Windows Command Prompt (CMD)
    java -Droot="C:\greengrass\v2" "-Dlog.store=FILE" ^ -jar ./GreengrassInstaller/lib/Greengrass.jar ^ --trusted-plugin ./GreengrassInstaller/aws.greengrass.FleetProvisioningByClaim.jar ^ --init-config ./GreengrassInstaller/config.yaml ^ --component-default-user ggc_user ^ --setup-system-service true
    PowerShell
    java -Droot="C:\greengrass\v2" "-Dlog.store=FILE" ` -jar ./GreengrassInstaller/lib/Greengrass.jar ` --trusted-plugin ./GreengrassInstaller/aws.greengrass.FleetProvisioningByClaim.jar ` --init-config ./GreengrassInstaller/config.yaml ` --component-default-user ggc_user ` --setup-system-service true
    Wichtig

    Auf Windows Core-Geräten müssen Sie angeben, --setup-system-service true dass die AWS IoT Greengrass Core-Software als Systemdienst eingerichtet werden soll.

    Wenn Sie dies angeben--setup-system-service true, gibt das Installationsprogramm aus, Successfully set up Nucleus as a system service ob es die Software als Systemdienst eingerichtet und ausgeführt hat. Andernfalls gibt das Installationsprogramm keine Meldung aus, wenn es die Software erfolgreich installiert hat.

    Anmerkung

    Sie können das deploy-dev-tools Argument nicht verwenden, um lokale Entwicklungstools bereitzustellen, wenn Sie das Installationsprogramm ohne das --provision true Argument ausführen. Informationen zur direkten Bereitstellung der Greengrass-CLI auf Ihrem Gerät finden Sie unterGreengrass-Befehlszeilenschnittstelle.

  4. Überprüfen Sie die Installation, indem Sie sich die Dateien im Stammordner ansehen.

    Linux or Unix
    ls /greengrass/v2
    Windows Command Prompt (CMD)
    dir C:\greengrass\v2
    PowerShell
    ls C:\greengrass\v2

    Wenn die Installation erfolgreich war, enthält der Stammordner mehrere Ordner, z. B. configpackages, undlogs.

Wenn Sie die AWS IoT Greengrass Core-Software als Systemdienst installiert haben, führt das Installationsprogramm die Software für Sie aus. Andernfalls müssen Sie die Software manuell ausführen. Weitere Informationen finden Sie unter Ausführen der AWS IoT Greengrass -Core-Software.

Weitere Informationen zur Konfiguration und Verwendung der Software finden Sie unter: AWS IoT Greengrass