Einrichten eines Raspberry Pi - 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.

Einrichten eines Raspberry Pi

Befolgen Sie die Schritte in diesem Thema, um einen Raspberry Pi alsAWS IoT GreengrassCores.

Tipp

AWS IoT Greengrass bietet auch andere Optionen für die Installation der AWS IoT Greengrass Core-Software. Sie können beispielsweise das Greengras-Geräte-Setup verwenden, um Ihre Umgebung zu konfigurieren und die neueste Version der AWS IoT Greengrass Core-Software zu installieren. Oder Sie können auf unterstützten Debian-Plattformen den APT-Paketmanager verwenden, um die AWS IoT Greengrass Core-Software zu installieren oder zu aktualisieren. Weitere Informationen finden Sie unter Installieren Sie die AWS IoT Greengrass Core-Software..

Wenn Sie zum ersten Mal einen Raspberry Pi einrichten, befolgen Sie alle nachfolgenden Schritte. Andernfalls können Sie mit Schritt 9 fortfahren. Wir empfehlen ein Reimaging des Raspberry Pi mit dem Betriebssystem, wie in Schritt 2 empfohlen.

 

  1. Laden Sie einen SD-Karten-Formatierer herunter und installieren Sie ihn, z.SD-Speicherkarten-Formatierer. Legen Sie die SD-Karte in Ihren Computer. Starten Sie das Programm und wählen Sie das Laufwerk aus, in das Sie die SD-Karte eingelegt haben. Sie können eine Schnellformatierung der SD-Karte durchführen.

  2. Laden Sie das Betriebssystem Raspbian Buster als zip-Datei herunter.

  3. Folgen Sie in einem SD-Karten-Schreibtool (z. B. Etcher) den Anweisungen im Tool, um die heruntergeladene Datei zip auf die SD-Karte zu flashen. Da das Betriebssystem-Image sehr groß ist, kann dieser Schritt einige Zeit in Anspruch nehmen. Werfen Sie die SD-Karte aus und setzen Sie die microSD-Karte in Ihren Raspberry Pi ein.

  4. Für den ersten Systemstart empfehlen wir, dass Sie den Raspberry Pi (über HDMI) mit einem Monitor, einer Tastatur und einer Maus verbinden. Schließen Sie den Pi an eine Micro USB-Stromquelle an. Das Raspbian-Betriebssystem sollte gestartet werden.

  5. Sie möchten vielleicht zuerst das Pi-Tastaturlayout konfigurieren, bevor Sie fortfahren. Wählen Sie dazu das Raspberry-Symbol in der rechten oberen Ecke, Preferences (Präferenzen) und danach Mouse and Keyboard Settings (Maus- und Tastatureinstellungen) aus. Wählen Sie als Nächstes auf der Registerkarte Keyboard (Tastatur) die Option Keyboard Layout (Tastaturlayout) und die entsprechende Tastaturvariante aus.

  6. Verbinden Sie Ihren Raspberry Pi mit dem Internet über ein WLAN-Netzwerk oder ein Ethernet-Kabel.

    Anmerkung

    Verbinden Sie Ihren Raspberry Pi mit demselben Netzwerk wie Ihren Computer und stellen Sie sicher, dass sowohl der Computer als auch der Raspberry Pi Internetzugriff haben, bevor Sie fortfahren. Wenn Sie sich in einer Arbeitsumgebung oder hinter einer Firewall befinden, müssen Sie möglicherweise Ihren Pi und Ihren Computer mit dem Gastnetzwerk verbinden, sodass sich beide Geräte in demselben Netzwerk befinden. Bei diesem Ansatz wird jedoch möglicherweise die Verbindung Ihres Computer mit lokalen Netzwerkressourcen wie etwa Ihrem Intranet getrennt. Eine Lösung ist, den Pi mit dem WLAN-Gastnetzwerk zu verbinden und Ihren Computer über ein Ethernet-Kabel mit dem WLAN-Gastnetzwerk und Ihrem lokalen Netzwerk zu verbinden. In dieser Konfiguration sollte Ihr Computer in der Lage sein, über das WLAN-Gastnetzwerk eine Verbindung zum Raspberry Pi und über das Ethernet-Kabel eine Verbindung zu Ihren lokalen Netzwerkressourcen herzustellen.

  7. Sie müssen SSH auf dem Pi einrichten, um eine Remoteverbindung zu ermöglichen. Öffnen Sie auf dem Raspberry Pi ein Terminalfenster und führen Sie den folgenden Befehl aus:

    sudo raspi-config

    Sie sollten Folgendes sehen:

    Raspberry Pi Software Configuration Tool (raspi-config) – Bildschirmfoto.

    Führen Sie einen Bildlauf nach unten aus und wählen Sie Interfacing Options und P2 SSH aus. Wählen Sie nach Aufforderung die Option Yes (Ja) aus. (Verwenden Sie die Tab-Taste gefolgt von Enter). SSH sollte damit aktiviert sein. Wählen Sie OK. Wählen Sie mit der Tab-Taste Finish (Fertig stellen) und drücken Sie dann Enter. Wenn der Raspberry Pi nicht automatisch neu startet, führen Sie den folgenden Befehl aus:

    sudo reboot
  8. Führen Sie auf dem Raspberry Pi in dem Terminal den folgenden Befehl aus:

    hostname -I

    Damit wird die IP-Adresse Ihres Raspberry Pi zurückgegeben.

    Anmerkung

    Wenn Sie nachfolgend eine Meldung hinsichtlich des Fingerabdrucks für den ECDSA-Schlüssel (Are you sure you want to continue connecting (yes/no)?) erhalten, geben Sie yes ein. Das Standardpasswort für den Raspberry Pi lautet raspberry.

    Wenn Sie macOS verwenden, öffnen Sie ein Terminalfenster und geben Sie Folgendes ein:

    ssh pi@IP-address

    Hier entspricht IP-address der IP-Adresse Ihres Raspberry Pi, die Sie mit dem Befehl hostname -I erhalten haben.

    Wenn Sie Windows verwenden, müssen Sie PuTTY installieren und konfigurieren. Erweitern Sie Connection (Verbindung), wählen Sie Data (Daten) und vergewissern Sie sich, dass Prompt (Auffordern) ausgewählt ist:

    PuTTY-Fenster mit markierter Eingabeaufforderung.

    Wählen Sie Session (Sitzung), geben Sie die IP-Adresse des Raspberry Pi ein und wählen Sie dann Open (Öffnen) unter Verwendung der Standardeinstellungen.

    PuTTY-Fenster mit der IP-Adresse im Feld „Host Name (or IP address)”.

    Wenn eine PuTTY-Sicherheitswarnung angezeigt wird, klicken Sie auf Yes (Ja).

    Die Standardanmeldedaten und das Passwort für den Raspberry Pi lauten pi und raspberry.

    Erstes PuTTY-Terminalfenster.
    Anmerkung

    Wenn Ihr Computer mit einem Remote-Netzwerk über VPN verbunden ist, haben Sie möglicherweise Probleme, mit SSH eine Verbindung des Computers mit dem Raspberry Pi herzustellen.

  9. Jetzt können Sie den Raspberry Pi für AWS IoT Greengrass einrichten. Führen Sie zuerst die folgenden Befehle in einem lokalen Raspberry Pi-Terminalfenster oder einem SSH-Terminalfenster aus:

    Tipp

    AWS IoT Greengrass bietet auch andere Optionen für die Installation der AWS IoT Greengrass Core-Software. Sie können beispielsweise das Greengras-Geräte-Setup verwenden, um Ihre Umgebung zu konfigurieren und die neueste Version der AWS IoT Greengrass Core-Software zu installieren. Oder Sie können auf unterstützten Debian-Plattformen den APT-Paketmanager verwenden, um die AWS IoT Greengrass Core-Software zu installieren oder zu aktualisieren. Weitere Informationen finden Sie unter Installieren Sie die AWS IoT Greengrass Core-Software..

    sudo adduser --system ggc_user sudo addgroup --system ggc_group
  10. Um die Sicherheit auf dem Pi-Gerät zu verbessern, aktivieren Sie den Hard- und Softlink(Symlink) -Schutz beim Betriebssystemstart.

    1. Navigieren Sie zur Datei 98-rpi.conf.

      cd /etc/sysctl.d ls
      Anmerkung

      Wenn die Datei 98-rpi.conf nicht angezeigt wird, befolgen Sie die Anweisungen in der Datei README.sysctl.

    2. Fügen Sie die beiden folgenden Zeilen mithilfe eines Texteditors (z. B. Leafpad, GNU nano oder vi) am Ende der Datei hinzu. Sie müssen für die Bearbeitung als Root-Benutzer möglicherweise den Befehl sudo verwenden (z. B. sudo nano 98-rpi.conf).

      fs.protected_hardlinks = 1 fs.protected_symlinks = 1
    3. Starten Sie den Pi neu.

      sudo reboot

      Stellen Sie nach ca. einer Minute unter Verwendung von SSH eine Verbindung mit dem Pi her und führen Sie dann den folgenden Befehl aus, um die Änderung zu bestätigen:

      sudo sysctl -a 2> /dev/null | grep fs.protected

      Sie sollten fs.protected_hardlinks = 1 und fs.protected_symlinks = 1 sehen.

  11. Bearbeiten Sie Ihre Befehlszeilen-Startdatei, um Speicher-cgroups zu aktivieren und zu mounten. Auf diese Weise kann AWS IoT Greengrass das Speicherlimit für Lambda-Funktionen festlegen. Cgroups müssen auch ausgeführt werdenAWS IoT Greengrassin der Standard-Containerisierungmode.

    1. Navigieren Sie zum Verzeichnis boot.

      cd /boot/
    2. Öffnen Sie mit einem Texteditor cmdline.txt. Fügen Sie Folgendes am Ende der vorhandenen Linie – nicht als eine neue Zeile – ein. Sie müssen für die Bearbeitung als Root-Benutzer möglicherweise den Befehl sudo verwenden (z. B. sudo nano cmdline.txt).

      cgroup_enable=memory cgroup_memory=1
    3. Starten Sie den Pi neu.

      sudo reboot

    Ihr Raspberry Pi sollte jetzt für AWS IoT Greengrass bereit sein.

  12. Optional. Installieren Sie die Java 8-Laufzeitumgebung, die vom Stream-Manager benötigt wird. In diesem Tutorial wird Stream-Manager nicht verwendet, jedoch wird der Workflow zur Erstellung von Standardgruppen verwendet, der Stream-Manager standardmäßig aktiviert. Verwenden Sie die folgenden befehle, um die Java 8-Laufzeitumgebung auf dem Core-Gerät zu installieren oder den Stream-Manager zu deaktivieren, bevor Sie Ihre Gruppe bereitstellen. Anweisungen zum Deaktivieren des Stream-Managers finden Sie in Modul 3.

    sudo apt install openjdk-8-jdk
  13. Um sicherzustellen, dass Sie über alle erforderlichen Abhängigkeiten verfügen, laden Sie den Greengrass-Abhängigkeitsprüfer von derAWS IoT GreengrassBeispieleRepository auf GitHub. Diese Befehle entpacken das Abhängigkeitsprüftools imDownloads-Verzeichnis.

    Anmerkung

    Die Abhängigkeitsprüfung schlägt möglicherweise fehl, wenn Sie Version 5.4.51 des Raspbian-Kernels ausführen. Diese Version mountet Speicher-Cgroups nicht korrekt. Dies kann dazu führen, dass im Containermodus ausgeführte Lambda-Funktionen fehlschlagen.

    Weitere Informationen zum Aktualisieren Ihres Kernels finden Sie in derCgroups wurden nach dem Kernel-Upgrade nicht geladenin den Raspberry Pi-Foren.

    cd /home/pi/Downloads mkdir greengrass-dependency-checker-GGCv1.11.x cd greengrass-dependency-checker-GGCv1.11.x wget https://github.com/aws-samples/aws-greengrass-samples/raw/master/greengrass-dependency-checker-GGCv1.11.x.zip unzip greengrass-dependency-checker-GGCv1.11.x.zip cd greengrass-dependency-checker-GGCv1.11.x sudo modprobe configs sudo ./check_ggc_dependencies | more

    Wenn more erscheint, drücken Sie die Taste Spacebar, um einen weiteren Bildschirm mit Text anzuzeigen.

    Wichtig

    Für dieses Tutorial ist die Python 3.7-Laufzeitumgebung erforderlich, um lokale Lambda-- Wenn der Stream-Manager aktiviert ist, ist auch die Java 8-Laufzeitumgebung erforderlich. Wenn das Skript check_ggc_dependencies Warnmeldungen zu diesen fehlenden Laufzeitvoraussetzungen ausgibt, installieren Sie sie, bevor Sie fortfahren. Sie können Warnmeldungen zu anderen fehlenden optionalen Laufzeitvoraussetzungen ignorieren.

    Weitere Information zum Befehl modprobe erhalten Sie, wenn Sie man modprobe im Terminal ausführen.

Die Konfiguration Ihres Raspberry Pi ist damit abgeschlossen. Fahren Sie fort mit Modul 2: Installieren vonAWS IoT GreengrassCore-Software.