

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.

# Tutorial: Erstellen Sie ein Studio-Notizbuch in Managed Service für Apache Flink
<a name="example-notebook"></a>

Das folgende Tutorial zeigt, wie Sie ein Studio-Notebook erstellen, das Daten aus einem Kinesis-Datenstream oder einem Amazon MSK-Cluster liest.

**Topics**
+ [Erfüllen der Voraussetzungen](#example-notebook-setup)
+ [Erstellen Sie eine Datenbank AWS Glue](#example-notebook-glue)
+ [Nächste Schritte: Erstellen Sie ein Studio-Notizbuch mit Kinesis Data Streams oder Amazon MSK](#examples-notebook-nextsteps)
+ [Erstellen Sie ein Studio-Notebook mit Kinesis Data Streams](example-notebook-streams.md)
+ [Erstellen Sie ein Studio-Notebook mit Amazon MSK](example-notebook-msk.md)
+ [Bereinigen Sie Ihre Anwendung und die abhängigen Ressourcen](example-notebook-cleanup.md)

## Erfüllen der Voraussetzungen
<a name="example-notebook-setup"></a>

Stellen Sie sicher, dass Sie AWS CLI Version 2 oder höher haben. Informationen zur Installation der neuesten AWS CLI Version finden Sie unter [Installation, Aktualisierung und Deinstallation der AWS CLI Version 2.](https://docs.aws.amazon.com/cli/latest/userguide/install-cliv2.html)

## Erstellen Sie eine Datenbank AWS Glue
<a name="example-notebook-glue"></a>

Ihr Studio-Notebook verwendet eine [AWS Glue](https://docs.aws.amazon.com/glue/latest/dg/what-is-glue.html)-Datenbank für Metadaten zu Ihrer Amazon MSK-Datenquelle.

**Erstellen Sie eine AWS Glue Datenbank**

1. Öffnen Sie die AWS Glue Konsole unter [https://console.aws.amazon.com/glue/](https://console.aws.amazon.com/glue/).

1. Wählen Sie **Add database** (Datenbank hinzufügen). Geben Sie im Fenster **Datenbank hinzufügen** **default** als **Namen der Datenbank** ein. Wählen Sie **Erstellen** aus. 

## Nächste Schritte: Erstellen Sie ein Studio-Notizbuch mit Kinesis Data Streams oder Amazon MSK
<a name="examples-notebook-nextsteps"></a>

Mit diesem Tutorial können Sie ein Studio-Notebook erstellen, das entweder Kinesis Data Streams oder Amazon MSK verwendet:
+ [Erstellen Sie ein Studio-Notebook mit Kinesis Data Streams](example-notebook-streams.md): Mit Kinesis Data Streams können Sie schnell eine Anwendung erstellen, die einen Kinesis Data Stream als Quelle verwendet. Sie müssen nur einen Kinesis Data Stream als abhängige Ressource erstellen.
+ [Erstellen Sie ein Studio-Notebook mit Amazon MSK](example-notebook-msk.md): Mit Amazon MSK erstellen Sie eine Anwendung, die einen Amazon MSK-Cluster als Quelle verwendet. Sie müssen eine Amazon VPC, eine Amazon EC2-Client-Instance und einen Amazon MSK-Cluster als abhängige Ressourcen erstellen.

# Erstellen Sie ein Studio-Notebook mit Kinesis Data Streams
<a name="example-notebook-streams"></a>

In diesem Tutorial wird beschrieben, wie Sie ein Studio-Notebook erstellen, das einen Kinesis Data Stream als Quelle verwendet.

**Topics**
+ [Erfüllen der Voraussetzungen](#example-notebook-streams-setup)
+ [Erstellen Sie eine Tabelle AWS Glue](#example-notebook-streams-glue)
+ [Erstellen Sie ein Studio-Notebook mit Kinesis Data Streams](#example-notebook-streams-create)
+ [Senden von Daten an den Kinesis Data Stream](#example-notebook-streams-send)
+ [Testen Sie Ihr Studio-Notebook](#example-notebook-streams-test)

## Erfüllen der Voraussetzungen
<a name="example-notebook-streams-setup"></a>

Bevor Sie ein Studio-Notebook erstellen, erstellen Sie einen Kinesis Data Stream (`ExampleInputStream`). Ihre Anwendung verwendet diesen Stream als Anwendungsquelle.

Sie können diesen Stream mithilfe der Amazon Kinesis-Konsole oder des folgenden AWS CLI -Befehls erstellen. Anweisungen für die Konsole finden Sie unter [Erstellen und Aktualisieren von Datenströmen](https://docs.aws.amazon.com/kinesis/latest/dev/amazon-kinesis-streams.html) im *Amazon Kinesis Data Streams Entwicklerhandbuch*. Benennen Sie den Stream **ExampleInputStream** und legen Sie die **Anzahl der offenen Shards** auf **1** fest.

Verwenden Sie den folgenden Amazon Kinesis `create-stream` AWS CLI Kinesis-Befehl AWS CLI, um den Stream (`ExampleInputStream`) mit dem zu erstellen.

```
$ aws kinesis create-stream \
--stream-name ExampleInputStream \
--shard-count 1 \
--region us-east-1 \
--profile adminuser
```

## Erstellen Sie eine Tabelle AWS Glue
<a name="example-notebook-streams-glue"></a>

Ihr Studio-Notebook verwendet eine [AWS Glue](https://docs.aws.amazon.com/glue/latest/dg/what-is-glue.html)-Datenbank für Metadaten zu Ihrer Kinesis Data Streams-Datenquelle.

**Anmerkung**  
Sie können die Datenbank entweder zuerst manuell erstellen oder sie beim Erstellen des Notebooks von Managed Service für Apache Flink für Sie erstellen lassen. Ebenso können Sie die Tabelle entweder manuell erstellen, wie im folgenden Abschnitt beschrieben, oder Sie können den Konnektorcode zum Erstellen einer Tabelle für Managed Service für Apache Flink in Ihrem Notebook innerhalb von Apache Zeppelin verwenden, um Ihre Tabelle über eine DDL-Anweisung zu erstellen. Sie können dann einchecken AWS Glue , um sicherzustellen, dass die Tabelle korrekt erstellt wurde.

**Erstellen einer Tabelle**

1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die AWS Glue Konsole unter [https://console.aws.amazon.com/glue/](https://console.aws.amazon.com/glue/).

1. Wenn Sie noch keine AWS Glue Datenbank haben, wählen Sie in der linken Navigationsleiste **Datenbanken** aus. Wählen Sie **Datenbank hinzufügen**. Geben Sie im Fenster **Datenbank hinzufügen** **default** als **Namen der Datenbank** ein. Wählen Sie **Create (Erstellen)** aus.

1. Wählen Sie in der linken Navigationsleiste die Option **Tabellen**. Wählen Sie auf der Seite **Tabellen** die Optionen **Tabellen hinzufügen**, **Tabelle manuell hinzufügen** aus.

1. Geben Sie auf der Seite **Eigenschaften Ihrer Tabelle einrichten** **stock** als **Tabellennamen** ein. Stellen Sie sicher, dass Sie die Datenbank auswählen, die Sie zuvor erstellt haben. Wählen Sie **Weiter**.

1. Wählen Sie auf der Seite **Datenstore hinzufügen** die Option **Kinesis** aus. Geben Sie als **Streamnamen** **ExampleInputStream** ein. Wählen Sie für **Kinesis-Quell-URL** die Eingabetaste **https://kinesis.us-east-1.amazonaws.com**. Wenn Sie die **Kinesis-Quell-URL** kopieren und einfügen, achten Sie darauf, alle führenden oder nachfolgenden Leerzeichen zu löschen. Wählen Sie **Weiter**.

1. Wählen Sie auf der Seite **Klassifikation** die Option **JSON** aus. Wählen Sie **Weiter**.

1. Wählen Sie auf der Seite **Schema definieren** die Option „Spalte hinzufügen“, um eine Spalte hinzuzufügen. Fügen Sie Spalten mit den folgenden Eigenschaften hinzu:    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/managed-flink/latest/java/example-notebook-streams.html)

   Wählen Sie **Weiter**.

1. Überprüfen Sie auf der nächsten Seite Ihre Einstellungen und wählen Sie **Fertigstellen.**

1. Wählen Sie die neu erstellte Tabelle aus der Liste der Tabellen aus.

1. Wählen Sie **Tabelle bearbeiten** und fügen Sie eine Eigenschaft mit dem Schlüssel `managed-flink.proctime` und dem Wert `proctime` hinzu.

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

## Erstellen Sie ein Studio-Notebook mit Kinesis Data Streams
<a name="example-notebook-streams-create"></a>

Nachdem Sie die Ressourcen erstellt haben, die Ihre Anwendung verwendet, erstellen Sie Ihr Studio-Notebook. 

**Topics**
+ [Erstellen Sie ein Studio-Notizbuch mit dem AWS-Managementkonsole](#example-notebook-create-streams-console)
+ [Erstellen Sie ein Studio-Notizbuch mit dem AWS CLI](#example-notebook-msk-create-api)

### Erstellen Sie ein Studio-Notizbuch mit dem AWS-Managementkonsole
<a name="example-notebook-create-streams-console"></a>

1. Die Managed Service for Apache Flink-Konsole zu [ https://console.aws.amazon.com/managed-flink/Hause öffnen? region=us-east-1\$1/applications/dashboard](https://console.aws.amazon.com/managed-flink/home?region=us-east-1#/applications/dashboard). 

1. Wählen Sie auf der Seite **Managed Service für Apache Flink-Anwendungen** die Registerkarte **Studio** aus. Wählen Sie **Studio-Notebook erstellen**.
**Anmerkung**  
Sie können ein Studio-Notebook auch über die Amazon MSK- oder Kinesis Data Streams-Konsolen erstellen, indem Sie Ihren Amazon MSK-Eingabe-Cluster oder Kinesis Data Stream auswählen und dann **Daten in Echtzeit verarbeiten** auswählen.

1. Geben Sie auf der Seite **Notebook-Instance erstellen** folgende Informationen ein:
   + Geben Sie **MyNotebook** als Namen des Notebooks ein.
   + Wählen Sie **Standard** für die **AWS -Glue-Datenbank**.

   Wählen Sie **Studio-Notebook erstellen**.

1. **Wählen Sie auf der Seite „Ausführen“ aus. **MyNotebook**** Warten Sie, bis der **Status** **Wird ausgeführt** angezeigt wird. Es fallen Gebühren an, wenn das Notebook läuft.

### Erstellen Sie ein Studio-Notizbuch mit dem AWS CLI
<a name="example-notebook-msk-create-api"></a>

Gehen Sie wie folgt vor AWS CLI, um Ihr Studio-Notizbuch mit dem zu erstellen:

1. Überprüfen Sie die Konto-ID. Sie benötigen diesen Wert, um die Anwendung zu erstellen.

1. Erstellen Sie die Rolle `arn:aws:iam::AccountID:role/ZeppelinRole` und fügen Sie der automatisch erstellten Rolle über die Konsole die folgenden Berechtigungen hinzu.

   `"kinesis:GetShardIterator",`

   `"kinesis:GetRecords",`

   `"kinesis:ListShards"`

1. Erstellen Sie eine Datei mit dem Namen `create.json` und den folgenden Inhalten. Ersetzen Sie die Platzhalterwerte durch Ihre Informationen.

   ```
   {
       "ApplicationName": "MyNotebook",
       "RuntimeEnvironment": "ZEPPELIN-FLINK-3_0",
       "ApplicationMode": "INTERACTIVE",
       "ServiceExecutionRole": "arn:aws:iam::AccountID:role/ZeppelinRole",
       "ApplicationConfiguration": {
           "ApplicationSnapshotConfiguration": {
               "SnapshotsEnabled": false
           },
           "ZeppelinApplicationConfiguration": {
               "CatalogConfiguration": {
                   "GlueDataCatalogConfiguration": {
                       "DatabaseARN": "arn:aws:glue:us-east-1:AccountID:database/default"
                   }
               }
           }
       }
   }
   ```

1. Um Ihre Anwendung zu erstellen, führen Sie den folgenden Befehl aus.

   ```
   aws kinesisanalyticsv2 create-application --cli-input-json file://create.json 
   ```

1. Wenn der Befehl abgeschlossen ist, sehen Sie eine Ausgabe, die die Details für Ihr neues Studio-Notebook enthält. Es folgt ein Beispiel für die Ausgabe.

   ```
   {
       "ApplicationDetail": {
           "ApplicationARN": "arn:aws:kinesisanalyticsus-east-1:012345678901:application/MyNotebook",
           "ApplicationName": "MyNotebook",
           "RuntimeEnvironment": "ZEPPELIN-FLINK-3_0",
           "ApplicationMode": "INTERACTIVE",
           "ServiceExecutionRole": "arn:aws:iam::012345678901:role/ZeppelinRole",
   ...
   ```

1. Um Ihre Anwendung zu starten, führen Sie den folgenden Befehl aus. Ersetzen Sie die Beispielwerte durch Ihre Konto-ID.

   ```
   aws kinesisanalyticsv2 start-application --application-arn arn:aws:kinesisanalyticsus-east-1:012345678901:application/MyNotebook\
   ```

## Senden von Daten an den Kinesis Data Stream
<a name="example-notebook-streams-send"></a>

Gehen Sie wie folgt vor, um Testdaten an Ihren Kinesis Data Stream zu senden:

1. Öffnen Sie den [Kinesis Data Generator](https://awslabs.github.io/amazon-kinesis-data-generator/web/help.html). 

1. Wählen Sie „**Cognito-Benutzer erstellen mit CloudFormation**“.

1. Die CloudFormation Konsole wird mit der Kinesis Data Generator-Vorlage geöffnet. Wählen Sie **Weiter**.

1. Auf der Seite **Festlegen von Komponentendetails** geben Sie den Benutzernamen und das Passwort für Ihren Cognito-Benutzer ein. Wählen Sie **Weiter**.

1. Wählen Sie auf der Seite **Stack-Optionen konfigurieren** **Weiter** aus.

1. Wählen Sie auf der Seite „** Kinesis-Data-Generator-CognitoBenutzer überprüfen**“ die Option **Ich bestätige, dass AWS CloudFormation möglicherweise IAM-Ressourcen erstellt** werden. Kontrollkästchen. Wählen Sie **Stapel erstellen** aus.

1. Warten Sie, bis der CloudFormation Stapel fertig erstellt ist. **Nachdem der Stack abgeschlossen ist, öffnen Sie den **Kinesis-Data-Generator-Cognito-User-Stack** in der Konsole und wählen Sie die Registerkarte Outputs aus. CloudFormation ** **KinesisDataGeneratorUrl**Öffnen Sie die URL, die für den Ausgabewert aufgeführt ist.

1. Melden Sie sich auf der **Amazon Kinesis Data Generator**-Seite mit den Anmeldeinformationen an, die Sie in Schritt 4 erstellt haben.

1. Geben Sie auf der nächsten Seite die folgenden Werte an:    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/managed-flink/latest/java/example-notebook-streams.html)

   Fügen Sie für **Datensatzvorlage** den folgenden Code ein:

   ```
   {
       "ticker": "{{random.arrayElement(
           ["AMZN","MSFT","GOOG"]
       )}}",
       "price": {{random.number(
           {
               "min":10,
               "max":150
           }
       )}}
   }
   ```

1. Wählen Sie **Daten senden** aus.

1. Der Generator sendet Daten an den Kinesis Data Stream. 

   Lassen Sie den Generator laufen, während Sie den nächsten Abschnitt abschließen.

## Testen Sie Ihr Studio-Notebook
<a name="example-notebook-streams-test"></a>

In diesem Abschnitt verwenden Sie Ihr Studio-Notebook, um Daten aus Ihrem Kinesis Data Stream abzufragen.

1. Die Managed Service for Apache Flink-Konsole zu [ https://console.aws.amazon.com/managed-flink/Hause öffnen? region=us-east-1\$1/applications/dashboard](https://console.aws.amazon.com/managed-flink/home?region=us-east-1#/applications/dashboard).

1. Wählen Sie auf der Seite **Managed Service für Apache Flink-Anwendungen** die Registerkarte **Studio-Notebook** aus. Wählen Sie **MyNotebook**.

1. **Wählen Sie auf der Seite „In Apache Zeppelin öffnen“. **MyNotebook****

   Die Oberfläche von Apache Zeppelin wird in einer neuen Registerkarte geöffnet.

1. Auf der Seite **Willkommen bei Zeppelin\$1** wählen Sie **Zeppelin Notiz** aus.

1. Geben Sie auf der Seite **Zeppelin Notiz** die folgende Abfrage in eine neue Notiz ein:

   ```
   %flink.ssql(type=update)
   select * from stock
   ```

   Wählen Sie das Ausführungssymbol.

   Nach kurzer Zeit werden in der Notiz Daten aus dem Kinesis Data Stream angezeigt.

Um das Apache Flink-Dashboard für Ihre Anwendung zu öffnen und betriebliche Aspekte zu sehen, wählen Sie **FLINK JOB**. Weitere Informationen zum Flink-Dashboard finden Sie unter [Apache Flink-Dashboard](https://docs.aws.amazon.com/managed-flink/latest/java/how-dashboard.html) im [Managed Service für Apache Flink Entwicklerhandbuch](https://docs.aws.amazon.com/).

Weitere Beispiele für Flink-Streaming-SQL-Abfragen finden Sie unter [Abfragen](https://nightlies.apache.org/flink/flink-docs-release-1.15/dev/table/sql/queries.html) in der [Apache Flink-Dokumentation](https://nightlies.apache.org/flink/flink-docs-release-1.15/).

# Erstellen Sie ein Studio-Notebook mit Amazon MSK
<a name="example-notebook-msk"></a>

In diesem Tutorial wird beschrieben, wie Sie ein Studio-Notebook erstellen, das einen Amazon-MSK-Cluster als Quelle verwendet.

**Topics**
+ [Einen Amazon MSK-Cluster einrichten](#example-notebook-msk-setup)
+ [Fügen Sie Ihrer VPC ein NAT-Gateway hinzu](#example-notebook-msk-nat)
+ [Erstellen Sie eine AWS Glue Verbindung und eine Tabelle](#example-notebook-msk-glue)
+ [Erstellen Sie ein Studio-Notebook mit Amazon MSK](#example-notebook-msk-create)
+ [Senden Sie Daten an Ihren Amazon MSK-Cluster](#example-notebook-msk-send)
+ [Testen Sie Ihr Studio-Notebook](#example-notebook-msk-test)

## Einen Amazon MSK-Cluster einrichten
<a name="example-notebook-msk-setup"></a>

Für dieses Tutorial benötigen Sie einen Amazon-MSK-Cluster, der Klartextzugriff ermöglicht. Wenn Sie noch keinen Amazon MSK-Cluster eingerichtet haben, folgen Sie dem Tutorial [Erste Schritte mit Amazon MSK, um eine Amazon](https://docs.aws.amazon.com/msk/latest/developerguide/getting-started.html) VPC, einen Amazon MSK-Cluster, ein Thema und eine Amazon-Client-Instance zu erstellen. EC2 

Gehen Sie beim Befolgen des Tutorials wie folgt vor:
+ Ändern Sie in [Schritt 3: Amazon MSK-Cluster erstellen](https://docs.aws.amazon.com/msk/latest/developerguide/create-cluster.html) bei Schritt 4 den `ClientBroker`-Wert von `TLS` auf **PLAINTEXT**.

## Fügen Sie Ihrer VPC ein NAT-Gateway hinzu
<a name="example-notebook-msk-nat"></a>

Wenn Sie einen Amazon MSK-Cluster erstellt haben, indem Sie dem Tutorial [Erste Schritte mit Amazon MSK](https://docs.aws.amazon.com/msk/latest/developerguide/getting-started.html) gefolgt sind, oder wenn Ihre bestehende Amazon VPC noch kein NAT-Gateway für ihre privaten Subnetze hat, müssen Sie Ihrer Amazon VPC ein NAT-Gateway hinzufügen. Das folgende Diagramm zeigt die Architektur. 

![\[AWS VPC architecture with public and private subnets, NAT gateway, and Glue Data Catalog integration.\]](http://docs.aws.amazon.com/de_de/managed-flink/latest/java/images/vpc_05.png)


Gehen Sie wie folgt vor, um ein NAT-Gateway für Ihre Amazon VPC zu erstellen:

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

1. Wählen Sie in der linken Navigationsleiste **NAT-Gateway** aus.

1. Wählen Sie auf der Seite **NAT-Gateways** die Option **NAT-Gateway erstellen** aus.

1. Geben Sie auf der Seite **NAT-Gateway erstellen** die folgenden Werte an:    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/managed-flink/latest/java/example-notebook-msk.html)

   Wählen Sie **NAT-Gateway erstellen** aus.

1. Wählen Sie in der linken Navigationsleiste **Routing-Tabellen** aus.

1. Klicken Sie auf **Create Route Table (Routing-Tabelle erstellen)**.

1. Geben Sie auf der Seite **Routing-Tabelle erstellen** folgende Informationen ein:
   + **Name-Tag:** **ZeppelinRouteTable**
   + **VPC**: Wählen Sie Ihre VPC (z. B. **AWS KafkaTutorialVPC**).

   Wählen Sie **Create (Erstellen)** aus.

1. Wählen Sie in der Liste der Routentabellen. **ZeppelinRouteTable** Klicken Sie auf der Registerkarte **Routen** auf **Routen bearbeiten**.

1. Wählen Sie auf der Seite **Routen bearbeiten** die Option **Route hinzufügen** aus.

1. Geben Sie im ****Für-**Ziel** **0.0.0.0/0** ein. Wählen Sie für **Target** die Option **NAT Gateway**, **ZeppelinGateway**. Wählen Sie **Routen speichern** aus. Klicken Sie auf **Close** (Schließen).

1. Wählen Sie auf der Seite Routing-Tabellen die **ZeppelinRouteTable**Option „**Subnetzzuordnungen**“ aus. Wählen Sie **Subnetzzuordnungen bearbeiten** aus.

1. **Wählen Sie auf der Seite **Subnetzzuordnungen bearbeiten** die Optionen **AWS KafkaTutorialSubnet2 und AWS KafkaTutorialSubnet 3** aus.** Wählen Sie **Save (Speichern)** aus.

## Erstellen Sie eine AWS Glue Verbindung und eine Tabelle
<a name="example-notebook-msk-glue"></a>

Ihr Studio-Notebook verwendet eine [AWS Glue](https://docs.aws.amazon.com/glue/latest/dg/what-is-glue.html)-Datenbank für Metadaten zu Ihrer Amazon MSK-Datenquelle. In diesem Abschnitt erstellen Sie eine AWS Glue Verbindung, die beschreibt, wie Sie auf Ihren Amazon MSK-Cluster zugreifen können, und eine AWS Glue Tabelle, die beschreibt, wie Sie die Daten in Ihrer Datenquelle für Clients wie Ihr Studio-Notebook präsentieren. 

**Eine Verbindung erstellen**

1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die AWS Glue Konsole unter [https://console.aws.amazon.com/glue/](https://console.aws.amazon.com/glue/).

1. Wenn Sie noch keine AWS Glue Datenbank haben, wählen Sie in der linken Navigationsleiste **Datenbanken** aus. Wählen Sie **Datenbank hinzufügen**. Geben Sie im Fenster **Datenbank hinzufügen** **default** als **Namen der Datenbank** ein. Wählen Sie **Create (Erstellen)** aus.

1. Wählen Sie in der linken Navigationsleiste **Verbindungen** aus. Wählen Sie **Verbindung hinzufügen** aus.

1. Geben Sie im Fenster **Verbindung hinzufügen** die folgenden Werte ein:
   + Geben Sie für **Verbindungsname** **ZeppelinConnection** ein.
   + Wählen Sie für **Verbindungstyp** den Eintrag **Kafka**.
   + Geben Sie für den **Kafka-Bootstrap-Server URLs** die Bootstrap-Broker-String für Ihren Cluster an. Sie können die Bootstrap-Broker entweder über die MSK-Konsole oder durch Eingabe des folgenden CLI-Befehls abrufen:

     ```
     aws kafka get-bootstrap-brokers --region us-east-1 --cluster-arn ClusterArn
     ```
   + Deaktivieren Sie das Kontrollkästchen **SSL-Verbindung erforderlich**.

   Wählen Sie **Weiter**.

1. Geben Sie auf der **VPC**-Seite die folgenden Werte an:
   + Wählen Sie für **VPC** den Namen Ihrer VPC (z. B. ** AWS KafkaTutorialVPC**).
   + **Wählen Sie für **Subnetz 2** aus.AWS KafkaTutorialSubnet**
   + Wählen Sie für **Sicherheitsgruppen** alle verfügbaren Gruppen aus.

   Wählen Sie **Weiter**.

1. Wählen Sie auf der Seite **Verbindungseigenschaften** / **Verbindungszugriff** die Option **Fertigstellen** aus.

**Erstellen einer Tabelle**
**Anmerkung**  
Sie können die Tabelle entweder manuell erstellen, wie in den folgenden Schritten beschrieben, oder Sie können den Konnektorcode zum Erstellen einer Tabelle für Managed Service für Apache Flink in Ihrem Notebook innerhalb von Apache Zeppelin verwenden, um Ihre Tabelle über eine DDL-Anweisung zu erstellen. Sie können dann einchecken AWS Glue , um sicherzustellen, dass die Tabelle korrekt erstellt wurde.

1. Wählen Sie in der linken Navigationsleiste die Option **Tabellen**. Wählen Sie auf der Seite **Tabellen** die Optionen **Tabellen hinzufügen**, **Tabelle manuell hinzufügen** aus.

1. Geben Sie auf der Seite **Eigenschaften Ihrer Tabelle einrichten** **stock** als **Tabellennamen** ein. Stellen Sie sicher, dass Sie die Datenbank auswählen, die Sie zuvor erstellt haben. Wählen Sie **Weiter**.

1. Wählen Sie auf der Seite **Datenspeicher hinzufügen** die Option **Kafka** aus. Geben Sie als **Themennamen** Ihren Themennamen ein (z. B. **AWS KafkaTutorialTopic**). Wählen Sie für **Verbindung **ZeppelinConnection****.

1. Wählen Sie auf der Seite **Klassifikation** die Option **JSON** aus. Wählen Sie **Weiter**.

1. Wählen Sie auf der Seite **Schema definieren** die Option „Spalte hinzufügen“, um eine Spalte hinzuzufügen. Fügen Sie Spalten mit den folgenden Eigenschaften hinzu:    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/managed-flink/latest/java/example-notebook-msk.html)

   Wählen Sie **Weiter**.

1. Überprüfen Sie auf der nächsten Seite Ihre Einstellungen und wählen Sie **Fertigstellen.**

1. Wählen Sie die neu erstellte Tabelle aus der Liste der Tabellen aus.

1. Wählen Sie **Tabelle bearbeiten** und fügen Sie die folgenden Eigenschaften hinzu:
   + Schlüssel:`managed-flink.proctime`, Wert: `proctime`
   + Schlüssel:`flink.properties.group.id`, Wert: `test-consumer-group`
   + Schlüssel:`flink.properties.auto.offset.reset`, Wert: `latest`
   + Schlüssel:`classification`, Wert: `json`

   Ohne diese Schlüssel/Wert-Paare tritt im Flink-Notebook ein Fehler auf. 

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

## Erstellen Sie ein Studio-Notebook mit Amazon MSK
<a name="example-notebook-msk-create"></a>

Nachdem Sie die Ressourcen erstellt haben, die Ihre Anwendung verwendet, erstellen Sie Ihr Studio-Notebook. 

**Topics**
+ [Erstellen Sie ein Studio-Notizbuch mit dem AWS-Managementkonsole](#example-notebook-create-msk-console)
+ [Erstellen Sie ein Studio-Notizbuch mit dem AWS CLI](#example-notebook-msk-create-api)

**Anmerkung**  
Sie können ein Studio-Notebook auch von der Amazon MSK-Konsole aus erstellen, indem Sie einen vorhandenen Cluster auswählen und dann **Daten in Echtzeit verarbeiten** wählen.

### Erstellen Sie ein Studio-Notizbuch mit dem AWS-Managementkonsole
<a name="example-notebook-create-msk-console"></a>

1. Die Managed Service for Apache Flink-Konsole zu [ https://console.aws.amazon.com/managed-flink/Hause öffnen? region=us-east-1\$1/applications/dashboard](https://console.aws.amazon.com/managed-flink/home?region=us-east-1#/applications/dashboard).

1. Wählen Sie auf der Seite **Managed Service für Apache Flink-Anwendungen** die Registerkarte **Studio** aus. Wählen Sie **Studio-Notebook erstellen**.
**Anmerkung**  
Um ein Studio-Notebook über die Amazon MSK- oder Kinesis Data Streams-Konsolen zu erstellen, wählen Sie Ihren Amazon MSK-Eingabe-Cluster oder Kinesis Data Stream aus und wählen Sie dann **Daten in Echtzeit verarbeiten** aus.

1. Geben Sie auf der Seite **Notebook-Instance erstellen** folgende Informationen ein:
   + Geben Sie **MyNotebook** als **Studio-Notebookname**.
   + Wählen Sie **Standard** für die **AWS -Glue-Datenbank**.

   Wählen Sie **Studio-Notebook erstellen**.

1. **Wählen Sie auf der Seite die Registerkarte Konfiguration aus. **MyNotebook**** Wählen Sie im Abschnitt **Netzwerk** die Option **Bearbeiten**.

1. Wählen Sie auf der MyNotebook Seite **Netzwerk bearbeiten für** die **VPC-Konfiguration basierend auf dem Amazon MSK-Cluster** aus. Wählen Sie Ihren Amazon MSK-Cluster für den **Amazon MSK-Cluster** aus. Wählen Sie **Änderungen speichern**.

1. **Wählen Sie auf der **MyNotebook**Seite die Option Ausführen aus.** Warten Sie, bis der **Status** **Wird ausgeführt** angezeigt wird.

### Erstellen Sie ein Studio-Notizbuch mit dem AWS CLI
<a name="example-notebook-msk-create-api"></a>

Gehen Sie wie folgt vor AWS CLI, um Ihr Studio-Notizbuch mit dem zu erstellen:

1. Stellen Sie sicher, dass Sie über die folgenden Informationen verfügen: Sie benötigen diese Werte, um Ihre Anwendung zu erstellen.
   + Ihre Konto-ID.
   + Das Subnetz IDs und die Sicherheitsgruppen-ID für die Amazon VPC, die Ihren Amazon MSK-Cluster enthält.

1. Erstellen Sie eine Datei mit dem Namen `create.json` und den folgenden Inhalten. Ersetzen Sie die Platzhalterwerte durch Ihre Informationen.

   ```
   {
       "ApplicationName": "MyNotebook",
       "RuntimeEnvironment": "ZEPPELIN-FLINK-3_0",
       "ApplicationMode": "INTERACTIVE",
       "ServiceExecutionRole": "arn:aws:iam::AccountID:role/ZeppelinRole",
       "ApplicationConfiguration": {
           "ApplicationSnapshotConfiguration": {
               "SnapshotsEnabled": false
           },
           "VpcConfigurations": [
               {
                   "SubnetIds": [
                       "SubnetID 1",
                       "SubnetID 2",
                       "SubnetID 3"
                   ],
                   "SecurityGroupIds": [
                       "VPC Security Group ID"
                   ]
               }
           ],
           "ZeppelinApplicationConfiguration": {
               "CatalogConfiguration": {
                   "GlueDataCatalogConfiguration": {
                       "DatabaseARN": "arn:aws:glue:us-east-1:AccountID:database/default"
                   }
               }
           }
       }
   }
   ```

1. Um Ihre Anwendung zu erstellen, führen Sie den folgenden Befehl aus.

   ```
   aws kinesisanalyticsv2 create-application --cli-input-json file://create.json 
   ```

1. Wenn der Befehl abgeschlossen ist, sollte eine Ausgabe wie die folgende angezeigt werden, die die Details für Ihr neues Studio-Notebook enthält:

   ```
   {
       "ApplicationDetail": {
           "ApplicationARN": "arn:aws:kinesisanalyticsus-east-1:012345678901:application/MyNotebook",
           "ApplicationName": "MyNotebook",
           "RuntimeEnvironment": "ZEPPELIN-FLINK-3_0",
           "ApplicationMode": "INTERACTIVE",
           "ServiceExecutionRole": "arn:aws:iam::012345678901:role/ZeppelinRole",
   ...
   ```

1. Um Ihre Anwendung zu starten, führen Sie den folgenden Befehl aus. Ersetzen Sie die Beispielwerte durch Ihre Konto-ID.

   ```
   aws kinesisanalyticsv2 start-application --application-arn arn:aws:kinesisanalyticsus-east-1:012345678901:application/MyNotebook\
   ```

## Senden Sie Daten an Ihren Amazon MSK-Cluster
<a name="example-notebook-msk-send"></a>

In diesem Abschnitt führen Sie ein Python-Skript in Ihrem EC2 Amazon-Client aus, um Daten an Ihre Amazon MSK-Datenquelle zu senden.

1. Connect zu Ihrem EC2 Amazon-Client her.

1. Führen Sie die folgenden Befehle aus, um Python Version 3, Pip und das Kafka für Python-Paket zu installieren, und bestätigen Sie die Aktionen:

   ```
   sudo yum install python37
   curl -O https://bootstrap.pypa.io/get-pip.py
   python3 get-pip.py --user
   pip install kafka-python
   ```

1. Konfigurieren Sie das AWS CLI auf Ihrem Client-Computer, indem Sie den folgenden Befehl eingeben:

   ```
   aws configure
   ```

   Geben Sie Ihre Kontoanmeldeinformationen ein, und **us-east-1** für die `region`.

1. Erstellen Sie eine Datei mit dem Namen `stock.py` und den folgenden Inhalten. Ersetzen Sie den Beispielwert durch die Bootstrap Brokers-Zeichenfolge Ihres Amazon MSK-Clusters und aktualisieren Sie den Themennamen, falls Ihr Thema nicht: **AWS KafkaTutorialTopic**

   ```
   from kafka import KafkaProducer
   import json
   import random
   from datetime import datetime
   
   BROKERS = "<<Bootstrap Broker List>>"
   producer = KafkaProducer(
       bootstrap_servers=BROKERS,
       value_serializer=lambda v: json.dumps(v).encode('utf-8'),
       retry_backoff_ms=500,
       request_timeout_ms=20000,
       security_protocol='PLAINTEXT')
   
   
   def getStock():
       data = {}
       now = datetime.now()
       str_now = now.strftime("%Y-%m-%d %H:%M:%S")
       data['event_time'] = str_now
       data['ticker'] = random.choice(['AAPL', 'AMZN', 'MSFT', 'INTC', 'TBV'])
       price = random.random() * 100
       data['price'] = round(price, 2)
       return data
   
   
   while True:
       data =getStock()
       # print(data)
       try:
           future = producer.send("AWSKafkaTutorialTopic", value=data)
           producer.flush()
           record_metadata = future.get(timeout=10)
           print("sent event to Kafka! topic {} partition {} offset {}".format(record_metadata.topic, record_metadata.partition, record_metadata.offset))
       except Exception as e:
           print(e.with_traceback())
   ```

1. Führen Sie das Skript mit dem folgenden Befehl aus:

   ```
   $ python3 stock.py
   ```

1. Lassen Sie das Skript laufen, während Sie den folgenden Abschnitt abschließen.

## Testen Sie Ihr Studio-Notebook
<a name="example-notebook-msk-test"></a>

In diesem Abschnitt verwenden Sie Ihr Studio-Notebook, um Daten aus Ihrem Amazon MSK-Cluster abzufragen.

1. [Die Managed Service for Apache Flink-Konsole zu Hause öffnen? https://console.aws.amazon.com/managed-flink/ region=us-east-1\$1/applications/dashboard](https://console.aws.amazon.com/managed-flink/home?region=us-east-1#/applications/dashboard).

1. Wählen Sie auf der Seite **Managed Service für Apache Flink-Anwendungen** die Registerkarte **Studio-Notebook** aus. Wählen Sie **MyNotebook**.

1. **Wählen Sie auf der Seite „In Apache Zeppelin öffnen“. **MyNotebook****

   Die Oberfläche von Apache Zeppelin wird in einer neuen Registerkarte geöffnet.

1. Auf der Seite **Willkommen bei Zeppelin\$1** wählen Sie **Zeppelin neue Notiz** aus.

1. Geben Sie auf der Seite **Zeppelin Notiz** die folgende Abfrage in eine neue Notiz ein:

   ```
   %flink.ssql(type=update)
   select * from stock
   ```

   Wählen Sie das Ausführungssymbol.

   Die Anwendung zeigt Daten aus dem Amazon MSK-Cluster an.

Um das Apache Flink-Dashboard für Ihre Anwendung zu öffnen und betriebliche Aspekte zu sehen, wählen Sie **FLINK JOB**. Weitere Informationen zum Flink-Dashboard finden Sie unter [Apache Flink-Dashboard](https://docs.aws.amazon.com/managed-flink/latest/java/how-dashboard.html) im [Managed Service für Apache Flink Entwicklerhandbuch](https://docs.aws.amazon.com/).

Weitere Beispiele für Flink-Streaming-SQL-Abfragen finden Sie unter [Abfragen](https://nightlies.apache.org/flink/flink-docs-release-1.15/dev/table/sql/queries.html) in der [Apache Flink-Dokumentation](https://nightlies.apache.org/flink/flink-docs-release-1.15/).

# Bereinigen Sie Ihre Anwendung und die abhängigen Ressourcen
<a name="example-notebook-cleanup"></a>

## Löschen Sie Ihr Studio-Notebook
<a name="example-notebook-cleanup-app"></a>

1. Öffnen Sie die Managed Service für Apache Flink-Konsole.

1. Wählen Sie **MyNotebook**.

1. Wählen Sie **Aktionen** und dann **Löschen** aus.

## Löschen Sie Ihre AWS Glue Datenbank und Ihre Verbindung
<a name="example-notebook-cleanup-glue"></a>

1. Öffnen Sie die AWS Glue Konsole unter [https://console.aws.amazon.com/glue/](https://console.aws.amazon.com/glue/).

1. Wählen Sie in der linken Navigationsleiste **Datenbanken** aus. Markieren Sie das Kontrollkästchen neben **Standard**, um es auszuwählen. Wählen Sie **Aktion**, **Datenbank löschen**. Bestätigen Sie Ihre Auswahl.

1. Wählen Sie in der linken Navigationsleiste **Verbindungen** aus. Markieren Sie das Kontrollkästchen neben, **ZeppelinConnection**um es auszuwählen. Wählen Sie **Aktion**, **Verbindung löschen**. Bestätigen Sie Ihre Auswahl.

## So löschen Sie die IAM-Rolle und -Richtlinie
<a name="example-notebook-msk-cleanup-iam"></a>

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

1. Klicken Sie in der linken Navigationsleiste auf **Rollen**.

1. Verwenden Sie die Suchleiste, um nach der **ZeppelinRole**Rolle zu suchen.

1. Wählen Sie die **ZeppelinRole**Rolle aus. Wählen Sie **Rolle löschen** aus. Bestätigen Sie das Löschen.

## Löschen Sie Ihre CloudWatch Protokollgruppe
<a name="example-notebook-cleanup-cw"></a>

Die Konsole erstellt eine CloudWatch Logs-Gruppe und einen Log-Stream für Sie, wenn Sie Ihre Anwendung mit der Konsole erstellen. Sie haben keine Protokollgruppe und keinen Stream, wenn Sie Ihre Anwendung mit der AWS CLI erstellt haben.

1. Öffnen Sie die CloudWatch Konsole unter [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/).

1. Wählen Sie in der linken Navigationsleiste **Protokollgruppen** aus.

1. Wählen Sie die Gruppe**/AWS/KinesisAnalytics/MyNotebook**log aus.

1. Wählen Sie **Actions (Aktionen)**, **Delete log group(s) (Protokollgruppe(n) löschen)** aus. Bestätigen Sie das Löschen.

## Kinesis Data Streams Streams-Ressourcen bereinigen
<a name="example-notebook-cleanup-streams"></a>

Um Ihren Kinesis Stream zu löschen, öffnen Sie die Kinesis Data Streams-Konsole, wählen Sie Ihren Kinesis Stream aus und wählen Sie **Aktionen**, **Löschen**.

## Bereinigen von MSK-Ressourcen
<a name="example-notebook-cleanup-msk"></a>

Führen Sie die Schritte in diesem Abschnitt aus, wenn Sie für dieses Tutorial einen Amazon MSK-Cluster erstellt haben. Dieser Abschnitt enthält Anweisungen zur Bereinigung Ihrer Amazon EC2-Client-Instance, Amazon VPC und Amazon MSK-Cluster.

### Löschen Sie Ihren Amazon MSK-Cluster
<a name="example-notebook-msk-cleanup-msk"></a>

Gehen Sie wie folgt vor, wenn Sie für dieses Tutorial einen Amazon MSK-Cluster erstellt haben.

1. Die Amazon MSK-Konsole zu [https://console.aws.amazon.com/msk/Hause öffnen? region=us-east-1\$1/home/](https://console.aws.amazon.com/msk/home?region=us-east-1#/home/).

1. Wählen Sie **AWS KafkaTutorialCluster**. Wählen Sie **Löschen** aus. Geben Sie **delete** in das angezeigte Fenster ein und bestätigen Sie Ihre Auswahl.

### Beenden Ihrer Client-Instance
<a name="example-notebook-msk-cleanup-client"></a>

Gehen Sie wie folgt vor, wenn Sie für dieses Tutorial eine Amazon EC2-Client-Instance erstellt haben.

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

1. Wählen Sie in der linken Navigationsleiste **Instances** aus.

1. Klicken Sie auf das Kästchen neben, um es auszuwählen. **ZeppelinClient**

1. Wählen Sie **Instance-Status**, **Instance beenden**.

### Löschen Ihrer Amazon VPC
<a name="example-notebook-msk-cleanup-vpc"></a>

Gehen Sie wie folgt vor, wenn Sie für dieses Tutorial eine Amazon VPC erstellt haben.

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

1. Wählen Sie in der linken Navigationsleiste **Netzwerkschnittstellen** aus.

1. Geben Sie Ihre VPC-ID in das Suchfeld ein und drücken Sie die Eingabetaste.

1. Aktivieren Sie das Kontrollkästchen in der Kopfzeile der Tabelle, um alle angezeigten Netzwerkschnittstellen auszuwählen.

1. Wählen Sie **Actions (Aktionen)**, **Loslösen (Detach)**. Wählen Sie in dem daraufhin angezeigten Fenster unter **Trennung erzwingen** die Option **Aktivieren** aus. Wählen Sie **Trennen** und warten Sie, bis alle Netzwerkschnittstellen den Status **Verfügbar** erreichen.

1. Aktivieren Sie das Kontrollkästchen in der Kopfzeile der Tabelle, um alle angezeigten Netzwerkschnittstellen erneut auszuwählen.

1. Wählen Sie **Aktionen**, **Löschen** aus. Bestätigen Sie die Aktion.

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

1. Wählen Sie **AWS KafkaTutorialVPC** aus. Wählen Sie **Aktionen**, **VPC löschen** aus. Geben Sie **delete** ein und bestätigen Sie den Löschvorgang.