

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.

# Erste Schritte mit AWS IoT Core Tutorials
<a name="iot-gs"></a>

Ganz gleich, ob Sie mit IoT noch nicht vertraut sind oder über langjährige Erfahrung verfügen, in diesen Ressourcen finden Sie die AWS IoT Konzepte und Begriffe, die Ihnen beim Einstieg helfen werden AWS IoT.
+ **Schauen Sie** hinein AWS IoT und sehen Sie sich die einzelnen Komponenten an[Wie AWS IoT funktioniert](aws-iot-how-it-works.md).
+ [**Erfahren Sie** mehr über AWS IoT](aws-iot-learn-more.md) in unserer Sammlung von Schulungsmaterialien und Videos. Dieses Thema enthält auch eine Liste von Diensten, mit denen AWS IoT eine Verbindung herstellen kann, Links zu sozialen Medien und Links zu Kommunikationsprotokollspezifikationen.
+ **[Connect dein erstes Gerät mit AWS IoT Core](#aws-iot-get-started)**.
+ **Entwickeln** Sie Ihre IoT-Lösungen mit [Verbinden mit AWS IoT Core](connect-to-iot.md) und erkunden Sie die [AWS IoT Tutorials](iot-tutorials.md).
+ **Testen und validieren** Sie Ihre IoT-Geräte für eine sichere und zuverlässige Kommunikation mit dem [Device Advisor](device-advisor.md).
+ **Verwalten** Sie Ihre Lösung mithilfe von AWS IoT Core Verwaltungsdiensten wie [-Flottenindizierung](iot-indexing.md), [AWS IoT Jobs](iot-jobs.md) und [AWS IoT Device Defender](https://docs.aws.amazon.com/iot-device-defender/latest/devguide/what-is-device-defender.html).
+ **Analysieren** Sie die Daten von Ihren Geräten mithilfe der [AWS IoT Datendienste](aws-iot-how-it-works.md#aws-iot-components-data).

## Connect dein erstes Gerät mit AWS IoT Core
<a name="aws-iot-get-started"></a>

AWS IoT Core Dienste verbinden IoT-Geräte mit AWS IoT Diensten und anderen AWS Diensten. AWS IoT Core umfasst das Device Gateway und den Message Broker, die Nachrichten zwischen Ihren IoT-Geräten und der Cloud verbinden und verarbeiten.

So können Sie mit AWS IoT Core und beginnen AWS IoT.

![\[AWS IoT Core Erste Schritte mit der Tourkarte.\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/images/iot-gs-tour-map.png)


In diesem Abschnitt werden die AWS IoT Core wichtigsten Dienste vorgestellt und es werden mehrere Beispiele dafür bereitgestellt, wie Sie ein Gerät mit diesen verbinden AWS IoT Core und Nachrichten zwischen ihnen weiterleiten können. Die Weitergabe von Nachrichten zwischen Geräten und der Cloud ist für jede IoT-Lösung von grundlegender Bedeutung. So können Ihre Geräte mit anderen AWS Diensten interagieren.
+ 

**[Einrichten AWS-Konto](setting-up.md)**  
Bevor Sie AWS IoT Dienste nutzen können, müssen Sie eine einrichten AWS-Konto. Wenn Sie bereits einen AWS-Konto und einen IAM-Benutzer für sich haben, können Sie diese verwenden und diesen Schritt überspringen.
+ 

**[Probieren Sie das Quick Connect-Tutorial aus](iot-quick-start.md)**  
Dieses Tutorial eignet sich am besten, wenn Sie schnell damit beginnen AWS IoT und sehen möchten, wie es in einem begrenzten Szenario funktioniert. In diesem Tutorial benötigen Sie ein Gerät und installieren AWS IoT Software darauf. Wenn Sie kein IoT-Gerät haben, können Sie Ihren Windows-, Linux- oder macOS-PC als Gerät für dieses Tutorial verwenden. Wenn Sie es versuchen möchten AWS IoT, aber kein Gerät haben, versuchen Sie es mit der nächsten Option.
+ 

**[Probieren Sie das interaktive Tutorial aus](interactive-demo.md)**  
Diese Demo eignet sich am besten, wenn Sie sehen möchten, was eine AWS IoT Basislösung leisten kann, ohne ein Gerät anzuschließen oder Software herunterzuladen. Das interaktive Tutorial stellt eine simulierte Lösung vor, die auf AWS IoT Core Diensten basiert und veranschaulicht, wie sie interagieren.
+ 

**[Lernen Sie AWS IoT Core Dienste anhand eines praktischen Tutorials kennen](iot-gs-first-thing.md)**  
Dieses Tutorial eignet sich am besten für Entwickler, die AWS IoT mit anderen AWS IoT Core Funktionen wie der Regel-Engine und Schatten beginnen möchten. Dieses Tutorial folgt einem ähnlichen Prozess wie das Schnellverbindungs-Tutorial, enthält jedoch mehr Details zu den einzelnen Schritten, um einen reibungsloseren Übergang zu den fortgeschritteneren Tutorials zu ermöglichen.
+ 

**[MQTT-Nachrichten mit dem AWS IoT MQTT-Client anzeigen](view-mqtt-messages.md)**  
Erfahren Sie, wie Sie den MQTT-Testclient verwenden, um zu beobachten, wie Ihr erstes Gerät MQTT-Nachrichten mit AWS IoT veröffentlicht. Der MQTT-Testclient ist ein nützliches Tool zur Überwachung und Fehlerbehebung von Geräteverbindungen.

**Anmerkung**  
Wenn Sie mehr als eines dieser Tutorials für die ersten Schritte ausprobieren oder dasselbe Tutorial wiederholen möchten, sollten Sie das Objekt löschen, das Sie in einem früheren Tutorial erstellt haben, bevor Sie ein anderes beginnen. Wenn Sie das Objekt nicht aus einem früheren Tutorial löschen, müssen Sie für nachfolgende Tutorials einen anderen Objektnamen verwenden. Dies liegt daran, dass der Objektname in Ihrem Konto und AWS-Region eindeutig sein muss.

Weitere Informationen zu finden Sie AWS IoT Core unter [Was ist? AWS IoT Core](what-is-aws-iot.md)

# Einrichten AWS-Konto
<a name="setting-up"></a>

Führen Sie AWS IoT Core vor der ersten Verwendung die folgenden Aufgaben aus:

**Topics**
+ [Melde dich an für ein AWS-Konto](#sign-up-for-aws)
+ [Erstellen eines Benutzers mit Administratorzugriff](#create-an-admin)
+ [Öffnen Sie die AWS IoT Konsole](#iot-console-signin)

## Melde dich an für ein AWS-Konto
<a name="sign-up-for-aws"></a>

Wenn Sie noch keine haben AWS-Konto, führen Sie die folgenden Schritte aus, um eine zu erstellen.

**Um sich für eine anzumelden AWS-Konto**

1. Öffnen Sie [https://portal.aws.amazon.com/billing/die Anmeldung.](https://portal.aws.amazon.com/billing/signup)

1. Folgen Sie den Online-Anweisungen.

   Während der Anmeldung erhalten Sie einen Telefonanruf oder eine Textnachricht und müssen einen Verifizierungscode über die Telefontasten eingeben.

   Wenn Sie sich für eine anmelden AWS-Konto, *Root-Benutzer des AWS-Kontos*wird eine erstellt. Der Root-Benutzer hat Zugriff auf alle AWS-Services und Ressourcen des Kontos. Als bewährte Sicherheitsmethode weisen Sie einem Benutzer Administratorzugriff zu und verwenden Sie nur den Root-Benutzer, um [Aufgaben auszuführen, die Root-Benutzerzugriff erfordern](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html#root-user-tasks).

AWS sendet Ihnen nach Abschluss des Anmeldevorgangs eine Bestätigungs-E-Mail. Du kannst jederzeit deine aktuellen Kontoaktivitäten einsehen und dein Konto verwalten, indem du zu [https://aws.amazon.com/](https://aws.amazon.com/)gehst und **Mein Konto** auswählst.

## Erstellen eines Benutzers mit Administratorzugriff
<a name="create-an-admin"></a>

Nachdem Sie sich für einen angemeldet haben AWS-Konto, sichern Sie Ihren Root-Benutzer des AWS-Kontos AWS IAM Identity Center, aktivieren und erstellen Sie einen Administratorbenutzer, sodass Sie den Root-Benutzer nicht für alltägliche Aufgaben verwenden.

**Sichern Sie Ihre Root-Benutzer des AWS-Kontos**

1.  Melden Sie sich [AWS-Managementkonsole](https://console.aws.amazon.com/)als Kontoinhaber an, indem Sie **Root-Benutzer** auswählen und Ihre AWS-Konto E-Mail-Adresse eingeben. Geben Sie auf der nächsten Seite Ihr Passwort ein.

   Hilfe bei der Anmeldung mit dem Root-Benutzer finden Sie unter [Anmelden als Root-Benutzer](https://docs.aws.amazon.com/signin/latest/userguide/console-sign-in-tutorials.html#introduction-to-root-user-sign-in-tutorial) im *AWS-Anmeldung -Benutzerhandbuch* zu.

1. Aktivieren Sie die Multi-Faktor-Authentifizierung (MFA) für den Root-Benutzer.

   Anweisungen finden Sie unter [Aktivieren eines virtuellen MFA-Geräts für Ihren AWS-Konto Root-Benutzer (Konsole)](https://docs.aws.amazon.com/IAM/latest/UserGuide/enable-virt-mfa-for-root.html) im *IAM-Benutzerhandbuch*.

**Erstellen eines Benutzers mit Administratorzugriff**

1. Aktivieren Sie das IAM Identity Center.

   Anweisungen finden Sie unter [Aktivieren AWS IAM Identity Center](https://docs.aws.amazon.com//singlesignon/latest/userguide/get-set-up-for-idc.html) im *AWS IAM Identity Center -Benutzerhandbuch*.

1. Gewähren Sie einem Administratorbenutzer im IAM Identity Center Benutzerzugriff.

   *Ein Tutorial zur Verwendung von IAM-Identity-Center-Verzeichnis als Identitätsquelle finden Sie IAM-Identity-Center-Verzeichnis im Benutzerhandbuch unter [Benutzerzugriff mit der Standardeinstellung konfigurieren](https://docs.aws.amazon.com//singlesignon/latest/userguide/quick-start-default-idc.html).AWS IAM Identity Center *

**Anmelden als Administratorbenutzer**
+ Um sich mit Ihrem IAM-Identity-Center-Benutzer anzumelden, verwenden Sie die Anmelde-URL, die an Ihre E-Mail-Adresse gesendet wurde, als Sie den IAM-Identity-Center-Benutzer erstellt haben.

  Hilfe bei der Anmeldung mit einem IAM Identity Center-Benutzer finden Sie [im *AWS-Anmeldung Benutzerhandbuch* unter Anmeldung beim AWS Access-Portal](https://docs.aws.amazon.com/signin/latest/userguide/iam-id-center-sign-in-tutorial.html).

**Weiteren Benutzern Zugriff zuweisen**

1. Erstellen Sie im IAM-Identity-Center einen Berechtigungssatz, der den bewährten Vorgehensweisen für die Anwendung von geringsten Berechtigungen folgt.

   Anweisungen hierzu finden Sie unter [ Berechtigungssatz erstellen](https://docs.aws.amazon.com//singlesignon/latest/userguide/get-started-create-a-permission-set.html) im *AWS IAM Identity Center -Benutzerhandbuch*.

1. Weisen Sie Benutzer einer Gruppe zu und weisen Sie der Gruppe dann Single Sign-On-Zugriff zu.

   Eine genaue Anleitung finden Sie unter [ Gruppen hinzufügen](https://docs.aws.amazon.com//singlesignon/latest/userguide/addgroups.html) im *AWS IAM Identity Center -Benutzerhandbuch*.
+ [Öffnen Sie die AWS IoT Konsole](#iot-console-signin)

Wenn Sie bereits einen Benutzer AWS-Konto und einen Benutzer für sich haben, können Sie ihn verwenden und mit dem Vorgang fortfahren[Öffnen Sie die AWS IoT Konsole](#iot-console-signin).

## Öffnen Sie die AWS IoT Konsole
<a name="iot-console-signin"></a>

Die meisten konsolenorientierten Themen in diesem Abschnitt beginnen mit der AWS IoT Konsole. Wenn Sie noch nicht bei Ihrem angemeldet sind AWS-Konto, melden Sie sich an, öffnen Sie dann die [AWS IoT Konsole](https://console.aws.amazon.com//iot/home) und fahren Sie mit dem nächsten Abschnitt fort, um mit den ersten Schritten fortzufahren. AWS IoT

# Interaktives Tutorial
<a name="interactive-demo"></a>

Das interaktive Tutorial zeigt die Komponenten einer einfachen IoT-Lösung, die auf AWS IoT basiert. Das Tutorial zeigt, wie IoT-Geräte mit AWS IoT Core Diensten interagieren. Dieses Thema bietet eine Vorschau auf das AWS IoT Core interaktive Tutorial.

**Anmerkung**  
Die Bilder in der Konsole enthalten Animationen, die in den Bildern dieses Tutorials nicht vorkommen.

Um die Demo auszuführen, müssen Sie zuerst [Einrichten AWS-Konto](setting-up.md). Für das Tutorial sind jedoch keine AWS IoT Ressourcen, zusätzliche Software oder Programmierung erforderlich.

Rechnen Sie damit, etwa 5-10 Minuten mit dieser Demo zu verbringen. Wenn Sie sich 10 Minuten Zeit nehmen, haben Sie mehr Zeit, um die einzelnen Schritte zu verstehen.

**Um das AWS IoT Core interaktive Tutorial auszuführen**

1. Öffnen Sie die [AWS IoT Startseite](https://console.aws.amazon.com//iot/home#/home) in der AWS IoT Konsole.

   Wählen Sie auf der **AWS IoT -Startseite** im Fensterbereich **Lernressourcen** die Option **Tutorial starten** aus.  
![\[Dies ist die Startseite der AWS IoT Konsole.\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/images/aws-iot-learn-home-demo.png)

1. Sehen Sie sich auf der Seite mit dem **AWS IoT Konsolen-Tutorial** die Abschnitte mit den Tutorials an und wählen Sie den **Abschnitt Start**, wenn Sie bereit sind, fortzufahren.

**In den folgenden Abschnitten wird beschrieben, wie das **AWS IoT Konsolen-Tutorial** diese AWS IoT Core Funktionen präsentiert:**
+ [IoT-Geräte verbinden](#interactive-demo-part1)
+ [Der Status des Offline-Geräts wird gespeichert](#interactive-demo-part2)
+ [Gerätedaten an Dienste weiterleiten](#interactive-demo-part3)

## IoT-Geräte verbinden
<a name="interactive-demo-part1"></a>

Erfahren Sie, wie IoT-Geräte mit kommunizieren AWS IoT Core.

![\[Dies ist der erste Schritt des AWS IoT interaktiven Tutorials.\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/images/aws-iot-learn-demo-step-1.png)


Die Animation in diesem Schritt zeigt, wie sich zwei Geräte, das Steuergerät auf der linken Seite und eine intelligente Lampe im Haus auf der rechten Seite, mit AWS IoT Core in der Cloud verbinden und kommunizieren. Die Animation zeigt, wie die Geräte mit den empfangenen Nachrichten kommunizieren AWS IoT Core und darauf reagieren.

Weitere Informationen zum Anschließen von Geräten an finden Sie AWS IoT Core unter[Verbinden mit AWS IoT Core](connect-to-iot.md).

## Der Status des Offline-Geräts wird gespeichert
<a name="interactive-demo-part2"></a>

Erfahren Sie, wie der Gerätestatus AWS IoT Core gespeichert wird, solange ein Gerät oder eine App offline ist.

![\[Dies ist der zweite Schritt des AWS IoT interaktiven Tutorials.\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/images/aws-iot-learn-demo-step-2.png)


Die Animation in diesem Schritt zeigt, wie der Device Shadow-Dienst Gerätestatusinformationen für das Steuergerät und die intelligente Lampe AWS IoT Core speichert. Während die intelligente Lampe offline ist, speichert der Geräteschatten Befehle vom Steuergerät.

Wenn die Smart-Lampe wieder eine Verbindung mit herstellt AWS IoT Core, ruft sie diese Befehle ab. Wenn das Steuergerät offline ist, speichert der Geräteschatten Statusinformationen von der intelligenten Lampe. Wenn das Steuergerät wieder eine Verbindung herstellt, ruft es den aktuellen Status der intelligenten Lampe ab, um deren Anzeige zu aktualisieren.

Weitere Informationen finden Sie unter Geräteschatten, siehe [AWS IoT Device Shadow-Dienst](iot-device-shadows.md).

## Gerätedaten an Dienste weiterleiten
<a name="interactive-demo-part3"></a>

Erfahren Sie, wie der Gerätestatus an andere AWS Dienste AWS IoT Core gesendet wird.

![\[Dies ist der dritte Schritt des AWS IoT interaktiven Tutorials.\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/images/aws-iot-learn-demo-step-3.png)


Die Animation in diesem Schritt zeigt, wie Daten mithilfe von AWS IoT Regeln von den Geräten an andere AWS Dienste AWS IoT Core gesendet werden. AWS IoT Regeln abonnieren bestimmte Nachrichten von den Geräten, interpretieren die Daten in diesen Nachrichten und leiten die interpretierten Daten an andere Dienste weiter. In diesem Beispiel interpretiert eine AWS IoT Regel Daten von einem Bewegungssensor und sendet Befehle an einen Device Shadow, der sie dann an die Smart-Bulb sendet. Wie im vorherigen Beispiel speichert der Geräteschatten die Gerätestatusinformationen für das Steuergerät.

Weitere Informationen zu AWS IoT Regeln finden Sie unter[Regeln für AWS IoT](iot-rules.md).

# Probieren Sie das AWS IoT Core Quick Connect-Tutorial aus
<a name="iot-quick-start"></a>

In diesem Tutorial erstellen Sie Ihr erstes Objekt, verbinden ein Gerät damit und sehen, wie es MQTT-Nachrichten sendet.

Sie können damit rechnen, 15 bis 20 Minuten für dieses Tutorial aufzuwenden.

Dieses Tutorial eignet sich am besten für Personen, die schnell damit beginnen möchten AWS IoT , zu erfahren, wie es in einem begrenzten Szenario funktioniert. Wenn Sie nach einem Beispiel suchen, das Ihnen den Einstieg erleichtert, damit Sie weitere Funktionen und Dienste erkunden können, versuchen Sie [Erfahren Sie AWS IoT Core in praktischen Tutorials mehr](iot-gs-first-thing.md).

In diesem Tutorial laden Sie Software herunter und führen sie auf einem Gerät aus, das im AWS IoT Core Rahmen einer *sehr kleinen IoT-Lösung eine Verbindung zu einer Ding-Ressource* herstellt. Das Gerät kann ein IoT-Gerät sein, z. B. ein Raspberry Pi, oder es kann sich auch um einen Computer handeln, auf dem Linux, OS und OSX oder Windows ausgeführt werden. Wenn Sie ein WAN-Gerät (Long Range WAN) mit einem LoRa WAN verbinden möchten AWS IoT, finden Sie weitere Informationen im Tutorial [>Geräte und Gateways mit AWS IoT Core für LoRa WAN verbinden](https://docs.aws.amazon.com/iot-wireless/latest/developerguide/lorawan-getting-started.html).

Wenn Ihr Gerät einen Browser unterstützt, der die [AWS IoT -Konsole](https://console.aws.amazon.com//iot/home) ausführen kann, empfehlen wir Ihnen, dieses Tutorial auf diesem Gerät abzuschließen.

**Anmerkung**  
Wenn Ihr Gerät keinen kompatiblen Browser hat, folgen Sie diesem Tutorial auf einem Computer. Wenn Sie im Rahmen des Verfahrens aufgefordert werden, die Datei herunterzuladen, laden Sie sie auf Ihren Computer herunter und übertragen Sie dann die heruntergeladene Datei mithilfe von Secure Copy (SCP) oder einem ähnlichen Verfahren auf Ihr Gerät.

Für das Tutorial muss Ihr IoT-Gerät mit Port 8443 an dem Gerätedatenendpunkt Ihres AWS-Konto kommunizieren. Um zu testen, ob es auf diesen Port zugreifen kann, probieren Sie die Verfahren unter [Testen Sie die Konnektivität mit Ihrem Gerätedatenendpunkt](iot-quick-start-test-connection.md) aus.

## Schritt 1. Beginnen Sie mit dem Tutorial
<a name="iot-quick-start-connect"></a>

Wenn möglich, führen Sie dieses Verfahren auf Ihrem Gerät aus. Andernfalls sollten Sie bereit sein, später in diesem Verfahren eine Datei auf Ihr Gerät zu übertragen.

Melden Sie sich an der [AWS IoT -Konsole](https://console.aws.amazon.com//iot/home) an, um das Tutorial zu starten. Wählen Sie auf der Startseite der AWS IoT Konsole auf der linken Seite **Connect und dann Connect** **one device (Ein Gerät verbinden**).

![\[Auf dieser AWS IoT Konsolen-Startseite wird gezeigt, wie Sie ein Gerät verbinden.\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/images/aws-iot-quick-connect.PNG)


## Schritt 2. Dies erstellt ein Objekt
<a name="iot-quick-start-configure"></a>

1. Folgen Sie im Abschnitt **Gerät vorbereiten** den Anweisungen auf dem Bildschirm, um Ihr Gerät für die Verbindung mit AWS IoT vorzubereiten.  
![\[So bereiten Sie das Gerät in der AWS IoT Konsole vor.\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/images/aws-iot-learn-prepare-device.png)

1. Wählen Sie im Bereich **Gerät registrieren und sichern** die Option **Neues Objekt erstellen oder** **Bestehendes Objekt auswählen** aus. Geben Sie **im Feld Objektname** den Namen für Ihr Objekt ein. Der in diesem Beispiel verwendete Objektname lautet **TutorialTestThing**
**Wichtig**  
Überprüfen Sie den Namen Ihres Objekts noch einmal, bevor Sie fortfahren.  
Ein Objektname kann nicht mehr geändert werden, nachdem das Objekt erstellt wurde. Wenn Sie den Namen eines Objekts ändern möchten, müssen Sie ein neues Objekt mit dem richtigen Namen erstellen und dann das Objekt mit dem falschen Namen löschen.

   Passen Sie im Abschnitt **Zusätzliche Konfigurationen** Ihre Objekt-Ressource mithilfe der aufgelisteten optionalen Konfigurationen weiter an.

   Nachdem Sie Ihrem Objekt einen Namen gegeben und weitere Konfigurationen ausgewählt haben, wählen Sie **Weiter**.  
![\[Verwenden Sie die AWS IoT Konsole, um Ihr Gerät zu registrieren und zu sichern.\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/images/aws-iot-learn-register-and-secure-your-device.png)

1. **Wählen Sie im Abschnitt Plattform und SDK** auswählen die Plattform und die Sprache des AWS IoT Geräte-SDK aus, das Sie verwenden möchten. In diesem Beispiel werden die Linux/OSX Plattform und das Python-SDK verwendet. Stellen Sie sicher, dass Sie Python3 und Pip3 auf Ihrem Zielgerät installiert haben, bevor Sie mit dem nächsten Schritt fortfahren.
**Anmerkung**  
Schauen Sie sich am Ende der Konsolenseite unbedingt die Liste der erforderlichen Software an, die für das von Ihnen gewählte SDK erforderlich ist.  
Sie müssen die erforderliche Software auf Ihrem Zielcomputer installiert haben, bevor Sie mit dem nächsten Schritt fortfahren können.

   Nachdem Sie die Plattform und die SDK-Sprache für das Gerät ausgewählt haben, wählen Sie **Weiter**.  
![\[Verwenden Sie die AWS IoT Konsole, um Plattform und SDK auszuwählen.\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/images/aws-iot-learn-choose-platform-and-SDK.png)

## Schritt 3. Laden Sie Dateien auf Ihr Gerät herunter
<a name="iot-quick-start-name"></a>

Diese Seite wird angezeigt, nachdem das Verbindungskit erstellt AWS IoT wurde, das die folgenden Dateien und Ressourcen enthält, die Ihr Gerät benötigt:
+ Die Zertifikatsdateien des Objekts, die zur Authentifizierung des Geräts verwendet werden
+ Eine Richtlinienressource, mit der Ihr Objekt zur Interaktion mit AWS IoT autorisiert wird
+ Das Skript zum Herunterladen des AWS Geräte-SDK und zum Ausführen des Beispielprogramms auf Ihrem Gerät

1. Wenn Sie bereit sind, fortzufahren, klicken Sie auf die Schaltfläche **Verbindungskit herunterladen für**, um das Verbindungskit für die zuvor gewählte Plattform herunterzuladen.  
![\[Dies ist die Seite der AWS IoT Konsole, auf der Sie die Zertifikatsdatei herunterladen können.\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/images/aws-iot-learn-download-connection-kit_1.png)

1. Wenn Sie dieses Verfahren auf Ihrem Gerät ausführen, speichern Sie die Verbindungskit-Datei in einem Verzeichnis, von dem aus Sie Befehlszeilen in der Kommandozeile ausführen können.

   Wenn Sie dieses Verfahren nicht auf Ihrem Gerät ausführen, speichern Sie die Verbindungskit-Datei in einem lokalen Verzeichnis und übertragen Sie die Datei dann auf Ihr Gerät.

1. Geben Sie im Abschnitt **Verbindungskit auf Ihrem Gerät entpacken** **unzip connect\$1device\$1package.zip** in das Verzeichnis ein, in dem sich die Verbindungskit-Dateien befinden.

   Wenn Sie ein PowerShell Windows-Befehlsfenster verwenden und der **unzip** Befehl nicht funktioniert, ersetzen Sie ihn durch und versuchen Sie es erneut **unzip** mit **expand-archive** der Befehlszeile.

1. Nachdem Sie die Verbindungskit-Datei auf dem Gerät gespeichert haben, setzen Sie das Tutorial fort, indem Sie **Weiter** wählen.  
![\[AWS IoT Seite zum Herunterladen der Konsolenzertifikatsdatei nach dem Herunterladen des Connection-Kits.\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/images/aws-iot-learn-download-connection-kit_2.png)

## Schritt 4. Ausführen des Beispiels
<a name="iot-quick-start-install-run"></a>

Sie führen dieses Verfahren in einem Terminal oder Befehlsfenster auf Ihrem Gerät durch und folgen dabei den Anweisungen in der Konsole. Die Befehle, die Sie in der Konsole sehen, beziehen sich auf das Betriebssystem, für das Sie sich in [Schritt 2. Dies erstellt ein Objekt](#iot-quick-start-configure) entschieden haben. Die hier gezeigten sind für die Linux/OSX Betriebssysteme.

1. Führen Sie in einem Terminal- oder Befehlsfenster auf Ihrem Gerät im Verzeichnis mit der Verbindungskit-Datei die in der AWS IoT Konsole angezeigten Schritte aus.  
![\[AWS IoT Installations- und Ausführungsseite für die Konsole mit Schnellstart.\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/images/aws-iot-learn-run-connection-kit.png)

1. Nachdem Sie den Befehl aus **Schritt 2** in der Konsole eingegeben haben, sollte im Terminal oder Befehlsfenster des Geräts eine Ausgabe angezeigt werden, die der folgenden ähnelt. Diese Ausgabe stammt aus den Nachrichten, an die das Programm sendet und denen, die es dann von AWS IoT Core zurückempfängt.  
![\[AWS IoT Beispiel für die Ausgabe eines Schnellstartprogramms für die Konsole.\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/images/aws-iot-learn-connect-console-output-python_updated.png)

   Während das Beispielprogramm läuft, wird auch die Testnachricht `Hello World!` angezeigt. Die Testnachricht wird im Terminal oder Befehlsfenster auf Ihrem Gerät angezeigt.
**Anmerkung**  
Weitere Informationen zum Abonnieren und Veröffentlichen von Themen finden Sie im Beispielcode des von Ihnen ausgewählten SDK.

1. Um das Beispielprogramm erneut auszuführen, können Sie die Befehle aus **Schritt 2** in der Konsole dieses Verfahrens wiederholen.

1. (Optional) Wenn Sie die Nachrichten von Ihrem IoT-Client in der [AWS IoT Konsole](https://console.aws.amazon.com//iot/home) sehen möchten, öffnen Sie den [MQTT-Testclient](https://console.aws.amazon.com//iot/home#/test) auf der **Testseite** der AWS IoT Konsole. Wenn Sie Python SDK ausgewählt haben, geben Sie im **MQTT-Testclient** unter **Themenfilter** das Thema ein, beispielsweise **sdk/test/*python***, um die Nachrichten von Ihrem Gerät zu abonnieren. Bei den Themenfiltern wird zwischen Groß- und Kleinschreibung unterschieden und sie hängen von der Programmiersprache des SDK ab, welches Sie in **Schritt 1** ausgewählt haben. Weitere Informationen zum Abonnieren und Veröffentlichen von Themen finden Sie im Codebeispiel des von Ihnen ausgewählten SDK.

1. Nachdem Sie das Testthema abonniert haben, führen Sie **./start.sh** auf Ihrem Gerät aus. Weitere Informationen finden Sie unter [MQTT-Nachrichten mit dem AWS IoT MQTT-Client anzeigen](view-mqtt-messages.md).

   Nach der Ausführung von **./start.sh** werden im MQTT-Client Meldungen angezeigt, die den folgenden ähneln:

   ```
   {
     "message": "Hello World!" [1]
   }
   ```

   Die `sequence` Zahl wird bei jedem Empfang einer neuen `Hello World!` Nachricht um `[]` erhöht und endet, wenn Sie das Programm beenden.

1. Um das Tutorial zu beenden und eine Zusammenfassung zu sehen, wählen Sie in der AWS IoT Konsole **Weiter**.   
![\[AWS IoT Schnellstart-Abschlussseite für die Konsole.\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/images/aws-iot-learn-connect-complete_updated1.png)

1. Eine Zusammenfassung Ihres AWS IoT Quick Connect-Tutorials wird nun angezeigt.  
![\[AWS IoT Übersichtsseite für den Schnellstart der Konsole.\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/images/aws-iot-learn-device-is-connected.png)

## Schritt 5. Weiter erkunden
<a name="iot-quick-start-test"></a>

Im Folgenden finden Sie einige Ideen, die Sie nach Abschluss des Schnellstarts AWS IoT weiter untersuchen sollten.
+ 

**[So zeigen Sie MQTT-Nachrichten im MQTT-Client an](https://console.aws.amazon.com/iot/home#/test)**  
Von der [AWS IoT Konsole](https://console.aws.amazon.com//iot/home) aus können Sie den [MQTT-Client](https://console.aws.amazon.com//iot/home#/test) auf der **Testseite** der AWS IoT Konsole öffnen. Abonnieren Sie **\$1** im **MQTT-Testclient** und führen Sie es dann auf Ihrem Gerät aus, **./start.sh** wie im vorherigen Schritt beschrieben. Weitere Informationen finden Sie unter [MQTT-Nachrichten mit dem AWS IoT MQTT-Client anzeigen](view-mqtt-messages.md).
+ 

**Führen Sie Tests auf Ihren Geräten mit [Device Advisor](https://docs.aws.amazon.com//iot/latest/developerguide/device-advisor.html) durch**  
Testen Sie mit Device Advisor, ob Ihre Geräte sicher und zuverlässig eine Verbindung herstellen und mit ihnen interagieren können AWS IoT.
+ 

**[Interaktives Tutorial](interactive-demo.md)**  
Um das interaktive Tutorial zu starten, wählen **Sie auf der **Lernseite** der AWS IoT Konsole in der Kachel „So AWS IoT funktioniert**“ **die Option Tutorial starten** aus.
+ 

**[Machen Sie sich bereit, weitere Tutorials zu entdecken](iot-gs-first-thing.md)**  
Dieser Schnellstart gibt Ihnen nur ein Beispiel für AWS IoT. Wenn Sie mehr darüber erfahren und mehr über die Funktionen erfahren möchten, die sie zu einer leistungsstarken IoT-Lösungsplattform machen, beginnen Sie mit der Vorbereitung Ihrer Entwicklungsplattform durch[Erfahren Sie AWS IoT Core in praktischen Tutorials mehr](iot-gs-first-thing.md). AWS IoT 

# Testen Sie die Konnektivität mit Ihrem Gerätedatenendpunkt
<a name="iot-quick-start-test-connection"></a>

In diesem Thema wird beschrieben, wie Sie die Verbindung eines Geräts mit dem *Gerätedatenendpunkt* Ihres Kontos testen, dem Endpunkt, mit dem Ihre IoT-Geräte eine Verbindung zu AWS IoT herstellen.

Führen Sie diese Verfahren auf dem Gerät aus, das Sie testen möchten, oder verwenden Sie eine SSH-Terminalsitzung, die mit dem Gerät verbunden ist, das Sie testen möchten.

**Topics**
+ [Finden Sie den Datenendpunkt Ihres Geräts](#iot-quick-start-test-connection-endpoint)
+ [Testen Sie die Verbindung schnell](#iot-quick-start-test-connection-ping)
+ [Laden Sie die App herunter, um die Verbindung zu Ihrem Gerätedatenendpunkt und Port zu testen](#iot-quick-start-test-connection-app)
+ [Testen Sie die Verbindung zu Ihrem Gerätedatenendpunkt und Port](#iot-quick-start-test-connection-test)

## Finden Sie den Datenendpunkt Ihres Geräts
<a name="iot-quick-start-test-connection-endpoint"></a>

In diesem Verfahren wird erklärt, wie Sie Ihren Gerätedatenendpunkt in der [AWS IoT Konsole](https://console.aws.amazon.com//iot/home) finden, um die Verbindung zu Ihrem IoT-Gerät zu testen.

**So finden Sie Ihren Gerätedatenendpunkt**

1. Gehen Sie in der [AWS IoT Konsole](https://console.aws.amazon.com//iot/home) im Bereich **Connect** zu **Domain-Konfigurationen**.

1. Gehen Sie auf der Seite **Domain-Konfigurationen** zum Container **Domain-Konfigurationen** und kopieren Sie den **Domainnamen**. Ihr Endpunktwert ist einzigartig für Sie AWS-Konto und ähnelt diesem Beispiel:`a3qEXAMPLEsffp-ats.iot.eu-west-1.amazonaws.com`.

1. 

   Gehen Sie wie folgt vor, um Ihren Datenbank-Endpunkt für die Verwendung zu speichern.

## Testen Sie die Verbindung schnell
<a name="iot-quick-start-test-connection-ping"></a>

Dieses Verfahren testet die allgemeine Konnektivität mit Ihrem Gerätedatenendpunkt, nicht jedoch den spezifischen Port, den Ihre Geräte verwenden werden. Dieser Test verwendet ein gängiges Programm und reicht normalerweise aus, um herauszufinden, ob Ihre Geräte eine Verbindung mit AWS IoT herstellen können.

Wenn Sie die Konnektivität mit dem spezifischen Port testen möchten, den Ihre Geräte verwenden werden, überspringen Sie dieses Verfahren und fahren Sie mit [Laden Sie die App herunter, um die Verbindung zu Ihrem Gerätedatenendpunkt und Port zu testen](#iot-quick-start-test-connection-app) fort.

**Um den Gerätedatenendpunkt schnell zu testen**

1. Ersetzen Sie in einem Terminal- oder Befehlszeilenfenster auf Ihrem Gerät den Beispielendpunkt für Gerätedaten (`a3qEXAMPLEsffp-ats.iot.eu-west-1.amazonaws.com`) durch den Gerätedatenendpunkt für Ihr Konto und geben Sie dann diesen Befehl ein.

------
#### [ Linux ]

   ```
   ping -c 5 a3qEXAMPLEsffp-ats.iot.eu-west-1.amazonaws.com
   ```

------
#### [ Windows ]

   ```
   ping -n 5 a3qEXAMPLEsffp-ats.iot.eu-west-1.amazonaws.com
   ```

------

1. Wenn von `ping` eine Ausgabe ähnlich der folgenden angezeigt wird, wurde erfolgreich eine Verbindung zu Ihrem Gerätedatenendpunkt hergestellt. Es hat zwar nicht AWS IoT direkt mit dem Server kommuniziert, aber er hat den Server gefunden, und es AWS IoT ist wahrscheinlich, dass er über diesen Endpunkt erreichbar ist.

   ```
   PING a3qEXAMPLEsffp-ats.iot.eu-west-1.amazonaws.com (xx.xx.xxx.xxx) 56(84) bytes of data.
   64 bytes from ec2-EXAMPLE-218.eu-west-1.compute.amazonaws.com (xx.xx.xxx.xxx): icmp_seq=1 ttl=231 time=127 ms
   64 bytes from ec2-EXAMPLE-218.eu-west-1.compute.amazonaws.com (xx.xx.xxx.xxx): icmp_seq=2 ttl=231 time=127 ms
   64 bytes from ec2-EXAMPLE-218.eu-west-1.compute.amazonaws.com (xx.xx.xxx.xxx): icmp_seq=3 ttl=231 time=127 ms
   64 bytes from ec2-EXAMPLE-218.eu-west-1.compute.amazonaws.com (xx.xx.xxx.xxx): icmp_seq=4 ttl=231 time=127 ms
   64 bytes from ec2-EXAMPLE-218.eu-west-1.compute.amazonaws.com (xx.xx.xxx.xxx): icmp_seq=5 ttl=231 time=127 ms
   ```

   Wenn Sie mit diesem Ergebnis zufrieden sind, können Sie den Test hier beenden.

   Wenn Sie die Konnektivität mit dem spezifischen Port testen möchten, der von AWS IoT verwendet wird, fahren Sie fort mit [Laden Sie die App herunter, um die Verbindung zu Ihrem Gerätedatenendpunkt und Port zu testen](#iot-quick-start-test-connection-app).

1. Wenn von `ping` keine erfolgreiche Ausgabe zurückgegeben wurde, überprüfen Sie den Endpunktwert, um sicherzustellen, dass Sie den richtigen Endpunkt haben, und überprüfen Sie die Verbindung des Geräts mit dem Internet.

## Laden Sie die App herunter, um die Verbindung zu Ihrem Gerätedatenendpunkt und Port zu testen
<a name="iot-quick-start-test-connection-app"></a>

Ein gründlicherer Konnektivitätstest kann mit `nmap` durchgeführt werden. Mit diesem Verfahren wird getestet, ob `nmap` auf Ihrem Gerät installiert ist.

**Um auf dem Gerät nach `nmap` zu suchen**

1. Geben Sie in einem Terminal- oder Befehlszeilenfenster auf dem Gerät, das Sie testen möchten, diesen Befehl ein, um zu überprüfen, ob `nmap` installiert ist.

   ```
   nmap --version
   ```

1. Wenn Sie eine Ausgabe ähnlich der folgenden sehen, ist `nmap` installiert und Sie können mit [Testen Sie die Verbindung zu Ihrem Gerätedatenendpunkt und Port](#iot-quick-start-test-connection-test) fortfahren.

   ```
   Nmap version 6.40 ( http://nmap.org )
   Platform: x86_64-koji-linux-gnu
   Compiled with: nmap-liblua-5.2.2 openssl-1.0.2k libpcre-8.32 libpcap-1.5.3 nmap-libdnet-1.12 ipv6
   Compiled without:
   Available nsock engines: epoll poll select
   ```

1. Wird Ihnen keine ähnliche Antwort angezeigt wie im vorherigen Schritt, müssen Sie die Installation von `nmap` auf dem Gerät ausführen. Wählen Sie das Verfahren für das Betriebssystem Ihres Geräts aus.

------
#### [ Linux ]

Dieser Vorgang erfordert, dass Sie über die Berechtigung verfügen, Software auf dem Computer zu installieren.

**Um nmap auf Ihrem Linux-Computer zu installieren**

1. Geben Sie in einem Terminal- oder Befehlszeilenfenster auf Ihrem Gerät den Befehl ein, der der Linux-Version entspricht, die auf dem Gerät ausgeführt wird.

   1. Debian oder Ubuntu:

      ```
      sudo apt install nmap
      ```

   1. Cent OS oder RHEL:

      ```
      sudo yum install nmap
      ```

1. Testen Sie die Installation mit diesem Befehl:

   ```
   nmap --version
   ```

1. Wenn Sie eine Ausgabe ähnlich der folgenden sehen, ist `nmap` installiert und Sie können mit [Testen Sie die Verbindung zu Ihrem Gerätedatenendpunkt und Port](#iot-quick-start-test-connection-test) fortfahren.

   ```
   Nmap version 6.40 ( http://nmap.org )
   Platform: x86_64-koji-linux-gnu
   Compiled with: nmap-liblua-5.2.2 openssl-1.0.2k libpcre-8.32 libpcap-1.5.3 nmap-libdnet-1.12 ipv6
   Compiled without:
   Available nsock engines: epoll poll select
   ```

------
#### [ macOS ]

Dieser Vorgang erfordert, dass Sie über die Berechtigung verfügen, Software auf dem Computer zu installieren.

**nmap-Installation auf Ihrem macOS-Computer**

1. Öffnen Sie in einem Browser [https://nmap.org/download\$1macosx](https://nmap.org/download#macosx) und laden Sie das **neueste stabile** Installationsprogramm herunter.

   Wenn Sie dazu aufgefordert werden, wählen Sie **Öffnen mit DiskImageInstaller**.

1. Verschieben Sie das Paket im Installationsfenster in den Ordner **Applications**.

1. Suchen Sie im **Finder** das `nmap-xxxx-mpkg` Paket im Ordner **Anwendungen**. **Ctrl-click** Sie auf das Paket und wählen Sie **Öffnen**, um das Paket zu öffnen.

1. Überprüfen Sie das Sicherheitsdialogfeld. Wenn Sie bereit für die Installation von **nmap** sind, wählen Sie **Öffnen**, um **nmap** zu installieren.

1. Testen Sie in **Terminal** die Installation mit diesem Befehl.

   ```
   nmap --version
   ```

1. Wenn Sie eine Ausgabe ähnlich der folgenden sehen, ist `nmap` installiert und Sie können mit [Testen Sie die Verbindung zu Ihrem Gerätedatenendpunkt und Port](#iot-quick-start-test-connection-test) fortfahren.

   ```
   Nmap version 7.92 ( https://nmap.org )
   Platform: x86_64-apple-darwin17.7.0
   Compiled with: nmap-liblua-5.3.5 openssl-1.1.1k nmap-libssh2-1.9.0 libz-1.2.11 nmap-libpcre-7.6 nmap-libpcap-1.9.1 nmap-libdnet-1.12 ipv6 Compiled without:
   Available nsock engines: kqueue poll select
   ```

------
#### [ Windows ]

Dieser Vorgang erfordert, dass Sie über die Berechtigung verfügen, Software auf dem Computer zu installieren.

**Um nmap auf Ihrem Windows-Computer zu installieren**

1. Öffnen Sie in einem Browser [https://nmap.org/download\$1windows](https://nmap.org/download#windows) und laden Sie die **neueste stabile** Version des Setup-Programms herunter.

   Wenn Sie dazu aufgefordert werden, wählen Sie **Datei speichern**. Nachdem die Datei heruntergeladen wurde, öffnen Sie sie im Download-Ordner.

1.  Nachdem der Download der Setup-Datei abgeschlossen ist, öffnen Sie den Download **nmap-xxxx-setup.exe** um die App zu installieren. 

1.  Übernehmen Sie bei der Installation des Programms die Standardeinstellungen.

   Sie benötigen die Npcap-App für diesen Test nicht. Sie können diese Option deaktivieren, wenn Sie sie nicht installieren möchten.

1. Testen Sie in **Command** die Installation mit diesem Befehl.

   ```
   nmap --version
   ```

1. Wenn Sie eine Ausgabe ähnlich der folgenden sehen, ist `nmap` installiert und Sie können mit [Testen Sie die Verbindung zu Ihrem Gerätedatenendpunkt und Port](#iot-quick-start-test-connection-test) fortfahren.

   ```
   Nmap version 7.92 ( https://nmap.org )
   Platform: i686-pc-windows-windows
   Compiled with: nmap-liblua-5.3.5 openssl-1.1.1k nmap-libssh2-1.9.0 nmap-libz-1.2.11 nmap-libpcre-7.6 Npcap-1.50 nmap-libdnet-1.12 ipv6
   Compiled without:
   Available nsock engines: iocp poll select
   ```

------

## Testen Sie die Verbindung zu Ihrem Gerätedatenendpunkt und Port
<a name="iot-quick-start-test-connection-test"></a>

Dieses Verfahren testet die Verbindung Ihres IoT-Geräts mit Ihrem Gerätedatenendpunkt über den ausgewählten Port.

**Um den Endpunkt und den Port Ihrer Gerätedaten zu testen**

1. Ersetzen Sie in einem Terminal- oder Befehlszeilenfenster auf Ihrem Gerät den Beispielendpunkt für Gerätedaten (`a3qEXAMPLEsffp-ats.iot.eu-west-1.amazonaws.com`) durch den Gerätedatenendpunkt für Ihr Konto und geben Sie dann diesen Befehl ein.

   ```
   nmap -p 8443 a3qEXAMPLEsffp-ats.iot.eu-west-1.amazonaws.com
   ```

1. Wenn von `nmap` eine Ausgabe ähnlich der folgenden angezeigt wird, konnte am ausgewählten Port von `nmap` erfolgreich eine Verbindung zu Ihrem Gerätedatenendpunkt hergestellt werden.

   ```
   Starting Nmap 7.92 ( https://nmap.org ) at 2022-02-18 16:23 Pacific Standard Time
   Nmap scan report for a3qEXAMPLEsffp-ats.iot.eu-west-1.amazonaws.com (xx.xxx.147.160)
   Host is up (0.036s latency).
   Other addresses for a3qEXAMPLEsffp-ats.iot.eu-west-1.amazonaws.com (not scanned): xx.xxx.134.144 xx.xxx.55.139 xx.xxx.110.235 xx.xxx.174.233 xx.xxx.74.65 xx.xxx.122.179 xx.xxx.127.126
   rDNS record for xx.xxx.147.160: ec2-EXAMPLE-160.eu-west-1.compute.amazonaws.com
   
   PORT     STATE SERVICE
   8443/tcp open  https-alt
   MAC Address: 00:11:22:33:44:55 (Cimsys)
   
   Nmap done: 1 IP address (1 host up) scanned in 0.91 seconds
   ```

1. Wenn von `nmap` keine erfolgreiche Ausgabe zurückgegeben wurde, überprüfen Sie den Endpunktwert, um sicherzustellen, dass Sie den richtigen Endpunkt haben, und überprüfen Sie die Verbindung Ihres Geräts mit dem Internet.

Sie können andere Anschlüsse an Ihrem Gerätedatenendpunkt testen, z. B. Port 443, den primären HTTPS-Port, indem Sie den in Schritt 1 verwendeten Port durch den Port `8443` ersetzen, den Sie testen möchten.

# Erfahren Sie AWS IoT Core in praktischen Tutorials mehr
<a name="iot-gs-first-thing"></a>

In diesem Tutorial installieren Sie die Software und erstellen die AWS IoT Ressourcen, die erforderlich sind, um ein Gerät anzuschließen, mit AWS IoT Core dem es MQTT-Nachrichten senden und empfangen kann. AWS IoT Core Sie werden die Nachrichten im MQTT-Client in der AWS IoT Konsole sehen.

Sie können damit rechnen, 20 bis 30 Minuten für dieses Tutorial aufzuwenden. Wenn Sie ein IoT-Gerät oder einen Raspberry Pi verwenden, kann dieses Tutorial länger dauern, wenn Sie beispielsweise das Betriebssystem installieren und das Gerät konfigurieren müssen.

![\[Erste Schritte mit AWS IoT Core Page.\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/images/iot-getting-started.png)


Dieses Tutorial eignet sich am besten für Entwickler, die sich AWS IoT Core zunächst mit fortgeschritteneren Funktionen wie der [Regel-Engine](https://docs.aws.amazon.com//iot/latest/developerguide/iot-rules.html) und [Schatten](https://docs.aws.amazon.com//iot/latest/developerguide/iot-device-shadows.html) vertraut machen möchten. Dieses Tutorial bereitet Sie darauf vor, mehr über andere Dienste zu erfahren AWS IoT Core und zu erfahren, wie es mit anderen AWS Diensten interagiert, indem es die Schritte detaillierter erklärt als [das Schnellstart-Tutorial](iot-quick-start.md). Wenn Sie nur ein schnelles *Hello World*-Erlebnis suchen, probieren Sie [Probieren Sie das AWS IoT Core Quick Connect-Tutorial aus](iot-quick-start.md) aus.

Nachdem Sie Ihre AWS-Konto AWS IoT Konsole eingerichtet haben, folgen Sie diesen Schritten, um zu erfahren, wie Sie ein Gerät anschließen und Nachrichten senden AWS IoT Core können.

**Nächste Schritte**
+ [Wählen Sie, welche Geräteoption für Sie am besten geeignet ist](#choosing-a-gs-system)
+ [AWS IoT Ressourcen erstellen](create-iot-resources.md), wenn Sie kein virtuelles Gerät mit Amazon EC2 erstellen möchten
+ [Konfigurieren Ihres Geräts](configure-device.md)
+ [MQTT-Nachrichten mit dem AWS IoT MQTT-Client anzeigen](view-mqtt-messages.md)

Weitere Informationen zu AWS IoT Core finden Sie unter [Was ist AWS IoT Core](what-is-aws-iot.md)?

## Welche Geräteoption ist für Sie am besten geeignet?
<a name="choosing-a-gs-system"></a>

Wenn Sie sich nicht sicher sind, welche Option Sie wählen sollen, können Sie anhand der folgenden Liste der Vor- und Nachteile der einzelnen Optionen entscheiden, welche für Sie am besten geeignet ist.


| Option | Dies könnte eine gute Option sein, wenn: | Dies ist möglicherweise keine gute Option, wenn: | 
| --- | --- | --- | 
| [Erstellen Sie ein virtuelles Gerät mit Amazon EC2](creating-a-virtual-thing.md) |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/iot-gs-first-thing.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/iot-gs-first-thing.html)  | 
| [Verwenden Sie Ihren Windows- oder Linux-PC oder Mac als Gerät AWS IoT](using-laptop-as-device.md) |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/iot-gs-first-thing.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/iot-gs-first-thing.html)  | 
| [Verbinden eines Raspberry Pi oder eines anderes Gerätes](connecting-to-existing-device.md) |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/iot-gs-first-thing.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/iot-gs-first-thing.html)  | 

# AWS IoT Ressourcen erstellen
<a name="create-iot-resources"></a>

In diesem Tutorial erstellen Sie die AWS IoT Ressourcen, die ein Gerät benötigt, um eine Verbindung zu Nachrichten herzustellen AWS IoT Core und sie auszutauschen.

![\[Seite „ AWS IoT Ressourcen“ erstellen.\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/images/iot-gs-create-resources.png)


1. Erstellen Sie ein AWS IoT Richtliniendokument, das Ihr Gerät zur Interaktion mit AWS IoT Diensten autorisiert.

1. Erstellen Sie ein Ding-Objekt AWS IoT und sein X.509-Gerätezertifikat und hängen Sie dann das Richtliniendokument an. Das Ding-Objekt ist die virtuelle Darstellung Ihres Geräts in der AWS IoT Registrierung. Das Zertifikat authentifiziert Ihr Gerät gegenüber AWS IoT Core, und das Richtliniendokument autorisiert Ihr Gerät zur Interaktion mit. AWS IoT
**Anmerkung**  
Wenn Sie [Erstellen Sie ein virtuelles Gerät mit Amazon EC2](creating-a-virtual-thing.md) planen, können Sie diese Seite überspringen und mit [Konfigurieren Ihres Geräts](configure-device.md)weitermachen. Sie werden diese Ressourcen erstellen, wenn Sie Ihr virtuelles Objekt erstellen.

In diesem Tutorial werden die Ressourcen mithilfe der AWS IoT Konsole erstellt. AWS IoT Wenn Ihr Gerät einen Webbrowser unterstützt, ist es möglicherweise einfacher, dieses Verfahren im Webbrowser des Geräts auszuführen, da Sie die Zertifikatsdateien direkt auf Ihr Gerät herunterladen können. Wenn Sie dieses Verfahren auf einem anderen Computer ausführen, müssen Sie die Zertifikatsdateien auf Ihr Gerät kopieren, bevor sie von der Beispiel-App verwendet werden können.

## Erstellen Sie eine AWS IoT Richtlinie
<a name="create-iot-policy"></a>

Geräte verwenden ein X.509-Zertifikat zur Authentifizierung. AWS IoT Core Mit dem Zertifikat AWS IoT sind Richtlinien verknüpft. Diese Richtlinien legen fest, welche AWS IoT Operationen, wie das Abonnieren oder Veröffentlichen von MQTT-Themen, das Gerät ausführen darf. Ihr Gerät legt sein Zertifikat vor, wenn es eine Verbindung herstellt und Nachrichten an sendet AWS IoT Core.

Folgen Sie den Schritten, um eine Richtlinie zu erstellen, die es Ihrem Gerät ermöglicht, die zur Ausführung des Beispielprogramms erforderlichen AWS IoT -Vorgänge auszuführen. Sie müssen die AWS IoT -Richtlinie erstellen, bevor Sie sie an das Gerätezertifikat anhängen können, das Sie später erstellen werden.

**Um eine AWS IoT Richtlinie zu erstellen**

1. Wählen Sie in der [AWS IoT -Konsole](https://console.aws.amazon.com//iot/home) im linken Menü **Sicherheit** und dann **Richtlinien** aus.

1. Wählen Sie auf der Seite **Sie haben noch keine Richtlinie** die Option **Richtlinie erstellen**.

   Wenn Ihr Konto bereits Richtlinien hat, wählen Sie **Richtlinie erstellen** aus.

1. Auf der Seite **Richtlinie erstellen**:

   1. Geben Sie im Abschnitt **Richtlinieneigenschaften** im Feld **Richtlinienname** einen Namen für die Richtlinie ein (z. B. **My\$1Iot\$1Policy**). Verwenden Sie keine personenbezogenen Informationen in Ihren Richtliniennamen.

   1. Erstellen Sie im Abschnitt **Richtliniendokument** die Richtlinienerklärungen, die Ressourcen den Zugriff auf AWS IoT Core -Operationen gewähren oder verweigern. Gehen Sie wie folgt vor, um eine Richtlinienerklärung zu erstellen, die allen Clients die Möglichkeit einräumt, ****iot:Connect**** auszuführen:
      + Wählen Sie im Feld **Richtlinieneffekt** die Option **Zulassen** aus. Dadurch können alle Clients, deren Zertifikat diese Richtlinie an ihr Zertifikat angehängt hat, die Aktion ausführen, die im Feld **Richtlinienaktion** aufgeführt ist.
      + Wählen Sie im Feld **Richtlinienaktion** eine Richtlinienaktion wie ****iot:Connect****. Richtlinienaktionen sind die Aktionen, für deren Ausführung Ihr Gerät eine Genehmigung benötigt, wenn es das Beispielprogramm aus dem Geräte-SDK ausführt.
      + Geben Sie im Feld **Richtlinienressource** einen Amazon-Ressourcennamen (ARN) oder **\$1** ein. Ein **\$1**, um einen beliebigen Client (Gerät) auszuwählen.

      Um die Richtlinienerklärungen für ****iot:Receive****, ****iot:Publish**** und ****iot:Subscribe**** zu erstellen, wählen Sie **Neue Erklärung hinzufügen** und wiederholen Sie die Schritte.  
![\[Die Seite zum Erstellen einer Richtlinie.\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/images/gs-create-policy-new.png)
**Anmerkung**  
In diesem Schnellstart wird der Einfachheit halber der Platzhalter (\$1) verwendet. Um die Sicherheit zu erhöhen, sollten Sie einschränken, welche Clients (Geräte) Verbindungen herstellen und Nachrichten veröffentlichen können, indem Sie einen Client-ARN anstelle des Platzhalterzeichens als Ressource angeben. Der Kunde ARNs folgt diesem Format:`arn:aws:iot:your-region:your-aws-account:client/my-client-id`.   
Sie müssen jedoch zuerst die Ressource (z. B. ein Client-Gerät oder einen Objektschatten) erstellen, bevor Sie ihren ARN einer Richtlinie zuweisen können. Weitere Informationen finden Sie unter [AWS IoT Core -Aktionsressourcen](https://docs.aws.amazon.com//iot/latest/developerguide/iot-action-resources.html).

1. Nachdem Sie die Informationen für Ihre Richtlinie eingegeben haben, wählen Sie **Erstellen**.

Weitere Informationen finden Sie unter [Wie AWS IoT funktioniert mit IAM](security_iam_service-with-iam.md).

## Dies erstellt ein Objekt
<a name="create-aws-thing"></a>

Geräte, mit AWS IoT Core denen verbunden ist, werden durch *Dingobjekte* in der AWS IoT Registrierung dargestellt. Ein *Objekt* stellt ein bestimmtes Gerät oder eine logische Entität dar. Es kann ein physisches Gerät oder ein Sensor sein (beispielsweise eine Glühbirne oder ein Wandschalter). Es kann sich auch um eine logische Einheit handeln, z. B. eine Instanz einer Anwendung oder eine physische Entität AWS IoT, die keine Verbindung zu anderen Geräten herstellt, die dies tun (z. B. ein Auto mit Motorsensoren oder einem Bedienfeld).

**Um ein Ding in der AWS IoT Konsole zu erstellen**

1. Wählen Sie in der [AWS IoT -Konsole](https://console.aws.amazon.com/iot/home) im linken Menü **Alle Geräte** und dann **Objekte** aus.

1. Wählen Sie auf der Seite **Objekte** die Option **Objekte erstellen** aus.

1. Wählen Sie auf der Seite **Objekte erstellen** den Eintrag **Einzelnes Objekt erstellen** und dann **Weiter** aus.

1. Geben Sie auf der Seite **Objekteigenschaften angeben** unter **Objektname** einen Namen für Ihr Objekt ein, z. B. **MyIotThing**.

   Wählen Sie die Namen der Objekte sorgfältig aus, da Sie den Namen eines Objekts später nicht mehr ändern können.

   Um den Namen eines Objekts zu ändern, müssen Sie ein neues Objekt erstellen, diesem den neuen Namen geben und dann das alte Objekt löschen.
**Anmerkung**  
Verwenden Sie keine personenbezogenen Informationen in Ihren Objektnamen. Der Name der Sache kann in unverschlüsselten Mitteilungen und Berichten vorkommen.

1. Lassen Sie die restlichen Felder auf dieser Seite leer. Wählen Sie **Weiter** aus.

1. Wählen Sie auf der Seite **Gerätezertifikat konfigurieren — *optional*** die Option **Neues Zertifikat automatisch generieren (empfohlen)** aus. Wählen Sie **Weiter** aus.

1. Wählen Sie auf der Seite **Richtlinien an Zertifikat anhängen — *optional*** die Richtlinie aus, die Sie im vorherigen Abschnitt erstellt haben. In diesem Abschnitt erhielt die Richtlinie den Namen **My\$1Iot\$1Policy**. Wählen Sie **Objekt erstellen** aus.

1. Gehen Sie auf der Seite **Zertifikate und Schlüssel herunterladen** wie folgt vor:

   1. Laden Sie die einzelnen Zertifikat- und Schlüsseldateien herunter und speichern Sie sie für später. Sie müssen diese Dateien auf Ihrem Gerät installieren.

      Wenn Sie Ihre Zertifikatsdateien speichern, geben Sie ihnen die Namen in der folgenden Tabelle. Dies sind die Dateinamen, die in späteren Beispielen verwendet wurden.  
**Namen der Zertifikatsdateien**    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/create-iot-resources.html)

   1. Um die Root-CA-Datei für diese Dateien herunterzuladen, wählen Sie den **Download**-Link der Root-CA-Zertifikatsdatei, die dem Typ des Datenendpunkts und der Cipher Suite entspricht, die Sie verwenden. Wählen Sie in diesem Tutorial rechts neben **RSA 2048 bit key: Amazon Root CA 1** die Option **Herunterladen** und laden Sie die Zertifikatsdatei **RSA 2048 bit key: Amazon Root CA 1** herunter.
**Wichtig**  
Sie müssen die Zertifikatsdateien speichern, bevor Sie diese Seite verlassen. Nachdem Sie diese Seite in der Konsole verlassen haben, haben Sie keinen Zugriff mehr auf die Zertifikatsdateien.  
Wenn Sie vergessen haben, die in diesem Schritt erstellten Zertifikatsdateien herunterzuladen, müssen Sie diesen Konsolenbildschirm verlassen, zur Liste der Objekte in der Konsole wechseln, das von Ihnen erstellte Objekt löschen und diesen Vorgang dann von vorne beginnen.

   1.  Wählen Sie **Erledigt** aus.

Nachdem Sie dieses Verfahren abgeschlossen haben, sollte das neue Objekt in Ihrer Liste der Objekte angezeigt werden.

# Konfigurieren Ihres Geräts
<a name="configure-device"></a>

In diesem Abschnitt wird beschrieben, wie Sie Ihr Gerät für die Verbindung mit AWS IoT Core konfigurieren. Wenn Sie damit beginnen möchten, AWS IoT Core aber noch kein Gerät haben, können Sie mithilfe von Amazon EC2 ein virtuelles Gerät erstellen oder Ihren Windows-PC oder Mac als IoT-Gerät verwenden.

Wählen Sie die beste Geräteoption aus, die Sie ausprobieren AWS IoT Core möchten. Natürlich können Sie alle ausprobieren, aber versuchen Sie es jeweils nur mit einer. Wenn Sie sich nicht sicher sind, welche Geräteoption für Sie am besten geeignet ist, lesen Sie, wie Sie [die beste Geräteoption](iot-gs-first-thing.md#choosing-a-gs-system) auswählen können, und kehren Sie dann zu dieser Seite zurück.

**Geräteoptionen**
+ [Erstellen Sie ein virtuelles Gerät mit Amazon EC2](creating-a-virtual-thing.md)
+ [Verwenden Sie Ihren Windows- oder Linux-PC oder Mac als Gerät AWS IoT](using-laptop-as-device.md)
+ [Verbinden eines Raspberry Pi oder eines anderes Gerätes](connecting-to-existing-device.md)

# Erstellen Sie ein virtuelles Gerät mit Amazon EC2
<a name="creating-a-virtual-thing"></a>

In diesem Tutorial erstellen Sie eine Amazon EC2-Instance, die als Ihr virtuelles Gerät in der Cloud dient.

Um dieses Tutorial abzuschließen, benötigen Sie eine AWS-Konto. Wenn dies nicht der Fall ist, führen Sie die unter [Einrichten AWS-Konto](setting-up.md) beschriebenen Schritte aus, bevor Sie fortfahren.

**Topics**
+ [Eine Amazon-EC2-Instance konfigurieren](#set-up-ec2)
+ [Installiere Git, Node.js und konfiguriere die AWS CLI](#install-git-node)
+ [Erstellen Sie AWS IoT Ressourcen für Ihr virtuelles Gerät](#ec2-create-certificate)
+ [Installieren Sie das AWS IoT Geräte-SDK für JavaScript](#ec2-sdk)
+ [Ausführen der Beispielanwendungen](#ec2-run-app)
+ [Nachrichten aus der Beispiel-App in der AWS IoT Konsole anzeigen](#ec2-view-msg)

## Eine Amazon-EC2-Instance konfigurieren
<a name="set-up-ec2"></a>

Die folgenden Schritte zeigen Ihnen, wie Sie eine Amazon EC2-Instance erstellen, die anstelle eines physischen Geräts als Ihr virtuelles Gerät fungiert.

Wenn Sie zum ersten Mal eine Amazon EC2 EC2-Instance erstellen, sind die Anweisungen unter [Erste Schritte mit Amazon EC2 Linux-Instances](https://docs.aws.amazon.com//AWSEC2/latest/UserGuide/EC2_GetStarted.html) möglicherweise hilfreicher.

**So starten Sie eine Instance**

1. Öffnen Sie die Amazon-EC2-Konsole unter [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. Erweitern Sie im Konsolenmenü auf der linken Seite den Abschnitt **Instances** und wählen Sie **Instances** aus. Wählen Sie im **Instances**-Dashboard rechts die Option **Instances starten** aus, um eine Liste der Basiskonfigurationen anzuzeigen. 

1. Geben Sie im Abschnitt **Name und Tags** einen Namen für die Instance ein und fügen Sie optional Tags hinzu.

1. Wählen Sie im Abschnitt **Anwendungs- und Betriebssystem-Images (Amazon Machine Image)** eine AMI-Vorlage für Ihre Instance aus, z. B. *Amazon Linux 2 AMI (HVM)*. Diese AMIs sind als „Zur kostenlosen Nutzung berechtigt” gekennzeichnet.

1. Auf der Seite **Instance Type** können Sie die Hardware-Konfiguration Ihrer Instance auswählen. Wählen Sie den Typ `t2.micro` aus (Standardeinstellung). Beachten Sie, dass dieser Instance-Typ über die Berechtigung für das kostenlose Kontingent verfügt.

1. Wählen Sie im Abschnitt **Schlüsselpaar (Anmeldung)** einen Schlüsselpaar-Namen aus der Dropdown-Liste oder wählen Sie **Neues Schlüsselpaar erstellen**, um ein neues Schlüsselpaar zu erstellen. Wenn Sie ein neues Schlüsselpaar erstellen, stellen Sie sicher, dass Sie die private Schlüsseldatei herunterladen und an einem sicheren Ort speichern, da dies Ihre einzige Möglichkeit ist, sie herunterzuladen und zu speichern. Sie müssen den Namen für Ihr Schlüsselpaar beim Starten einer Instance angeben. Der entsprechende private Schlüssel muss jedes Mal angegeben werden, wenn Sie eine Verbindung mit der Instance herstellen.
**Warnung**  
Wählen Sie nicht die Option **Ohne Schlüsselpaar fortfahren** aus. Wenn Sie Ihre Instance ohne Schlüsselpaar starten, können Sie keine Verbindung zu ihr herstellen.

1. In den **Abschnitten Netzwerkeinstellungen** und **Speicher konfigurieren** können Sie die Standardeinstellungen beibehalten. Sobald Sie bereit sind, wählen Sie **Instance starten** aus.

1. Auf einer Bestätigungsseite wird Ihnen mitgeteilt, dass die Instance gestartet wird. Wählen Sie **View Instances** aus, um die Bestätigungsseite zu schließen und zur Konsole zurückzukehren.

1. Auf dem Bildschirm **Instances** können Sie den Status des Starts anzeigen. Es dauert einige Zeit, bis die Instance startet. Wenn Sie eine Instance starten, lautet ihr anfänglicher Status `pending`. Nachdem die Instance gestartet wurde, ändert sich der Status in `running`. Sie erhält dann einen öffentlichen DNS-Namen. (Wenn die Spalte **Public DNS (IPv4)** ausgeblendet ist, wählen Sie **Spalten ein-/ausblenden** (das zahnradförmige Symbol) in der oberen rechten Ecke der Seite und wählen Sie dann **Public** DNS () aus.) IPv4

1. Es kann einige Minuten dauern, bis die Instance für die Verbindungsherstellung bereit ist. Prüfen Sie, ob die Instance die Statusprüfungen bestanden hat. Sie finden diese Information in der Spalte **Status Checks**.

   Nachdem Ihre neue Instance die Statusprüfungen bestanden hat, fahren Sie mit dem nächsten Verfahren fort und stellen Sie eine Verbindung zu ihr her.

**So stellen Sie eine Verbindung zu Ihrer Instance her**

Sie können über die Amazon EC2-Konsole (browserbasierter Client) Verbindungen mit einer Instance herstellen, indem Sie die Instance in der Konsole auswählen und die Verbindung mittels Amazon EC2 Instance Connect festlegen. Instance Connect verarbeitet die Berechtigungen und stellt eine erfolgreiche Verbindung bereit.

1. Öffnen Sie die Amazon-EC2-Konsole unter [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. Wählen Sie im linken Menü **Instances** aus.

1. Wählen Sie die Instance und **Connect (Verbinden)** aus.

1. Wählen Sie **Amazon EC2 Instance Connect**, **Connect**.

Sie sollten jetzt ein **Amazon EC2 Instance Connect**-Fenster haben, das bei Ihrer neuen Amazon EC2 Instance angemeldet ist.

## Installiere Git, Node.js und konfiguriere die AWS CLI
<a name="install-git-node"></a>

In diesem Abschnitt installieren Sie Git und Node.js auf Ihrer Linux-Instance.

**So installieren Sie Git**

1. Aktualisieren Sie Ihre **Instance in Ihrem Amazon EC2 Instance Connect**-Fenster mit dem folgenden Befehl.

   ```
   sudo yum update -y
   ```

1. Installieren Sie Git in Ihrem **Amazon EC2 Instance Connect**-Fenster mit dem folgenden Befehl.

   ```
   sudo yum install git -y
   ```

1. Führen Sie den folgenden Befehl aus, um zu überprüfen, ob Git installiert wurde und ob es sich um die aktuelle Version von Git handelt:

   ```
   git --version
   ```

**Installieren von Node.js**

1. Installieren Sie in Ihrem **Amazon EC2 Instance Connect**-Fenster den Node Version Manager (nvm) mit dem folgenden Befehl.

   ```
   curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.34.0/install.sh | bash
   ```

   Wir verwenden nvm zum Installieren von Node.js, da nvm mehrere Versionen von Node.js installieren kann und die Möglichkeit bietet, zwischen diesen zu wechseln. 

1. Aktivieren Sie nvm in Ihrem **Amazon EC2 Instance Connect**-Fenster mit diesem Befehl.

   ```
   . ~/.nvm/nvm.sh
   ```

1. Verwenden Sie in Ihrem **Amazon EC2 Instance Connect**-Fenster nvm, um die neueste Version von Node.js mit diesem Befehl zu installieren.

   ```
   nvm install 16
   ```
**Anmerkung**  
Dadurch wird die neueste LTS-Version von Node.js installiert.

   Beim Installieren von Node.js wird auch der Node Package Manager (npm) installiert, sodass Sie bei Bedarf zusätzliche Module installieren können.

1. Testen Sie in Ihrem **Amazon EC2 Instance Connect**-Fenster, ob Node.js installiert ist und ordnungsgemäß ausgeführt wird, indem Sie diesen Befehl verwenden.

   ```
   node -e "console.log('Running Node.js ' + process.version)"
   ```

    Dieses Tutorial erfordert Node v10.0 oder neuer. Weitere Informationen finden Sie unter [Tutorial: Einrichten von Node.js auf einer Amazon EC2-Instance](https://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/setting-up-node-on-ec2-instance.html).

**Um zu konfigurieren AWS CLI**

Auf Ihrer Amazon EC2-Instance ist AWS CLI vorinstalliert. Sie müssen jedoch Ihr AWS CLI Profil vervollständigen. Weitere Informationen zum Konfigurieren Ihrer CLI finden Sie unter [Konfiguration von AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html).

1. Das folgende Beispiel zeigt Beispielwerte. Ersetzen Sie sie mit Ihren eigenen Werten. Sie finden diese Werte in Ihrer [AWS -Konsole in Ihren Kontoinformationen unter **Sicherheitsanmeldedaten**](https://console.aws.amazon.com//iam/home#/security_credentials).

   Geben Sie in Ihrem **Amazon EC2 Instance Connect**-Fenster diesen Befehl ein:

   ```
   aws configure
   ```

   Geben Sie dann an den angezeigten Eingabeaufforderungen die Werte aus Ihrem Konto ein.

   ```
   AWS Access Key ID [None]: AKIAIOSFODNN7EXAMPLE
   AWS Secret Access Key [None]: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
   Default region name [None]: us-west-2
   Default output format [None]: json
   ```

1. Sie können Ihre AWS CLI Konfiguration mit diesem Befehl testen:

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

   Wenn Ihr korrekt konfiguriert AWS CLI ist, sollte der Befehl eine Endpunktadresse von Ihrem zurückgeben AWS-Konto.

## Erstellen Sie AWS IoT Ressourcen für Ihr virtuelles Gerät
<a name="ec2-create-certificate"></a>

In diesem Abschnitt wird beschrieben, wie Sie AWS CLI das Ding-Objekt und seine Zertifikatsdateien direkt auf dem virtuellen Gerät erstellen können. Dies erfolgt direkt auf dem Gerät, um mögliche Komplikationen zu vermeiden, die entstehen könnten, wenn sie von einem anderen Computer auf das Gerät kopiert werden. In diesem Abschnitt erstellen Sie die folgenden Ressourcen für Ihr virtuelles Gerät:
+ Ein Ding-Objekt, in dem Ihr virtuelles Gerät dargestellt AWS IoT werden soll.
+ Ein Zertifikat zur Authentifizierung Ihres virtuellen Geräts.
+ Ein Richtliniendokument, mit dem Sie Ihr virtuelles Gerät autorisieren, eine Verbindung zu AWS IoT herzustellen und Nachrichten zu veröffentlichen, zu empfangen und zu abonnieren.

**Um ein AWS IoT Ding-Objekt in Ihrer Linux-Instanz zu erstellen**

Geräte, mit AWS IoT denen eine Verbindung besteht, werden *durch Ding-Objekte* in der AWS IoT Registrierung dargestellt. Ein *Objekt* stellt ein bestimmtes Gerät oder eine logische Entität dar. In diesem Fall repräsentiert Ihr *Objekt* Ihr virtuelles Gerät, diese Amazon EC2-Instance.

1. Führen Sie in Ihrem **Amazon EC2 Instance Connect**-Fenster den folgenden Befehl aus, um Ihr Objekt zu erstellen.

   ```
   aws iot create-thing --thing-name "MyIotThing"
   ```

1. Die JSON-Antwort sollte wie folgt aussehen:

   ```
   {
       "thingArn": "arn:aws:iot:your-region:your-aws-account:thing/MyIotThing", 
       "thingName": "MyIotThing",
       "thingId": "6cf922a8-d8ea-4136-f3401EXAMPLE"
   }
   ```

**Um AWS IoT Schlüssel und Zertifikate in Ihrer Linux-Instanz zu erstellen und anzuhängen**

Der Befehl **[create-keys-and-certificate](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot/create-keys-and-certificate.html)** erstellt Clientzertifikate, die von der Amazon Root-Zertifizierungsstelle signiert wurden. Dieses Zertifikat wird verwendet, um die Identität Ihres virtuellen Geräts zu authentifizieren.

1. Erstellen Sie in Ihrem **Amazon EC2 Instance Connect**-Fenster ein Verzeichnis zum Speichern Ihres Zertifikats und Ihrer Schlüsseldateien.

   ```
   mkdir ~/certs
   ```

1. Laden Sie in Ihrem **Amazon EC2 Instance Connect**-Fenster mit diesem Befehl eine Kopie des Zertifikats der Amazon Certificate Authority (CA) herunter.

   ```
   curl -o ~/certs/Amazon-root-CA-1.pem \
       https://www.amazontrust.com/repository/AmazonRootCA1.pem
   ```

1. Führen Sie in Ihrem **Amazon EC2 Instance Connect-Fenster** den folgenden Befehl aus, um Ihre privaten Schlüssel-, öffentlichen Schlüssel- und X.509-Zertifikatsdateien zu erstellen. Dieser Befehl registriert und aktiviert auch das Zertifikat mit AWS IoT.

   ```
   aws iot create-keys-and-certificate \
       --set-as-active \
       --certificate-pem-outfile "~/certs/device.pem.crt" \
       --public-key-outfile "~/certs/public.pem.key" \
       --private-key-outfile "~/certs/private.pem.key"
   ```

   Die Antwort sieht wie folgt aus. Speichern Sie das `certificateArn`, damit Sie es in nachfolgenden Befehlen verwenden können. Sie benötigen es, um Ihr Zertifikat an Ihr Objekt anzuhängen und die Richtlinie in späteren Schritten an das Zertifikat anzuhängen.

   ```
   {
       "certificateArn": "arn:aws:iot:us-west-2:123456789012:cert/9894ba17925e663f1d29c23af4582b8e3b7619c31f3fbd93adcb51ae54b83dc2",
       "certificateId": "9894ba17925e663f1d29c23af4582b8e3b7619c31f3fbd93adcb51ae54b83dc2",
       "certificatePem": "
   -----BEGIN CERTIFICATE-----
   MIICiTCCEXAMPLE6m7oRw0uXOjANBgkqhkiG9w0BAQUFADCBiDELMAkGA1UEBhMC
   VVMxCzAJBgNVBAgEXAMPLEAwDgYDVQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBbWF6
   b24xFDASBgNVBAsTC0lBTSEXAMPLE2xlMRIwEAYDVQQDEwlUZXN0Q2lsYWMxHzAd
   BgkqhkiG9w0BCQEWEG5vb25lQGFtYEXAMPLEb20wHhcNMTEwNDI1MjA0NTIxWhcN
   MTIwNDI0MjA0NTIxWjCBiDELMAkGA1UEBhMCEXAMPLEJBgNVBAgTAldBMRAwDgYD
   VQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBbWF6b24xFDAEXAMPLEsTC0lBTSBDb25z
   b2xlMRIwEAYDVQQDEwlUZXN0Q2lsYWMxHzAdBgkqhkiG9w0BCQEXAMPLE25lQGFt
   YXpvbi5jb20wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAMaK0dn+aEXAMPLE
   EXAMPLEfEvySWtC2XADZ4nB+BLYgVIk60CpiwsZ3G93vUEIO3IyNoH/f0wYK8m9T
   rDHudUZEXAMPLELG5M43q7Wgc/MbQITxOUSQv7c7ugFFDzQGBzZswY6786m86gpE
   Ibb3OhjZnzcvQAEXAMPLEWIMm2nrAgMBAAEwDQYJKoZIhvcNAQEFBQADgYEAtCu4
   nUhVVxYUntneD9+h8Mg9qEXAMPLEyExzyLwaxlAoo7TJHidbtS4J5iNmZgXL0Fkb
   FFBjvSfpJIlJ00zbhNYS5f6GuoEDEXAMPLEBHjJnyp378OD8uTs7fLvjx79LjSTb
   NYiytVbZPQUQ5Yaxu2jXnimvw3rrszlaEXAMPLE=
   -----END CERTIFICATE-----\n",
       "keyPair": {
           "PublicKey": "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkEXAMPLEQEFAAOCAQ8AMIIBCgKCAQEAEXAMPLE1nnyJwKSMHw4h\nMMEXAMPLEuuN/dMAS3fyce8DW/4+EXAMPLEyjmoF/YVF/gHr99VEEXAMPLE5VF13\n59VK7cEXAMPLE67GK+y+jikqXOgHh/xJTwo+sGpWEXAMPLEDz18xOd2ka4tCzuWEXAMPLEahJbYkCPUBSU8opVkR7qkEXAMPLE1DR6sx2HocliOOLtu6Fkw91swQWEXAMPLE\GB3ZPrNh0PzQYvjUStZeccyNCx2EXAMPLEvp9mQOUXP6plfgxwKRX2fEXAMPLEDa\nhJLXkX3rHU2xbxJSq7D+XEXAMPLEcw+LyFhI5mgFRl88eGdsAEXAMPLElnI9EesG\nFQIDAQAB\n-----END PUBLIC KEY-----\n",
           "PrivateKey": "-----BEGIN RSA PRIVATE KEY-----\nkey omitted for security reasons\n-----END RSA PRIVATE KEY-----\n"
       }
   }
   ```

1. Hängen Sie in Ihrem **Amazon EC2 Instance Connect-Fenster** Ihr Ding-Objekt mit dem Zertifikat an, das Sie gerade erstellt haben, indem Sie den *certificateArn* folgenden Befehl und die Antwort des vorherigen Befehls verwenden.

   ```
   aws iot attach-thing-principal \
       --thing-name "MyIotThing" \
       --principal "certificateArn"
   ```

   Dieser Befehl gibt keine Ausgabe zurück, wenn er erfolgreich ist.

**Erstellen und Anfügen einer Richtlinie**

1. Erstellen Sie in Ihrem **Amazon EC2 Instance Connect**-Fenster die Richtliniendatei, indem Sie dieses Richtliniendokument kopieren und in eine Datei mit dem Namen **\$1/policy.json** einfügen.

   Wenn Sie keinen bevorzugten Linux-Editor haben, können Sie **nano** mit diesem Befehl öffnen. 

   ```
   nano ~/policy.json
   ```

   Fügen Sie das Richtliniendokument für `policy.json` ein. Speichern Sie die Datei und beenden Sie den **nano**-Editor (Strg\$1X).

   Kopieren Sie den Inhalt des Richtliniendokuments für `policy.json`.  
****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "iot:Publish",
                   "iot:Subscribe",
                   "iot:Receive",
                   "iot:Connect"
               ],
               "Resource": [
                   "*"
               ]
           }
       ]
   }
   ```

1. Erstellen Sie in Ihrem **Amazon EC2 Instance Connect**-Fenster Ihre Richtlinie mithilfe des folgenden Befehls.

   ```
   aws iot create-policy \
       --policy-name "MyIotThingPolicy" \
       --policy-document "file://~/policy.json"
   ```

   Ausgabe:  
****  

   ```
   {
       "policyName": "MyIotThingPolicy",
       "policyArn": "arn:aws:iot:us-east-1:your-aws-account:policy/MyIotThingPolicy",
       "policyDocument": "{
           \"Version\": \"2012-10-17\",
           \"Statement\": [
               {
                   \"Effect\": \"Allow\",
                   \"Action\": [
                       \"iot:Publish\",
                       \"iot:Receive\",
                       \"iot:Subscribe\",
                       \"iot:Connect\"
                   ],
                   \"Resource\": [
                       \"*\"
                   ]
           }
           ]
       }",
       "policyVersionId": "1"
   }
   ```

1. Fügen Sie in Ihrem **Amazon EC2 Instance Connect**-Fenster die Richtlinie mithilfe des folgenden Befehls dem Zertifikat Ihres virtuellen Geräts hinzu.

   ```
   aws iot attach-policy \
       --policy-name "MyIotThingPolicy" \
       --target "certificateArn"
   ```

   Dieser Befehl gibt keine Ausgabe zurück, wenn er erfolgreich ist.

## Installieren Sie das AWS IoT Geräte-SDK für JavaScript
<a name="ec2-sdk"></a>

In diesem Abschnitt installieren Sie das AWS IoT Geräte-SDK für JavaScript. Es enthält den Code, mit dem Anwendungen kommunizieren können, AWS IoT sowie die Beispielprogramme. Weitere Informationen finden Sie im [AWS IoT Geräte-SDK für das JavaScript GitHub Repository](https://github.com/aws/aws-iot-device-sdk-js-v2).

**Um das AWS IoT Geräte-SDK für JavaScript auf Ihrer Linux-Instance zu installieren**

1. Klonen Sie in Ihrem **Amazon EC2 Instance Connect-Fenster mit** diesem Befehl das AWS IoT Geräte-SDK für das JavaScript Repository in das `aws-iot-device-sdk-js-v2` Verzeichnis Ihres Home-Verzeichnisses.

   ```
   cd ~
   git clone https://github.com/aws/aws-iot-device-sdk-js-v2.git
   ```

1. Navigieren Sie zum `aws-iot-device-sdk-js-v2`-Verzeichnis, das Sie im vorherigen Schritt erstellt haben.

   ```
   cd aws-iot-device-sdk-js-v2
   ```

1. Verwenden Sie zum Installieren der SDK npm.

   ```
   npm install
   ```

## Ausführen der Beispielanwendungen
<a name="ec2-run-app"></a>

 Bei den Befehlen im nächsten Abschnitt wird davon ausgegangen, dass Ihr Schlüssel und Ihr Zertifikatdateien wie in dieser Tabelle gezeigt auf Ihrem virtuellen Gerät gespeichert sind.


**Namen der Zertifikatsdateien**  

|  Datei  |  Dateipfad  | 
| --- | --- | 
|  Privater Schlüssel  |  `~/certs/private.pem.key`  | 
|  Gerätezertifikat  |  `~/certs/device.pem.crt`  | 
|  CA-Stammzertifikat  |  `~/certs/Amazon-root-CA-1.pem`  | 

In diesem Abschnitt installieren und führen Sie die `pub-sub.js` Beispiel-App aus, die Sie im `aws-iot-device-sdk-js-v2/samples/node` Verzeichnis des AWS IoT Geräte-SDK für JavaScript finden. Diese App zeigt, wie ein Gerät, Ihre Amazon EC2-Instance, die MQTT-Bibliothek verwendet, um MQTT-Nachrichten zu veröffentlichen und zu abonnieren. Die `pub-sub.js`-Beispiel-App abonniert ein Thema, `topic_1`, veröffentlicht 10 Nachrichten zu diesem Thema und zeigt die Nachrichten so an, wie sie vom Message Broker empfangen wurden.

**Um die Beispiel-App zu installieren und auszuführen**

1. Navigieren Sie in Ihrem **Amazon EC2 Instance Connect**-Fenster zu dem Verzeichnis `aws-iot-device-sdk-js-v2/samples/node/pub_sub`, das das SDK erstellt hat, und installieren Sie die Beispiel-App mithilfe dieser Befehle.

   ```
   cd ~/aws-iot-device-sdk-js-v2/samples/node/pub_sub
   npm install
   ```

1. Rufen Sie in Ihrem **Amazon EC2 Instance Connect-Fenster** mit diesem Befehl AWS IoT von *your-iot-endpoint* ab.

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

1. Fügen Sie in Ihrem **Amazon EC2 Instance Connect-Fenster** *your-iot-endpoint* wie angegeben den Befehl ein und führen Sie ihn aus.

   ```
   node dist/index.js --topic topic_1 --ca_file ~/certs/Amazon-root-CA-1.pem --cert ~/certs/device.pem.crt --key ~/certs/private.pem.key --endpoint your-iot-endpoint
   ```

Die Beispiel-App:

1. Stellt eine Verbindung AWS IoT Core zu Ihrem Konto her.

1. Das Nachrichtenthema **topic\$11** abonniert und die Nachrichten anzeigt, die es zu diesem Thema erhält.

1. 10 Nachrichten zum Thema **topic\$11** veröffentlicht.

1. Ihre Ausgabe sieht ähnlich aus wie:

   ```
   Publish received. topic:"topic_1" dup:false qos:1 retain:false
   {"message":"Hello world!","sequence":1}
   Publish received. topic:"topic_1" dup:false qos:1 retain:false
   {"message":"Hello world!","sequence":2}
   Publish received. topic:"topic_1" dup:false qos:1 retain:false
   {"message":"Hello world!","sequence":3}
   Publish received. topic:"topic_1" dup:false qos:1 retain:false
   {"message":"Hello world!","sequence":4}
   Publish received. topic:"topic_1" dup:false qos:1 retain:false
   {"message":"Hello world!","sequence":5}
   Publish received. topic:"topic_1" dup:false qos:1 retain:false
   {"message":"Hello world!","sequence":6}
   Publish received. topic:"topic_1" dup:false qos:1 retain:false
   {"message":"Hello world!","sequence":7}
   Publish received. topic:"topic_1" dup:false qos:1 retain:false
   {"message":"Hello world!","sequence":8}
   Publish received. topic:"topic_1" dup:false qos:1 retain:false
   {"message":"Hello world!","sequence":9}
   Publish received. topic:"topic_1" dup:false qos:1 retain:false
   {"message":"Hello world!","sequence":10}
   ```

Wenn Probleme bei der Ausführung der Beispiel-App auftreten, überprüfen Sie [Beheben Sie Probleme mit der Beispielanwendung](gs-device-troubleshoot.md).

Sie können den Parameter `--verbosity debug` auch zur Befehlszeile hinzufügen, sodass die Beispiel-App detaillierte Meldungen darüber anzeigt, was sie tut. Diese Informationen bieten Ihnen möglicherweise die Hilfe, die Sie zur Behebung des Problems benötigen.

## Nachrichten aus der Beispiel-App in der AWS IoT Konsole anzeigen
<a name="ec2-view-msg"></a>

Mithilfe des **MQTT-Testclients** in der **AWS IoT -Konsole** können Sie die Nachrichten der Beispiel-App sehen, während sie den Message Broker durchlaufen.

**Um die von der Beispiel-App veröffentlichten MQTT-Nachrichten anzuzeigen**

1. Sehen Sie sich [MQTT-Nachrichten mit dem AWS IoT MQTT-Client anzeigen](view-mqtt-messages.md) an. Auf diese Weise lernen Sie, wie Sie den **MQTT-Testclient** in der **AWS IoT -Konsole** verwenden, um MQTT-Nachrichten anzuzeigen, während sie den Message Broker passieren.

1. Öffnen Sie den **MQTT-Testclient** in der **AWS IoT -Konsole**.

1. Unter **Thema abonnieren**, Thema abonnieren, **topic\$11**.

1. Führen Sie in Ihrem **Amazon EC2 Instance Connect**-Fenster die Beispiel-App erneut aus und sehen Sie sich die Nachrichten im **MQTT-Testclient** in der **AWS IoT -Konsole an**.

   ```
   cd ~/aws-iot-device-sdk-js-v2/samples/node/pub_sub
   node dist/index.js --topic topic_1 --ca_file ~/certs/Amazon-root-CA-1.pem --cert ~/certs/device.pem.crt --key ~/certs/private.pem.key --endpoint your-iot-endpoint
   ```

Weitere Informationen zu MQTT und zur AWS IoT Core Unterstützung des Protokolls finden Sie unter [MQTT](https://docs.aws.amazon.com//iot/latest/developerguide/mqtt.html).

# Verwenden Sie Ihren Windows- oder Linux-PC oder Mac als Gerät AWS IoT
<a name="using-laptop-as-device"></a>

In diesem Tutorial konfigurieren Sie einen PC für die Verwendung mit AWS IoT. Diese Anweisungen unterstützen Windows, Linux PCs und Macs. Um dies zu erreichen, müssen Sie einige Software auf Ihrem Computer installieren. Wenn Sie keine Software auf Ihrem Computer installieren möchten, können Sie mit [Erstellen Sie ein virtuelles Gerät mit Amazon EC2](creating-a-virtual-thing.md) versuchen, die gesamte Software auf einer virtuellen Maschine zu installieren.

**Topics**
+ [Einrichten Ihres PCs](#gs-pc-prereqs)
+ [Installieren Sie Git, Python und das AWS IoT Geräte-SDK für Python](#gs-pc-sdk-node)
+ [Konfigurieren Sie die Richtlinie und führen Sie die Beispielanwendung aus](#gs-pc-python-app-run)
+ [Nachrichten aus der Beispiel-App in der AWS IoT Konsole anzeigen](#gs-pc-view-msg)
+ [Führen Sie das Beispiel „Shared Subscription“ in Python aus](#gs-pc-shared-subscription-example)

## Einrichten Ihres PCs
<a name="gs-pc-prereqs"></a>

Um dieses Tutorial abzuschließen, benötigen Sie einen Windows- oder Linux-PC oder einen Mac mit Internetverbindung.

Bevor Sie mit dem nächsten Schritt fortfahren, stellen Sie sicher, dass Sie ein Befehlszeilenfenster auf Ihrem Computer öffnen können. **cmd.exe** auf einem Windows-PC verwenden. Verwenden Sie auf einem Linux-PC oder Mac **Terminal**.

## Installieren Sie Git, Python und das AWS IoT Geräte-SDK für Python
<a name="gs-pc-sdk-node"></a>

In diesem Abschnitt installieren Sie Python und das AWS IoT Device SDK für Python auf Ihrem Computer. 

### Installieren Sie die neueste Version von Git und Python
<a name="gs-pc-node-runtime"></a>

In diesem Verfahren wird erklärt, wie Sie die neueste Version von Git und Python auf Ihrem PC installieren.

**Um Git und Python herunterzuladen und auf Ihrem Computer zu installieren**

1. Überprüfen Sie, ob Git auf Ihrem Computer installiert ist. Geben Sie an der Befehlszeile den folgenden Befehl ein.

   ```
   git --version
   ```

   Wird mit dem Befehl die Git-Version angezeigt, ist Git installiert und Sie können mit dem nächsten Schritt fortfahren.

   Wenn der Befehl einen Fehler anzeigt, öffnen Sie [https://git-scm.com/download](https://git-scm.com/download) und installieren Sie Git für Ihren Computer.

1. Überprüfen Sie, ob Python bereits installiert ist. Geben Sie in der Kommandozeile den Befehl ein.

   ```
   python -V
   ```
**Anmerkung**  
Wenn dieser Befehl einen Fehler: `Python was not found` ausgibt, liegt das möglicherweise daran, dass Ihr Betriebssystem die ausführbare Python v3.x-Datei als `Python3` aufruft. Ersetzen Sie in diesem Fall alle Instanzen von `python` durch `python3` und fahren Sie mit dem Rest dieses Tutorials fort.

   Wenn der Befehl die Python-Version anzeigt, ist Python bereits installiert. Dieses Skript erfordert Python 3.7 oder höher.

1. Wenn Python installiert ist, können Sie die restlichen Schritte in diesem Abschnitt überspringen. Wenn nicht, fahren Sie fort.

1. Öffnen Sie [https://www.python.org/downloads/](https://www.python.org/downloads/) und laden Sie das Installationsprogramm für Ihren Computer herunter.

1. Wenn der Download nicht automatisch mit der Installation gestartet wurde, führen Sie das heruntergeladene Programm aus, um Python zu installieren.

1. Überprüfen Sie die Installation von Python.

   ```
   python -V
   ```

   Vergewissern Sie sich, dass der Befehl die Python-Version anzeigt. Wenn die Python-Version nicht angezeigt wird, versuchen Sie erneut, Python herunterzuladen und zu installieren.

### Installieren Sie das AWS IoT Geräte-SDK für Python
<a name="gs-pc-python-intall-sdk"></a>

**So installieren Sie das AWS IoT Device SDK für Python auf Ihrem Computer**

1. Installieren Sie Version 2 des AWS IoT Geräte-SDK für Python.

   ```
   python3 -m pip install awsiotsdk
   ```

1. Klonen Sie das AWS IoT Device SDK for Python-Repository in das Verzeichnis aws-iot-device-sdk -python-v2 Ihres Home-Verzeichnisses. Dieses Verfahren bezieht sich auf das Basisverzeichnis für die Dateien, unter denen Sie die Installation durchführen. *home*

   Der tatsächliche Speicherort des *home* Verzeichnisses hängt von Ihrem Betriebssystem ab.

------
#### [ Linux/macOS ]

   In macOS und Linux ist das *home* Verzeichnis`~`.

   ```
   cd ~ 
   git clone https://github.com/aws/aws-iot-device-sdk-python-v2.git
   ```

------
#### [ Windows ]

   In Windows können Sie den *home* Verzeichnispfad finden, indem Sie diesen Befehl im `cmd` Fenster ausführen.

   ```
   echo %USERPROFILE%
   cd %USERPROFILE%
   git clone https://github.com/aws/aws-iot-device-sdk-python-v2.git
   ```

------
**Anmerkung**  
Wenn Sie Windows PowerShell anstelle von verwenden**cmd.exe**, verwenden Sie den folgenden Befehl.  

   ```
   echo $home
   ```

Weitere Informationen finden Sie im [ GitHub Repository AWS IoT Device SDK for Python](https://github.com/aws/aws-iot-device-sdk-python-v2).

### Vorbereiten der Ausführung von Beispielanwendungen
<a name="gs-pc-python-config-app"></a>

**Vorbereiten der Ausführung von Beispielanwendungen**
+ Erstellen des `certs` Verzeichnisses. Kopieren Sie die Dateien für den privaten Schlüssel, das Gerätezertifikat und das Stammzertifikat der Zertifizierungsstelle, die Sie bei der Erstellung und Registrierung des Objekts gespeichert haben, in [AWS IoT Ressourcen erstellen](create-iot-resources.md) des `certs` Verzeichnisses. Die Dateinamen der einzelnen Dateien im Zielverzeichnis sollten mit denen in der Tabelle übereinstimmen.

   Bei den Befehlen im nächsten Abschnitt wird davon ausgegangen, dass Ihr Schlüssel und Ihre Zertifikatdateien wie in dieser Tabelle gezeigt auf dem Gerät gespeichert sind.

------
#### [ Linux/macOS ]

  Führen Sie diesen Befehl aus, um das Unterverzeichnis `certs` zu erstellen, das Sie beim Ausführen der Beispielanwendungen verwenden werden.

  ```
  mkdir ~/certs
  ```

  Kopieren Sie die Dateien in das neue Unterverzeichnis in die Zieldateipfade, die in der folgenden Tabelle aufgeführt sind.  
**Namen der Zertifikatsdateien**    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/using-laptop-as-device.html)

  Führen Sie diesen Befehl aus, um die Dateien im Verzeichnis `certs` aufzulisten und sie mit den in der Tabelle aufgeführten Dateien zu vergleichen.

  ```
  ls -l ~/certs
  ```

------
#### [ Windows ]

  Führen Sie diesen Befehl aus, um das Unterverzeichnis `certs` zu erstellen, das Sie beim Ausführen der Beispielanwendungen verwenden werden.

  ```
  mkdir %USERPROFILE%\certs
  ```

  Kopieren Sie die Dateien in das neue Unterverzeichnis in die Zieldateipfade, die in der folgenden Tabelle aufgeführt sind.  
**Namen der Zertifikatsdateien**    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/using-laptop-as-device.html)

  Führen Sie diesen Befehl aus, um die Dateien im Verzeichnis `certs` aufzulisten und sie mit den in der Tabelle aufgeführten Dateien zu vergleichen.

  ```
  dir %USERPROFILE%\certs
  ```

------

## Konfigurieren Sie die Richtlinie und führen Sie die Beispielanwendung aus
<a name="gs-pc-python-app-run"></a>

In diesem Abschnitt richten Sie Ihre Richtlinie ein und führen das `pubsub.py` Beispielskript aus, das sich im `aws-iot-device-sdk-python-v2/samples` Verzeichnis von befindet AWS IoT-Geräte-SDK for Python. Dieses Skript zeigt, wie Ihr Gerät die MQTT-Bibliothek verwendet, um MQTT-Nachrichten zu veröffentlichen und zu abonnieren.

Die `pubsub.py` Beispiel-App abonniert ein Thema, `test/topic`, veröffentlicht 10 Nachrichten zu diesem Thema und zeigt die Nachrichten so an, wie sie vom Message Broker empfangen wurden.

Zur Ausführung der Beispielanwendung `pubsub.py` benötigen Sie die folgenden Informationen:


**Anwendungsparameterwerte**  

|  Parameter  |  Wo der Wert gefunden werden kann  | 
| --- | --- | 
| your-iot-endpoint |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/using-laptop-as-device.html)  | 

Der *your-iot-endpoint* Wert hat das Format:`endpoint_id-ats.iot.region.amazonaws.com`, zum Beispiel`a3qj468EXAMPLE-ats.iot.us-west-2.amazonaws.com`.

Bevor Sie das Skript ausführen, stellen Sie sicher, dass die Richtlinie für Ihr Objekt die Berechtigungen für das Beispielskript zum Herstellen einer Verbindung, zum Abonnieren, Veröffentlichen und Empfangen vorsieht. 

**Um das Richtliniendokument für eine Objektressource zu finden und zu überprüfen**

1. Suchen Sie in der [AWS IoT -Konsole](https://console.aws.amazon.com//iot/home#/thinghub) in der Liste **Objekte** nach der Objektressource, die Ihrem Gerät entspricht.

1. Wählen Sie den Link **Name** der Objektressource, die für Ihr Gerät steht, um die Seite mit den **Objektdetails** zu öffnen.

1. Wählen Sie auf der Seite mit den **Objektdetails** auf der Registerkarte **Zertifikate** das Zertifikat aus, das an die Objektressource angehängt ist. Die Liste sollte nur ein Zertifikat enthalten. Wenn es mehrere gibt, wählen Sie das Zertifikat aus, dessen Dateien auf Ihrem Gerät installiert sind und mit dem eine Verbindung zu AWS IoT Core hergestellt werden soll.

   Wählen Sie auf der Seite mit den **Zertifikatsdetails** auf der Registerkarte **Richtlinien** die Richtlinie aus, die mit dem Zertifikat verknüpft ist. Es sollte nur eine geben. Wenn es mehrere gibt, wiederholen Sie den nächsten Schritt für alle, um sicherzustellen, dass mindestens eine Richtlinie den erforderlichen Zugriff gewährt.

1. Suchen Sie auf der Seite mit der **Richtlinienübersicht** den JSON-Editor und wählen Sie **Richtliniendokument bearbeiten** aus, um das Richtliniendokument nach Bedarf zu überprüfen und zu bearbeiten.

1. Das Richtlinien-JSON wird im folgenden Beispiel angezeigt. Ersetzen Sie das `"Resource"` Element `region:account` durch Ihr AWS-Region und AWS-Konto in jedem der `Resource` Werte.  
****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "iot:Publish",
                   "iot:Receive"
               ],
               "Resource": [
               "arn:aws:iot:us-east-1:123456789012:topic/test/topic"
               ]
           },
           {
               "Effect": "Allow",
               "Action": [
                   "iot:Subscribe"
               ],
               "Resource": [
               "arn:aws:iot:us-east-1:123456789012:topicfilter/test/topic"
               ]
           },
           {
               "Effect": "Allow",
               "Action": [
                   "iot:Connect"
               ],
               "Resource": [
               "arn:aws:iot:us-east-1:123456789012:client/test-*"
               ]
           }
       ]
   }
   ```

------
#### [ Linux/macOS ]

**Um das Beispielskript unter Linux/macOS auszuführen**

1. Navigieren Sie in Ihrem Befehlszeilenfenster zu dem `~/aws-iot-device-sdk-python-v2/samples/node/pub_sub`-Verzeichnis, das das SDK mithilfe dieser Befehle erstellt hat.

   ```
   cd ~/aws-iot-device-sdk-python-v2/samples
   ```

1. Ersetzen Sie in Ihrem Befehlszeilenfenster *your-iot-endpoint* wie angegeben und führen Sie diesen Befehl aus.

   ```
   python3 pubsub.py --endpoint your-iot-endpoint --ca_file ~/certs/Amazon-root-CA-1.pem --cert ~/certs/device.pem.crt --key ~/certs/private.pem.key
   ```

------
#### [ Windows ]

**Um die Beispiel-App auf einem Windows-PC auszuführen**

1. Navigieren Sie in Ihrem Befehlszeilenfenster zu dem `%USERPROFILE%\aws-iot-device-sdk-python-v2\samples`-Verzeichnis, das das SDK erstellt hat, und installieren Sie die Beispiel-App mithilfe dieser Befehle.

   ```
   cd %USERPROFILE%\aws-iot-device-sdk-python-v2\samples
   ```

1. Ersetzen Sie in Ihrem Befehlszeilenfenster *your-iot-endpoint* wie angegeben und führen Sie diesen Befehl aus.

   ```
   python3 pubsub.py --endpoint your-iot-endpoint --ca_file %USERPROFILE%\certs\Amazon-root-CA-1.pem --cert %USERPROFILE%\certs\device.pem.crt --key %USERPROFILE%\certs\private.pem.key
   ```

------

Das Beispielskript:

1. Stellt eine Verbindung mit dem AWS IoT Core für Ihr Konto her.

1. Abonniert das Nachrichtenthema **test/topic** und zeigt die Nachrichten an, die es zu diesem Thema erhält.

1. Veröffentlicht 10 Nachrichten zum Thema **test/topic**.

1. Die Ausgabe sieht ähnlich aus wie:

```
Connected!
Subscribing to topic 'test/topic'...
Subscribed with QoS.AT_LEAST_ONCE
Sending 10 message(s)
Publishing message to topic 'test/topic': Hello World! [1]
Received message from topic 'test/topic': b'"Hello World! [1]"'
Publishing message to topic 'test/topic': Hello World! [2]
Received message from topic 'test/topic': b'"Hello World! [2]"'
Publishing message to topic 'test/topic': Hello World! [3]
Received message from topic 'test/topic': b'"Hello World! [3]"'
Publishing message to topic 'test/topic': Hello World! [4]
Received message from topic 'test/topic': b'"Hello World! [4]"'
Publishing message to topic 'test/topic': Hello World! [5]
Received message from topic 'test/topic': b'"Hello World! [5]"'
Publishing message to topic 'test/topic': Hello World! [6]
Received message from topic 'test/topic': b'"Hello World! [6]"'
Publishing message to topic 'test/topic': Hello World! [7]
Received message from topic 'test/topic': b'"Hello World! [7]"'
Publishing message to topic 'test/topic': Hello World! [8]
Received message from topic 'test/topic': b'"Hello World! [8]"'
Publishing message to topic 'test/topic': Hello World! [9]
Received message from topic 'test/topic': b'"Hello World! [9]"'
Publishing message to topic 'test/topic': Hello World! [10]
Received message from topic 'test/topic': b'"Hello World! [10]"'
10 message(s) received.
Disconnecting...
Disconnected!
```

Wenn Probleme bei der Ausführung der Beispiel-App auftreten, überprüfen Sie [Beheben Sie Probleme mit der Beispielanwendung](gs-device-troubleshoot.md).

Sie können den Parameter `--verbosity Debug` auch zur Befehlszeile hinzufügen, sodass die Beispiel-App detaillierte Meldungen darüber anzeigt, was sie tut. Diese Informationen können Ihnen bei der Behebung des Problems helfen.

## Nachrichten aus der Beispiel-App in der AWS IoT Konsole anzeigen
<a name="gs-pc-view-msg"></a>

Mithilfe des **MQTT-Testclients** in der **AWS IoT -Konsole** können Sie die Nachrichten der Beispiel-App sehen, während sie den Message Broker durchlaufen.

**Um die von der Beispiel-App veröffentlichten MQTT-Nachrichten anzuzeigen**

1. Sehen Sie sich [MQTT-Nachrichten mit dem AWS IoT MQTT-Client anzeigen](view-mqtt-messages.md) an. Auf diese Weise lernen Sie, wie Sie den **MQTT-Testclient** in der **AWS IoT -Konsole** verwenden, um MQTT-Nachrichten anzuzeigen, während sie den Message Broker passieren.

1. Öffnen Sie den **MQTT-Testclient** in der **AWS IoT -Konsole**.

1. Abonnieren Sie unter **Thema abonnieren** das Thema **Test/Thema.**

1. Führen Sie in Ihrem Befehlszeilenfenster die Beispiel-App erneut aus und sehen Sie sich die Nachrichten im **MQTT-Client** in der **AWS IoT -Konsole** an.

------
#### [ Linux/macOS ]

   ```
   cd ~/aws-iot-device-sdk-python-v2/samples
   python3 pubsub.py --topic test/topic --ca_file ~/certs/Amazon-root-CA-1.pem --cert ~/certs/device.pem.crt --key ~/certs/private.pem.key --endpoint your-iot-endpoint
   ```

------
#### [ Windows ]

   ```
   cd %USERPROFILE%\aws-iot-device-sdk-python-v2\samples
   python3 pubsub.py --topic test/topic --ca_file %USERPROFILE%\certs\Amazon-root-CA-1.pem --cert %USERPROFILE%\certs\device.pem.crt --key %USERPROFILE%\certs\private.pem.key --endpoint your-iot-endpoint
   ```

------

Weitere Informationen zu MQTT und zur AWS IoT Core Unterstützung des Protokolls finden Sie unter [MQTT](https://docs.aws.amazon.com//iot/latest/developerguide/mqtt.html).

## Führen Sie das Beispiel „Shared Subscription“ in Python aus
<a name="gs-pc-shared-subscription-example"></a>

AWS IoT Core unterstützt [Shared Subscriptions](mqtt.md#mqtt5-shared-subscription) sowohl für MQTT 3 als auch für MQTT 5. Gemeinsame Abonnements ermöglichen es mehreren Clients, ein Abonnement für ein Thema gemeinsam zu nutzen, und nur ein Client erhält Nachrichten, die zu diesem Thema veröffentlicht wurden, nach dem Zufallsprinzip. Um gemeinsame Abonnements zu verwenden, abonnieren Clients den [Themenfilter](https://docs.aws.amazon.com//iot/latest/developerguide/topics.html#topicfilters) eines gemeinsamen Abonnements: `$share/{ShareName}/{TopicFilter}`. 

**So konfigurieren Sie die Richtlinie und führen das Beispiel für ein geteiltes Abonnement aus**

1. Um das Beispiel Gemeinsame Abonnements auszuführen, müssen Sie die Richtlinie Ihres Objekts so einrichten, wie es in [MQTT 5 Gemeinsame Abonnements](https://github.com/aws/aws-iot-device-sdk-python-v2/blob/main/samples/mqtt5_shared_subscription.md#mqtt5-shared-subscription) dokumentiert ist. 

1. Führen Sie die folgenden Befehle aus, um das Gemeinsame Abonnements-Beispiel auszuführen.

------
#### [ Linux/macOS ]

**Um das Beispielskript unter Linux/macOS auszuführen**

   1. Navigieren Sie in Ihrem Befehlszeilenfenster zu dem `~/aws-iot-device-sdk-python-v2/samples`-Verzeichnis, das das SDK mithilfe dieser Befehle erstellt hat.

      ```
      cd ~/aws-iot-device-sdk-python-v2/samples
      ```

   1. Ersetzen Sie in Ihrem Befehlszeilenfenster *your-iot-endpoint* wie angegeben und führen Sie diesen Befehl aus.

      ```
      python3 mqtt5_shared_subscription.py --endpoint your-iot-endpoint --ca_file ~/certs/Amazon-root-CA-1.pem --cert ~/certs/device.pem.crt --key ~/certs/private.pem.key --group_identifier consumer
      ```

------
#### [ Windows ]

**Um die Beispiel-App auf einem Windows-PC auszuführen**

   1. Navigieren Sie in Ihrem Befehlszeilenfenster zu dem `%USERPROFILE%\aws-iot-device-sdk-python-v2\samples`-Verzeichnis, das das SDK erstellt hat, und installieren Sie die Beispiel-App mithilfe dieser Befehle.

      ```
      cd %USERPROFILE%\aws-iot-device-sdk-python-v2\samples
      ```

   1. Ersetzen Sie in Ihrem Befehlszeilenfenster *your-iot-endpoint* wie angegeben und führen Sie diesen Befehl aus.

      ```
      python3 mqtt5_shared_subscription.py --endpoint your-iot-endpoint --ca_file %USERPROFILE%\certs\Amazon-root-CA-1.pem --cert %USERPROFILE%\certs\device.pem.crt --key %USERPROFILE%\certs\private.pem.key --group_identifier consumer
      ```

------
**Anmerkung**  
Sie können optional eine Gruppen-ID angeben, die Ihren Anforderungen entspricht, wenn Sie das Beispiel ausführen (z. B. `--group_identifier consumer`). Wenn Sie kein angeben, ist `python-sample` der Standardgruppen-Identifier.

1. Die Ausgabe in Ihrer Befehlszeile kann wie folgt aussehen:

   ```
   Publisher]: Lifecycle Connection Success
   [Publisher]: Connected
   Subscriber One]: Lifecycle Connection Success
   [Subscriber One]: Connected
   Subscriber Two]: Lifecycle Connection Success
   [Subscriber Two]: Connected
   [Subscriber One]: Subscribed to topic 'test/topic' in shared subscription group 'consumer'.
   [Subscriber One]: Full subscribed topic is: '$share/consumer/test/topic' with SubAck code: [<SubackReasonCode.GRANTED_QOS_1: 1>]
   [Subscriber Two]: Subscribed to topic 'test/topic' in shared subscription group 'consumer'.
   [Subscriber Two]: Full subscribed topic is: '$share/consumer/test/topic' with SubAck code: [<SubackReasonCode.GRANTED_QOS_1: 1>]
   [Publisher]: Sent publish and got PubAck code: <PubackReasonCode.SUCCESS: 0>
   [Subscriber Two] Received a publish
           Publish received message on topic: test/topic
           Message: b'"Hello World!  [1]"'
   [Publisher]: Sent publish and got PubAck code: <PubackReasonCode.SUCCESS: 0>
   [Subscriber One] Received a publish
           Publish received message on topic: test/topic
           Message: b'"Hello World!  [2]"'
   [Publisher]: Sent publish and got PubAck code: <PubackReasonCode.SUCCESS: 0>
   [Subscriber Two] Received a publish
           Publish received message on topic: test/topic
           Message: b'"Hello World!  [3]"'
   [Publisher]: Sent publish and got PubAck code: <PubackReasonCode.SUCCESS: 0>
   [Subscriber One] Received a publish
           Publish received message on topic: test/topic
           Message: b'"Hello World!  [4]"'
   [Publisher]: Sent publish and got PubAck code: <PubackReasonCode.SUCCESS: 0>
   [Subscriber Two] Received a publish
           Publish received message on topic: test/topic
           Message: b'"Hello World!  [5]"'
   [Publisher]: Sent publish and got PubAck code: <PubackReasonCode.SUCCESS: 0>
   [Subscriber One] Received a publish
           Publish received message on topic: test/topic
           Message: b'"Hello World!  [6]"'
   [Publisher]: Sent publish and got PubAck code: <PubackReasonCode.SUCCESS: 0>
   [Subscriber Two] Received a publish
           Publish received message on topic: test/topic
           Message: b'"Hello World!  [7]"'
   [Publisher]: Sent publish and got PubAck code: <PubackReasonCode.SUCCESS: 0>
   [Subscriber One] Received a publish
           Publish received message on topic: test/topic
           Message: b'"Hello World!  [8]"'
   [Publisher]: Sent publish and got PubAck code: <PubackReasonCode.SUCCESS: 0>
   [Subscriber Two] Received a publish
           Publish received message on topic: test/topic
           Message: b'"Hello World!  [9]"'
   [Publisher]: Sent publish and got PubAck code: <PubackReasonCode.SUCCESS: 0>
   [Subscriber One] Received a publish
           Publish received message on topic: test/topic
           Message: b'"Hello World!  [10]"'
   [Subscriber One]: Unsubscribed to topic 'test/topic' in shared subscription group 'consumer'.
   [Subscriber One]: Full unsubscribed topic is: '$share/consumer/test/topic' with UnsubAck code: [<UnsubackReasonCode.SUCCESS: 0>]
   [Subscriber Two]: Unsubscribed to topic 'test/topic' in shared subscription group 'consumer'.
   [Subscriber Two]: Full unsubscribed topic is: '$share/consumer/test/topic' with UnsubAck code [<UnsubackReasonCode.SUCCESS: 0>]
   Publisher]: Lifecycle Disconnected
   [Publisher]: Lifecycle Stopped
   [Publisher]: Fully stopped
   Subscriber One]: Lifecycle Disconnected
   [Subscriber One]: Lifecycle Stopped
   [Subscriber One]: Fully stopped
   Subscriber Two]: Lifecycle Disconnected
   [Subscriber Two]: Lifecycle Stopped
   [Subscriber Two]: Fully stopped
   Complete!
   ```

1. Öffnen Sie den **MQTT-Testclient** in der **AWS IoT -Konsole**. Abonnieren Sie unter **Thema abonnieren** das Thema des gemeinsamen Abonnements, z. B.: `$share/consumer/test/topic`. Sie können bei der Ausführung des Beispiels eine Gruppen-ID angeben, die Ihren Anforderungen entspricht (z. B. `--group_identifier consumer`). Wenn Sie keine Gruppen-ID angeben, ist der Standardwert `python-sample`. Weitere Informationen finden Sie im [Python-Beispiel für MQTT 5 Shared Subscription](https://github.com/aws/aws-iot-device-sdk-python-v2/blob/main/samples/mqtt5_shared_subscription.md#mqtt5-shared-subscription) und im *AWS IoT Core Developer Guide* unter [Shared Subscriptions](mqtt.md#mqtt5-shared-subscription).

   Führen Sie in Ihrem Befehlszeilenfenster die Beispiel-App erneut aus und beobachten Sie die Verteilung der Nachrichten in Ihrem **MQTT-Testclient** der **AWS IoT -Konsole** und der Befehlszeile.  
![\[Die Ausgabeseite für gemeinsame Abonnements.\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/images/shared-subscription-output.png)

# Verbinden eines Raspberry Pi oder eines anderes Gerätes
<a name="connecting-to-existing-device"></a>

In diesem Abschnitt konfigurieren wir einen Raspberry Pi für die Verwendung mit AWS IoT. Wenn Sie ein anderes Gerät haben, das Sie anschließen möchten, finden Sie in der Anleitung für den Raspberry Pi Hinweise, die Ihnen helfen können, diese Anweisungen an Ihr Gerät anzupassen.

Dies dauert normalerweise etwa 20 Minuten, kann aber länger dauern, wenn Sie viele Systemsoftware-Upgrades installieren müssen.

**Topics**
+ [Einrichten Ihres Geräts](#gs-device-prereqs)
+ [Installieren Sie die erforderlichen Tools und Bibliotheken für das AWS IoT Geräte-SDK](#gs-device-sdk-tools)
+ [Installieren Sie AWS IoT das Geräte-SDK](#gs-device-install-sdk)
+ [Installieren und Ausführen der Beispiel-App](#gs-device-node-app-run)
+ [Nachrichten aus der Beispiel-App in der AWS IoT Konsole anzeigen](#gs-device-view-msg)

**Wichtig**  
Die Anpassung dieser Anweisungen an andere Geräte und Betriebssysteme kann schwierig sein. Sie müssen Ihr Gerät gut genug verstehen, um diese Anweisungen interpretieren und auf Ihr Gerät anwenden zu können.  
Wenn Sie bei der Konfiguration Ihres Geräts für auf Schwierigkeiten stoßen AWS IoT, können Sie alternativ eine der anderen Geräteoptionen ausprobieren, z. B. [Erstellen Sie ein virtuelles Gerät mit Amazon EC2](creating-a-virtual-thing.md) oder[Verwenden Sie Ihren Windows- oder Linux-PC oder Mac als Gerät AWS IoT](using-laptop-as-device.md).

## Einrichten Ihres Geräts
<a name="gs-device-prereqs"></a>

Ziel dieses Schritts ist es, alles zu sammeln, was Sie benötigen, um Ihr Gerät so zu konfigurieren, dass es das Betriebssystem (OS) starten, eine Verbindung zum Internet herstellen und Ihnen die Interaktion mit dem Gerät über eine Befehlszeilenschnittstelle ermöglichen kann.

Zum Durcharbeiten dieses Tutorials ist Folgendes erforderlich:
+ Ein AWS-Konto. Wenn dies nicht der Fall ist, führen Sie die unter [Einrichten AWS-Konto](setting-up.md) beschriebenen Schritte aus, bevor Sie fortfahren.
+ Ein [Raspberry Pi 3 Modell B](https://www.raspberrypi.com/products/) oder ein neueres Modell. Dies funktioniert möglicherweise auf früheren Versionen des Raspberry Pi, diese wurden jedoch nicht getestet.
+ [Raspberry Pi OS (32-Bit)](https://www.raspberrypi.com/software/operating-systems/) oder höher. Wir empfehlen die neueste Version des Raspberry Pi OS zu verwenden. Frühere Versionen des Betriebssystems funktionieren möglicherweise, wurden jedoch nicht getestet.

  Um dieses Beispiel auszuführen, müssen Sie den Desktop nicht mit der grafischen Benutzeroberfläche (GUI) installieren. Wenn Sie jedoch mit dem Raspberry Pi noch nicht vertraut sind und Ihre Raspberry Pi-Hardware ihn unterstützt, ist es möglicherweise einfacher, den Desktop mit der GUI zu verwenden.
+ Ein Ethernet oder eine WiFi Verbindung.
+ Tastatur, Maus, Monitor, Kabel, Netzteile und andere Hardware, die für Ihr Gerät erforderlich ist.

**Wichtig**  
Bevor Sie mit dem nächsten Schritt fortfahren, muss das Betriebssystem Ihres Geräts installiert, konfiguriert und ausgeführt werden. Das Gerät muss mit dem Internet verbunden sein und Sie müssen über die Befehlszeilenschnittstelle auf das Gerät zugreifen können. Der Befehlszeilenzugriff kann über eine direkt verbundene Tastatur, Maus und einen Monitor oder über eine SSH-Terminal-Fernschnittstelle erfolgen.

 Wenn Sie auf Ihrem Raspberry Pi ein Betriebssystem mit grafischer Benutzeroberfläche (GUI) ausführen, öffnen Sie ein Terminalfenster auf dem Gerät und führen Sie in diesem Fenster die folgenden Anweisungen aus. Andernfalls, wenn Sie über ein Remote-Terminal wie PuTTY eine Verbindung zu Ihrem Gerät herstellen, öffnen Sie ein Remote-Terminal für Ihr Gerät und verwenden Sie dieses.

## Installieren Sie die erforderlichen Tools und Bibliotheken für das AWS IoT Geräte-SDK
<a name="gs-device-sdk-tools"></a>

Bevor Sie das AWS IoT Geräte-SDK und den Beispielcode installieren, stellen Sie sicher, dass Ihr System auf dem neuesten Stand ist und über die erforderlichen Tools und Bibliotheken für die Installation von verfügt SDKs.

1. 

**Aktualisieren Sie das Betriebssystem und installieren Sie die erforderlichen Bibliotheken**  
Bevor Sie ein AWS IoT Geräte-SDK installieren, führen Sie diese Befehle in einem Terminalfenster auf Ihrem Gerät aus, um das Betriebssystem zu aktualisieren und die erforderlichen Bibliotheken zu installieren.

   ```
   sudo apt-get update
   ```

   ```
   sudo apt-get upgrade
   ```

   ```
   sudo apt-get install cmake
   ```

   ```
   sudo apt-get install libssl-dev
   ```

1. 

**Installieren Sie Git**  
Wenn auf dem Betriebssystem Ihres Geräts Git nicht installiert ist, müssen Sie es installieren, um das AWS IoT Geräte-SDK für zu installieren JavaScript. 

   1. Testen Sie, ob Git bereits installiert ist, indem Sie diesen Befehl ausführen.

      ```
      git --version
      ```

   1. Wenn der vorherige Befehl die Git-Version anzeigt, ist Git bereits installiert und Sie können mit Schritt 3 fortfahren.

   1. Wenn bei der Ausführung des Befehls **git** ein Fehler angezeigt wird, installieren Sie Git, indem Sie diesen Befehl ausführen.

      ```
      sudo apt-get install git
      ```

   1. Testen Sie erneut, ob Git installiert ist, indem Sie diesen Befehl ausführen.

      ```
      git --version
      ```

   1. Wenn Git installiert ist, fahren Sie mit dem nächsten Abschnitt fort. Wenn nicht, beheben Sie den Fehler und korrigieren Sie ihn, bevor Sie fortfahren. Sie benötigen Git, um das AWS IoT Device SDK für zu installieren JavaScript.

## Installieren Sie AWS IoT das Geräte-SDK
<a name="gs-device-install-sdk"></a>

Installieren Sie das AWS IoT Geräte-SDK.

------
#### [ Python ]

In diesem Abschnitt installieren Sie Python, seine Entwicklungstools und das AWS IoT Device SDK für Python auf Ihrem Gerät. Diese Anweisungen gelten für einen Raspberry Pi, auf dem das neueste Raspberry Pi-Betriebssystem ausgeführt wird. Wenn Sie mit einem anderen Gerät arbeiten oder ein anderes Betriebssystem verwenden, müssen Sie diese Anweisungen für Ihr Gerät anpassen.

1. 

**Installieren Sie Python und seine Entwicklungstools**  
Für das AWS IoT Device SDK für Python muss Python v3.5 oder höher auf Ihrem Raspberry Pi installiert sein.

   Führen Sie diese Befehle in einem Terminalfenster auf Ihrem Gerät aus.

   1. Führen Sie diesen Befehl aus, um die auf Ihrem Gerät installierte Python-Version zu bestimmen.

      ```
      python3 --version
      ```

      Wenn Python installiert ist, wird seine Version angezeigt.

   1. Wenn die angezeigte Version `Python 3.5` oder höher ist, können Sie mit Schritt 2 fortfahren.

   1. Wenn die angezeigte Version niedriger als `Python 3.5` ist, können Sie die richtige Version installieren, indem Sie diesen Befehl ausführen.

      ```
      sudo apt install python3
      ```

   1. Führen Sie diesen Befehl aus, um zu bestätigen, dass die richtige Version von Python jetzt installiert ist.

      ```
      python3 --version
      ```

1. 

**Testen Sie auf pip3**  
Führen Sie diese Befehle in einem Terminalfenster Ihres Geräts aus.

   1. Führen Sie diesen Befehl aus, um zu sehen, ob **pip3** installiert ist.

      ```
      pip3 --version
      ```

   1. Wenn der Befehl eine Versionsnummer zurückgibt, ist **pip3** installiert und Sie können mit Schritt 3 fortfahren.

   1. Wenn der vorherige Befehl einen Fehler zurückgibt, führen Sie diesen Befehl zur Installation von **pip3** aus.

      ```
      sudo apt install python3-pip
      ```

   1. Führen Sie diesen Befehl aus, um zu sehen, ob **pip3** installiert ist.

      ```
      pip3 --version
      ```

1. 

**Installieren Sie das aktuelle AWS IoT Geräte-SDK für Python**  
Installieren Sie das AWS IoT Device SDK für Python und laden Sie die Beispiel-Apps auf Ihr Gerät herunter.

   Führen Sie diese Befehle auf Ihrem Gerät aus.

   ```
   cd ~
   python3 -m pip install awsiotsdk
   ```

   ```
   git clone https://github.com/aws/aws-iot-device-sdk-python-v2.git
   ```

------
#### [ JavaScript ]

In diesem Abschnitt installieren Sie Node.js, den npm-Paketmanager und das AWS IoT Geräte-SDK für JavaScript auf Ihrem Gerät. Diese Anweisungen gelten für einen Raspberry Pi, auf dem das Raspberry Pi OS ausgeführt wird. Wenn Sie mit einem anderen Gerät arbeiten oder ein anderes Betriebssystem verwenden, müssen Sie diese Anweisungen für Ihr Gerät anpassen.

1. 

**Installieren der neuesten Version von Node.js**  
Für das AWS IoT Geräte-SDK für JavaScript müssen Node.js und der npm-Paketmanager auf Ihrem Raspberry Pi installiert sein.

   1. Laden Sie die aktuelle Version des Knoten-Repositorys herunter, indem Sie einen der folgenden Befehle eingeben.

      ```
      cd ~
      curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash -
      ```

   1. Installieren Sie Node und npm.

      ```
      sudo apt-get install -y nodejs
      ```

   1. Überprüfen Sie die Installation von Node.

      ```
      node -v
      ```

      Vergewissern Sie sich, dass der Befehl die Node-Version anzeigt. Dieses Tutorial erfordert Node v10.0 oder neuer. Wenn die Node-Version nicht angezeigt wird, versuchen Sie erneut, das Node-Repository herunterzuladen.

   1. Überprüfen Sie die Installation von npm.

      ```
      npm -v
      ```

      Vergewissern Sie sich, dass der Befehl die npm-Version anzeigt. Wenn die npm-Version nicht angezeigt wird, versuchen Sie erneut, Node und npm zu installieren.

   1. Starten Sie das Gerät neu.

      ```
      sudo shutdown -r 0
      ```

      Fahren Sie nach dem Neustart des Geräts fort.

1. 

**Installieren Sie das AWS IoT Geräte-SDK für JavaScript**  
Installieren Sie das AWS IoT Geräte-SDK für JavaScript auf Ihrem Raspberry Pi.

   1. Klonen Sie das AWS IoT Geräte-SDK für das JavaScript Repository in das `aws-iot-device-sdk-js-v2` Verzeichnis Ihres *home* Verzeichnisses. Auf dem Raspberry Pi ist das *home* Verzeichnis`~/`, das in den folgenden Befehlen als *home* Verzeichnis verwendet wird. Wenn Ihr Gerät einen anderen Pfad für das *home* Verzeichnis verwendet, müssen Sie es in `~/` den folgenden Befehlen durch den richtigen Pfad für Ihr Gerät ersetzen.

      Diese Befehle erstellen das Verzeichnis `~/aws-iot-device-sdk-js-v2` und kopieren den SDK-Code hinein.

      ```
      cd ~
      git clone https://github.com/aws/aws-iot-device-sdk-js-v2.git
      ```

   1. Wechseln Sie zu dem Verzeichnis `aws-iot-device-sdk-js-v2`, das Sie im vorherigen Schritt erstellt haben, und führen Sie `npm install` aus, um das SDK zu installieren. Der Befehl `npm install` ruft den Build der Bibliothek `aws-crt` auf, der einige Minuten in Anspruch nehmen kann.

      ```
      cd ~/aws-iot-device-sdk-js-v2
      npm install
      ```

------

## Installieren und Ausführen der Beispiel-App
<a name="gs-device-node-app-run"></a>

In diesem Abschnitt installieren und führen Sie die `pubsub` Beispiel-App aus dem AWS IoT Geräte-SDK aus. Diese App zeigt, wie Ihr Gerät die MQTT-Bibliothek verwendet, um MQTT-Nachrichten zu veröffentlichen und zu abonnieren. Die Beispiel-App abonniert ein Thema, `topic_1`, veröffentlicht 10 Nachrichten zu diesem Thema und zeigt die Nachrichten so an, wie sie vom Message Broker empfangen wurden.

**Installieren Sie die Zertifikatdateien**  
Für die Beispiel-App müssen die Zertifikatsdateien, die das Gerät authentifizieren, auf dem Gerät installiert sein.

**Um die Gerätezertifikatsdateien für die Beispiel-App zu installieren**

1. Erstellen Sie ein `certs` Unterverzeichnis in Ihrem *home* Verzeichnis, indem Sie diese Befehle ausführen.

   ```
   cd ~
   mkdir certs
   ```

1. Kopieren Sie das Zertifikat, den privaten Schlüssel und das Stammzertifikat, das Sie in `~/certs` erstellt haben, in das Verzeichnis [AWS IoT Ressourcen erstellen](create-iot-resources.md).

   Wie Sie die Zertifikatsdateien auf Ihr Gerät kopieren, hängt vom Gerät und Betriebssystem ab und wird hier nicht beschrieben. Wenn Ihr Gerät jedoch eine grafische Benutzeroberfläche (GUI) unterstützt und über einen Webbrowser verfügt, können Sie das unter [AWS IoT Ressourcen erstellen](create-iot-resources.md) beschriebene Verfahren vom Webbrowser Ihres Geräts aus ausführen, um die resultierenden Dateien direkt auf Ihr Gerät herunterzuladen.

   Bei den Befehlen im nächsten Abschnitt wird davon ausgegangen, dass Ihr Schlüssel und Ihr Zertifikatdateien wie in dieser Tabelle gezeigt auf dem Gerät gespeichert sind.  
**Namen der Zertifikatsdateien**    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/connecting-to-existing-device.html)

Zur Ausführung der Beispielanwendung benötigen Sie die folgenden Informationen:


**Anwendungsparameterwerte**  

|  Parameter  |  Wo der Wert gefunden werden kann  | 
| --- | --- | 
| your-iot-endpoint |  Wählen Sie in der [AWS IoT -Konsole](https://console.aws.amazon.com/iot/home) **Alle Geräte** und dann **Objekte** aus. Auf der **Einstellungsseite** im AWS IoT Menü. Ihr Endpunkt wird im Abschnitt **Gerätedaten-Endpunkt** angezeigt.  | 

Der *your-iot-endpoint* Wert hat ein Format von:`endpoint_id-ats.iot.region.amazonaws.com`, zum Beispiel`a3qj468EXAMPLE-ats.iot.us-west-2.amazonaws.com`.

------
#### [ Python ]

**Um die Beispiel-App zu installieren und auszuführen**

1. Navigieren Sie zum Beispielverzeichnis.

   ```
   cd ~/aws-iot-device-sdk-python-v2/samples
   ```

1. Ersetzen Sie im Befehlszeilenfenster *your-iot-endpoint* wie angegeben und führen Sie diesen Befehl aus.

   ```
   python3 pubsub.py --topic topic_1 --ca_file ~/certs/Amazon-root-CA-1.pem --cert ~/certs/device.pem.crt --key ~/certs/private.pem.key --endpoint your-iot-endpoint
   ```

1. Beachten Sie, dass die Beispiel-App:

   1. Stellt eine Verbindung mit dem AWS IoT Dienst für Ihr Konto her.

   1. Das Nachrichtenthema **topic\$11** abonniert und die Nachrichten anzeigt, die es zu diesem Thema erhält.

   1. 10 Nachrichten zum Thema **topic\$11** veröffentlicht.

   1. Ihre Ausgabe sieht ähnlich aus wie:

   ```
   Connecting to a3qEXAMPLEffp-ats.iot.us-west-2.amazonaws.com with client ID 'test-0c8ae2ff-cc87-49d2-a82a-ae7ba1d0ca5a'...
   Connected!
   Subscribing to topic 'topic_1'...
   Subscribed with QoS.AT_LEAST_ONCE
   Sending 10 message(s)
   Publishing message to topic 'topic_1': Hello World! [1]
   Received message from topic 'topic_1': b'Hello World! [1]'
   Publishing message to topic 'topic_1': Hello World! [2]
   Received message from topic 'topic_1': b'Hello World! [2]'
   Publishing message to topic 'topic_1': Hello World! [3]
   Received message from topic 'topic_1': b'Hello World! [3]'
   Publishing message to topic 'topic_1': Hello World! [4]
   Received message from topic 'topic_1': b'Hello World! [4]'
   Publishing message to topic 'topic_1': Hello World! [5]
   Received message from topic 'topic_1': b'Hello World! [5]'
   Publishing message to topic 'topic_1': Hello World! [6]
   Received message from topic 'topic_1': b'Hello World! [6]'
   Publishing message to topic 'topic_1': Hello World! [7]
   Received message from topic 'topic_1': b'Hello World! [7]'
   Publishing message to topic 'topic_1': Hello World! [8]
   Received message from topic 'topic_1': b'Hello World! [8]'
   Publishing message to topic 'topic_1': Hello World! [9]
   Received message from topic 'topic_1': b'Hello World! [9]'
   Publishing message to topic 'topic_1': Hello World! [10]
   Received message from topic 'topic_1': b'Hello World! [10]'
   10 message(s) received.
   Disconnecting...
   Disconnected!
   ```

   Wenn Probleme bei der Ausführung der Beispiel-App auftreten, überprüfen Sie [Beheben Sie Probleme mit der Beispielanwendung](gs-device-troubleshoot.md).

   Sie können den Parameter `--verbosity Debug` auch zur Befehlszeile hinzufügen, sodass die Beispiel-App detaillierte Meldungen darüber anzeigt, was sie tut. Diese Informationen bieten Ihnen möglicherweise die Hilfe, die Sie zur Behebung des Problems benötigen.

------
#### [ JavaScript ]

**Um die Beispiel-App zu installieren und auszuführen**

1. Navigieren Sie in Ihrem Befehlszeilenfenster zu dem `~/aws-iot-device-sdk-js-v2/samples/node/pub_sub`-Verzeichnis, das das SDK erstellt hat, und installieren Sie die Beispiel-App mithilfe dieser Befehle. Der Befehl `npm install` ruft den Build der `aws-crt` Bibliothek auf, der einige Minuten in Anspruch nehmen kann.

   ```
   cd ~/aws-iot-device-sdk-js-v2/samples/node/pub_sub
   npm install
   ```

1. Ersetzen Sie im Befehlszeilenfenster *your-iot-endpoint* wie angegeben und führen Sie diesen Befehl aus.

   ```
   node dist/index.js --topic topic_1 --ca_file ~/certs/Amazon-root-CA-1.pem --cert ~/certs/device.pem.crt --key ~/certs/private.pem.key --endpoint your-iot-endpoint
   ```

1. Beachten Sie, dass die Beispiel-App:

   1. Stellt eine Verbindung mit dem AWS IoT Dienst für Ihr Konto her.

   1. Das Nachrichtenthema **topic\$11** abonniert und die Nachrichten anzeigt, die es zu diesem Thema erhält.

   1. 10 Nachrichten zum Thema **topic\$11** veröffentlicht.

   1. Ihre Ausgabe sieht ähnlich aus wie:

   ```
   Publish received on topic topic_1
   {"message":"Hello world!","sequence":1}
   Publish received on topic topic_1
   {"message":"Hello world!","sequence":2}
   Publish received on topic topic_1
   {"message":"Hello world!","sequence":3}
   Publish received on topic topic_1
   {"message":"Hello world!","sequence":4}
   Publish received on topic topic_1
   {"message":"Hello world!","sequence":5}
   Publish received on topic topic_1
   {"message":"Hello world!","sequence":6}
   Publish received on topic topic_1
   {"message":"Hello world!","sequence":7}
   Publish received on topic topic_1
   {"message":"Hello world!","sequence":8}
   Publish received on topic topic_1
   {"message":"Hello world!","sequence":9}
   Publish received on topic topic_1
   {"message":"Hello world!","sequence":10}
   ```

   Wenn Probleme bei der Ausführung der Beispiel-App auftreten, überprüfen Sie [Beheben Sie Probleme mit der Beispielanwendung](gs-device-troubleshoot.md).

   Sie können den Parameter `--verbosity Debug` auch zur Befehlszeile hinzufügen, sodass die Beispiel-App detaillierte Meldungen darüber anzeigt, was sie tut. Diese Informationen bieten Ihnen möglicherweise die Hilfe, die Sie zur Behebung des Problems benötigen.

------

## Nachrichten aus der Beispiel-App in der AWS IoT Konsole anzeigen
<a name="gs-device-view-msg"></a>

Mithilfe des **MQTT-Testclients** in der **AWS IoT -Konsole** können Sie die Nachrichten der Beispiel-App sehen, während sie den Message Broker durchlaufen.

**Um die von der Beispiel-App veröffentlichten MQTT-Nachrichten anzuzeigen**

1. Sehen Sie sich [MQTT-Nachrichten mit dem AWS IoT MQTT-Client anzeigen](view-mqtt-messages.md) an. Auf diese Weise lernen Sie, wie Sie den **MQTT-Testclient** in der **AWS IoT -Konsole** verwenden, um MQTT-Nachrichten anzuzeigen, während sie den Message Broker passieren.

1. Öffnen Sie den **MQTT-Testclient** in der **AWS IoT -Konsole**.

1. Abonnieren Sie das Thema **topic\$11**.

1. Führen Sie in Ihrem Befehlszeilenfenster die Beispiel-App erneut aus und sehen Sie sich die Nachrichten im **MQTT-Client** in der **AWS IoT -Konsole** an.

------
#### [ Python ]

   ```
   cd ~/aws-iot-device-sdk-python-v2/samples
   python3 pubsub.py --topic topic_1 --ca_file ~/certs/Amazon-root-CA-1.pem --cert ~/certs/device.pem.crt --key ~/certs/private.pem.key --endpoint your-iot-endpoint
   ```

------
#### [ JavaScript ]

   ```
   cd ~/aws-iot-device-sdk-js-v2/samples/node/pub_sub
   node dist/index.js --topic topic_1 --ca_file ~/certs/Amazon-root-CA-1.pem --cert ~/certs/device.pem.crt --key ~/certs/private.pem.key --endpoint your-iot-endpoint
   ```

------

# Beheben Sie Probleme mit der Beispielanwendung
<a name="gs-device-troubleshoot"></a>

Wenn beim Versuch, die Beispiel-App auszuführen, ein Fehler auftritt, sollten Sie Folgendes überprüfen.

## Überprüfen Sie das Zertifikat
<a name="gs-device-ts-step-1"></a>

Wenn das Zertifikat nicht aktiv ist, AWS IoT werden keine Verbindungsversuche akzeptiert, bei denen es für die Autorisierung verwendet wird. Bei der Erstellung Ihres Zertifikats ist es leicht, die Schaltfläche **Aktivieren** zu übersehen. Zum Glück können Sie Ihr Zertifikat von der [AWS IoT -Konsole](https://console.aws.amazon.com/iot/home) aus aktivieren.

**Um die Aktivierung Ihres Zertifikats zu überprüfen**

1. Wählen Sie in der [AWS IoT -Konsole](https://console.aws.amazon.com/iot/home) im linken Menü die Option **Sicher** und dann **Zertifikate** aus.

1. Suchen Sie in der Liste der Zertifikate nach dem Zertifikat, das Sie für die Übung erstellt haben, und überprüfen Sie seinen Status in der Spalte **Status**.

   Wenn Sie sich nicht an den Namen des Zertifikats erinnern, suchen Sie nach den Zertifikaten, die **inaktiv** sind, um festzustellen, ob es sich dabei möglicherweise um das Zertifikat handelt, das Sie verwenden.

   Wählen Sie das Zertifikat in der Liste aus, um die Detailseite zu öffnen. Auf der Detailseite können Sie das **Erstellungsdatum** sehen, damit Sie das Zertifikat leichter identifizieren können.

1. **Um ein inaktives Zertifikat zu aktivieren**, wählen Sie auf der Detailseite des Zertifikats **Aktionen** und dann **Aktivieren** aus. 

Wenn Sie das richtige Zertifikat gefunden haben und es aktiv ist, Sie aber immer noch Probleme beim Ausführen der Beispiel-App haben, überprüfen Sie die Richtlinien, wie im nächsten Schritt beschrieben.

Sie können auch versuchen, eine neue Sache und ein neues Zertifikat zu erstellen, indem Sie die Schritte unter [Dies erstellt ein Objekt](create-iot-resources.md#create-aws-thing) befolgen. Wenn Sie eine neue Sache erstellen, müssen Sie ihr einen neuen Namen geben und die neuen Zertifikatsdateien auf Ihr Gerät herunterladen.

## Prüfen Sie die dem Zertifikat angefügte Richtlinie
<a name="gs-device-ts-step-2"></a>

Richtlinien autorisieren Aktionen in AWS IoT. Wenn das Zertifikat, mit dem eine Verbindung zu AWS IoT hergestellt wird, keine Richtlinie hat oder nicht über eine Richtlinie verfügt, die das Herstellen einer Verbindung ermöglicht, wird die Verbindung verweigert, auch wenn das Zertifikat aktiv ist.

**Um die einem Zertifikat beigefügten Richtlinien zu überprüfen**

1. Suchen Sie das Zertifikat, wie im vorherigen Artikel beschrieben, und öffnen Sie die zugehörige Detailseite.

1. Wählen Sie im linken Menü der Detailseite des Zertifikats die Option **Richtlinien** aus, um die mit dem Zertifikat verknüpften Richtlinien anzuzeigen.

1. Wenn dem Zertifikat keine Richtlinien zugeordnet sind, fügen Sie eine hinzu, indem Sie das Menü **Aktionen** und dann **Richtlinie anhängen** wählen. 

   Wählen Sie die Regel aus, die Sie zuvor in [AWS IoT Ressourcen erstellen](create-iot-resources.md) erstellt haben.

1. Wenn eine Richtlinie angehängt ist, wählen Sie die Richtlinienkachel aus, um die Detailseite zu öffnen.

   Überprüfen Sie auf der Detailseite das **Richtliniendokument**, um sicherzustellen, dass es dieselben Informationen enthält wie das, in dem Sie es in [Erstellen Sie eine AWS IoT Richtlinie](create-iot-resources.md#create-iot-policy) erstellt haben.

## Überprüfen Sie die Befehlszeile
<a name="gs-device-ts-step-3"></a>

Stellen Sie sicher, dass Sie die richtige Befehlszeile für Ihr System verwendet haben. Die auf Linux- und MacOS-Systemen verwendeten Befehle unterscheiden sich häufig von denen, die auf Windows-Systemen verwendet werden.

## Überprüfen Sie die Endpunktadresse
<a name="gs-device-ts-step-4"></a>

Überprüfen Sie den Befehl, den Sie eingegeben haben, und überprüfen Sie die Endpunktadresse in Ihrem Befehl noch einmal mit der Adresse in Ihrer [AWS IoT -Konsole](https://console.aws.amazon.com/iot/home).

## Überprüfen Sie die Dateinamen der Zertifikatsdateien
<a name="gs-device-ts-step-5"></a>

Vergleichen Sie die Dateinamen in dem Befehl, den Sie eingegeben haben, mit den Dateinamen der Zertifikatsdateien im Verzeichnis `certs`.

Bei einigen Systemen müssen die Dateinamen möglicherweise in Anführungszeichen gesetzt werden, damit sie korrekt funktionieren.

## Überprüfen Sie die SDK-Installation
<a name="gs-device-ts-step-6"></a>

Stellen Sie sicher, dass Ihre SDK-Installation vollständig und korrekt ist.

Installieren Sie im Zweifelsfall das SDK erneut auf Ihrem Gerät. In den meisten Fällen müssen Sie den Abschnitt des Tutorials mit dem Titel **Installieren des AWS IoT Geräte-SDK für** finden **SDK language** und das Verfahren erneut ausführen.

Wenn Sie das **AWS IoT Geräte-SDK für** verwenden JavaScript, denken Sie daran, die Beispiel-Apps zu installieren, bevor Sie versuchen, sie auszuführen. Durch die Installation des SDK werden die Beispiel-Apps nicht automatisch installiert. Die Beispiel-Apps müssen nach der Installation des SDK manuell installiert werden.

# MQTT-Nachrichten mit dem AWS IoT MQTT-Client anzeigen
<a name="view-mqtt-messages"></a>

In diesem Abschnitt wird beschrieben, wie Sie den AWS IoT MQTT-Testclient in der [AWS IoT Konsole](https://console.aws.amazon.com/iot/home) verwenden, um die von gesendeten und empfangenen MQTT-Nachrichten zu beobachten. AWS IoT Das in diesem Abschnitt verwendete Beispiel bezieht sich auf die in verwendeten Beispiele. Sie können das in den Beispielen *topicName* verwendete Beispiel jedoch durch einen beliebigen [Themennamen oder Themenfilter](topics.md) ersetzen[Erste Schritte mit AWS IoT Core Tutorials](iot-gs.md), der von Ihrer IoT-Lösung verwendet wird.

Geräte veröffentlichen MQTT-Nachrichten, die durch [Themen](topics.md) gekennzeichnet sind, um ihnen ihren Status mitzuteilen AWS IoT, und veröffentlichen AWS IoT MQTT-Nachrichten, um die Geräte und Apps über Änderungen und Ereignisse zu informieren. Sie können den MQTT-Client verwenden, um diese Themen zu abonnieren und die Nachrichten zu beobachten, sobald sie auftreten. Sie können den MQTT-Testclient auch verwenden, um MQTT-Nachrichten auf abonnierten Geräten und Diensten in Ihrem zu veröffentlichen. AWS-Konto

**Topics**
+ [Anzeigen von MQTT-Nachrichten im MQTT-Client](#view-mqtt-subscribe)
+ [Veröffentlichen von MQTT-Nachrichten vom MQTT-Client](#view-mqtt-publish)
+ [Testen von geteilten Abonnements im MQTT-Client](#view-mqtt-shared-subscriptions)

## Anzeigen von MQTT-Nachrichten im MQTT-Client
<a name="view-mqtt-subscribe"></a>

[Das folgende Verfahren erklärt, wie Sie ein bestimmtes MQTT-Thema abonnieren, für das Ihr Gerät Nachrichten veröffentlicht, und wie Sie diese Nachrichten in der Konsole anzeigen können.AWS IoT](https://console.aws.amazon.com/iot/home)

**So zeigen Sie MQTT-Nachrichten im MQTT-Testclient an**

1. Öffnen Sie die [AWS IoT -Konsole](https://console.aws.amazon.com/iot/home) und wählen Sie im linken Menü **Test**, um den **MQTT-Client** zu öffnen.  
![\[Wählen Sie im Konsolenmenü auf der linken Navigationsleiste den MQTT-Testclient aus.\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/images/choose-test.png)

1. Geben **Sie auf der Registerkarte Thema abonnieren** die Option ein, *topicName* um das Thema zu abonnieren, zu dem Ihr Gerät veröffentlicht. Abonnieren Sie für die Beispiel-App „Erste Schritte“ **\$1**, womit alle Nachrichtenthemen abonniert werden.

   Um mit dem Beispiel Erste Schritte fortzufahren, geben Sie auf der Registerkarte **Thema abonnieren** im Feld **Themenfilter** **\$1** ein, und wählen Sie dann **Abonnieren** aus.  
![\[Der Tab „Ein Thema abonnieren“.\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/images/subscribe-button-topic.png)

   Die Protokollseite der Themennachricht, **\$1**, wird geöffnet und **\$1** wird in der **Abonnementliste** angezeigt. Wenn das Gerät, auf dem Sie konfiguriert haben, das Beispielprogramm ausführt, sollten Sie die Nachrichten, an die es sendet, AWS IoT im **\$1** Message-Log sehen. [Konfigurieren Ihres Geräts](configure-device.md) Die Nachrichtenprotokolleinträge werden unter dem Abschnitt **Veröffentlichen** angezeigt, wenn Nachrichten mit dem abonnierten Thema bei eingegangen AWS IoT sind.  
![\[Der Bereich, in dem das Thema angezeigt wird, wurde erfolgreich abonniert.\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/images/subscribed-button-topic.png)

1. Auf der Seite **\$1** Nachrichtenprotokoll können Sie auch Nachrichten zu einem Thema veröffentlichen, dafür müssen Sie jedoch den Namen des Themas angeben. Veröffentlichen Sie eine Benachrichtigung für das Thema **\$1**.

   Nachrichten, die zu abonnierten Themen veröffentlicht wurden, werden im Nachrichtenprotokoll angezeigt, sobald sie empfangen wurden, wobei die neueste Nachricht an erster Stelle steht.

### Fehlerbehebung für MQTT-Nachrichten
<a name="view-mqtt-trouble"></a>

**Verwenden Sie den Themenfilter mit Platzhaltern**  
Wenn Ihre Nachrichten nicht wie erwartet im Nachrichtenprotokoll angezeigt werden, versuchen Sie, wie unter [Filter für Themennamen](topics.md#topicfilters) beschrieben, ein Platzhalter-Thema zu abonnieren. Der mehrstufige MQTT-Wildcard-Themenfilter ist das Hash- oder Rautenzeichen (`#`) und kann als Themenfilter im Themenfeld **Abonnementsthemen** verwendet werden.

Wenn Sie den `#` Themenfilter abonnieren, abonnieren Sie jedes Thema, das der Message Broker empfängt. Sie können den Filter eingrenzen, indem Sie Elemente des Themenfilterpfads durch ein `#` Platzhalterzeichen mit mehreren Ebenen oder das einstufige Platzhalterzeichen '\$1' ersetzen.

**Bei der Verwendung von Platzhaltern in einem Themenfilter**
+ Das Platzhalterzeichen mit mehreren Ebenen muss das letzte Zeichen im Themenfilter sein.
+ Der Themenfilterpfad kann nur ein Platzhalterzeichen mit einer Ebene pro Themenebene enthalten.

Beispielsweise:


|  Themenfilter  |  Zeigt Nachrichten an mit  | 
| --- | --- | 
|   `#`   |   Beliebiger Themenname   | 
|   `topic_1/#`   |   Ein Themenname, der mit `topic_1/` beginnt  | 
|   `topic_1/level_2/#`   |   Ein Themenname, der mit `topic_1/level_2/` beginnt  | 
|   `topic_1/+/level_3`   |   Ein Themenname, der mit `topic_1/` beginnt, mit `/level_3` endet und dazwischen ein Element beliebigen Wertes enthält.  | 

Weitere Informationen zu Filtern finden Sie unter [Filter für Themennamen](topics.md#topicfilters).

**Suchen Sie nach Fehlern beim Themennamen**  
MQTT-Themennamen und Themenfilter berücksichtigen Groß- und Kleinschreibung. Wenn Ihr Gerät beispielsweise Nachrichten an `Topic_1` (mit einem großen *T*) statt an `topic_1`, das Thema, das Sie abonniert haben, veröffentlicht, werden seine Nachrichten nicht im MQTT-Testclient angezeigt. Wenn Sie jedoch den Themenfilter mit Platzhaltern abonnieren, wird angezeigt, dass das Gerät gerade Nachrichten veröffentlicht, und Sie könnten sehen, dass es einen Themennamen verwendet, der nicht dem entspricht, den Sie erwartet haben.

## Veröffentlichen von MQTT-Nachrichten vom MQTT-Client
<a name="view-mqtt-publish"></a>

**So veröffentlichen Sie eine Nachricht in einem MQTT-Thema**

1. Geben Sie auf der Seite des MQTT-Testclients **auf der Registerkarte In einem Thema veröffentlichen** im Feld **Themenname** den Text *topicName* Ihrer Nachricht ein. Verwenden Sie **my/topic** in diesem Beispiel. 
**Anmerkung**  
Verwenden Sie keine persönlich identifizierbaren Informationen in Themennamen, unabhängig davon, ob Sie sie im MQTT-Testclient oder in Ihrer Systemimplementierung verwenden. Themennamen können in unverschlüsselten Mitteilungen und Berichten vorkommen.

1. Geben Sie im Abschnitt für die Nachrichten-Nutzlast den folgenden JSON-Code ein:

   ```
   {
       "message": "Hello, world",
       "clientType": "MQTT test client"
   }
   ```

1. Wählen Sie **Veröffentlichen** aus, um Ihre Nachricht in AWS IoT zu veröffentlichen.
**Anmerkung**  
Vergewissern Sie sich, dass Sie das Thema **my/topic** abonniert haben, bevor Sie Ihre Nachricht veröffentlichen.  
![\[Die Registerkarte „In einem Thema veröffentlichen“.\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/images/publish-to-topic.png)

1. Wählen Sie in der Spalte **Abonnement** die Option **my/topic** aus, um die Nachricht anzuzeigen. Sie sollten sehen, dass die Nachricht im MQTT-Testclient unter dem Payload-Fenster für die Nachrichtenveröffentlichung erscheint.  
![\[Der Bildschirm, auf dem das veröffentlichte Thema angezeigt wird, wurde empfangen.\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/images/publish-to-topic-received.png)

Sie können MQTT-Nachrichten zu anderen Themen veröffentlichen, indem Sie das *topicName* im Feld **Themenname** ändern und die Schaltfläche **Veröffentlichen** wählen.

**Wichtig**  
Wenn Sie mehrere Abonnements mit sich überschneidenden Themen erstellen (z. B. probe1/temperature und probe1/\$1), besteht die Möglichkeit, dass eine einzelne Nachricht, die zu einem Thema veröffentlicht wurde, das beiden Abonnements entspricht, mehrmals zugestellt wird, nämlich einmal für jedes sich überschneidende Abonnement. 

## Testen von geteilten Abonnements im MQTT-Client
<a name="view-mqtt-shared-subscriptions"></a>

In diesem Abschnitt wird beschrieben, wie Sie den AWS IoT MQTT-Client in der [AWS IoT Konsole](https://console.aws.amazon.com/iot/home) verwenden, um die AWS IoT mithilfe von Shared Subscriptions gesendeten und empfangenen MQTT-Nachrichten anzusehen. [Geteilte Abonnements](mqtt.md#mqtt5-shared-subscription)ermöglicht es mehreren Clients, ein Abonnement für ein Thema gemeinsam zu nutzen, wobei nur ein Client Nachrichten erhält, die zu diesem Thema veröffentlicht wurden, und zwar nach dem Zufallsprinzip. Um zu simulieren, dass mehrere MQTT-Clients (in diesem Beispiel zwei MQTT-Clients) dasselbe Abonnement nutzen, öffnen Sie den AWS IoT MQTT-Client in der [AWS IoT Konsole von mehreren Webbrowsern](https://console.aws.amazon.com/iot/home) aus. Das in diesem Abschnitt verwendete Beispiel bezieht sich nicht auf die in [Erste Schritte mit AWS IoT Core Tutorials](iot-gs.md) verwendeten Beispiele. Weitere Informationen finden Sie unter [Geteilte Abonnements](mqtt.md#mqtt5-shared-subscription).

**Um ein Abonnement für ein MQTT-Thema zu teilen**

1. Wählen Sie in der [AWS IoT -Konsole](https://console.aws.amazon.com/iot/home) im Navigationsbereich **Test** und dann **MQTT-Testclient** aus.

1. Geben Sie auf der Registerkarte **Thema abonnieren den ein**, *topicName* um das Thema zu abonnieren, zu dem Ihr Gerät veröffentlicht. Um geteilte Abonnements zu verwenden, abonnieren Sie den Themenfilter eines geteilten Abonnements wie folgt:

   ```
   $share/{ShareName}/{TopicFilter}
   ```

   Ein Beispiel für einen Themenfilter kann **\$1share/group1/topic1** sein, der das Nachrichtenthema **topic1** abonniert.  
![\[Die Registerkarte zeigt, wie Sie einen Themenfilter für gemeinsame Abonnements angeben.\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/images/shared-subscription-topicfilter.png)

1. Öffnen Sie einen anderen Webbrowser und wiederholen Sie Schritt 1 und Schritt 2. Auf diese Weise simulieren Sie zwei verschiedene MQTT-Clients, die dasselbe Abonnement **\$1share/group1/topic1** verwenden.

1. Wählen Sie einen MQTT-Client aus und geben Sie **auf der Registerkarte In einem Thema veröffentlichen** **im Feld Themenname** den Text *topicName* Ihrer Nachricht ein. Verwenden Sie **topic1** in diesem Beispiel. Versuchen Sie, die Nachricht ein paar Mal zu veröffentlichen. Aus der **Abonnementliste** der beiden MQTT-Clients sollten Sie erkennen können, dass die Clients die Nachricht mit einer zufälligen Verteilung empfangen. In diesem Beispiel veröffentlichen wir dreimal dieselbe Nachricht „Hallo von der AWS IoT Konsole“. Der MQTT-Client auf der linken Seite hat die Nachricht zweimal empfangen und der MQTT-Client auf der rechten Seite hat die Nachricht einmal erhalten.  
![\[Die gemeinsamen Abonnements werden von zwei Clients gemeinsam genutzt, um sich ein Abonnement für ein Thema zu teilen, und nur ein Client erhält Nachrichten, die zu diesem Thema veröffentlicht wurden, nach dem Zufallsprinzip.\]](http://docs.aws.amazon.com/de_de/iot/latest/developerguide/images/shared_subscriptions_test.gif)