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.
Schritt 4: Erstellen Sie ein Thema im Amazon MSK-Cluster
In diesem Schritt von Erste Schritte mit Amazon MSK installieren Sie Apache-Kafka-Client-Bibliotheken und -Tools auf dem Client-Computer und erstellen dann ein Thema.
Warnung
Die in diesem Tutorial verwendeten Versionsnummern von Apache Kafka sind nur Beispiele. Es wird empfohlen, dieselbe Version des Clients wie die MSK-Cluster-Version zu verwenden. In einer älteren Client-Version fehlen möglicherweise bestimmte Funktionen und kritische Bugfixes.
Ermitteln Sie Ihre MSK-Cluster-Version
Öffnen Sie die Amazon-MSK-Konsole unter https://console.aws.amazon.com/msk/
. -
Wählen Sie in der Navigationsleiste die Region aus, in der Sie den MSK-Cluster erstellt haben.
Wählen Sie den MSK-Cluster aus.
Notieren Sie sich die Version von Apache Kafka, die auf dem Cluster verwendet wird.
Ersetzen Sie die Amazon-MSK-Versionsnummern in diesem Tutorial durch die in Schritt 3 erhaltene Version.
Ein Thema auf dem Client-Computer erstellen
-
Connect zu Ihrem Client-Computer her.
Öffnen Sie die EC2 Amazon-Konsole unter https://console.aws.amazon.com/ec2/
. -
Wählen Sie im Navigationsbereich Instances aus. Aktivieren Sie dann das Kontrollkästchen neben dem Namen des Client-Computers, auf dem Sie ihn erstellt habenSchritt 3: Einen Client-Computer erstellen.
-
Klicken Sie auf Actions (Aktionen) und anschließend auf Connect (Verbinden). Folgen Sie den Anweisungen in der Konsole, um eine Verbindung zum Client-Computer herzustellen.
-
Installieren Sie Java und richten Sie die Umgebungsvariable Kafka-Version ein.
-
Installieren Sie Java auf dem Client-Computer, indem Sie den folgenden Befehl ausführen.
sudo yum -y install java-11
-
Speichern Sie die Kafka-Version Ihres MSK-Clusters in der Umgebungsvariablen
KAFKA_VERSION
, wie im folgenden Befehl gezeigt. Sie benötigen diese Informationen während des gesamten Setups.export KAFKA_VERSION=
{KAFKA VERSION}
Wenn Sie beispielsweise Version 3.6.0 verwenden, verwenden Sie den folgenden Befehl.
export KAFKA_VERSION=3.6.0
-
-
Laden Sie Apache Kafka herunter und entpacken Sie es.
-
Führen Sie den folgenden Befehl aus, um Apache Kafka herunterzuladen.
wget https://archive.apache.org/dist/kafka/$KAFKA_VERSION/kafka_2.13-$KAFKA_VERSION.tgz
Wenn Ihr MSK-Cluster beispielsweise Apache Kafka Version 3.6.0 verwendet, führen Sie den folgenden Befehl aus.
wget https://archive.apache.org/dist/kafka/3.6.0/kafka_2.13-3.6.0.tgz
Anmerkung
Die folgende Liste enthält einige alternative Kafka-Download-Informationen, die Sie verwenden können, falls Probleme auftreten.
-
Wenn Sie Verbindungsprobleme haben oder eine Mirror-Site verwenden möchten, versuchen Sie es mit dem Apache-Mirror-Selektor, wie im folgenden Befehl gezeigt.
wget https://www.apache.org/dyn/closer.cgi?path=/kafka/$KAFKA_VERSION/kafka_2.13-$KAFKA_VERSION.tgz
-
Laden Sie eine entsprechende Version direkt von der Apache Kafka-Website
herunter.
-
-
Führen Sie den folgenden Befehl in dem Verzeichnis aus, in das Sie im vorherigen Schritt die TAR-Datei heruntergeladen haben.
tar -xzf kafka_2.13-$KAFKA_VERSION.tgz
-
Speichern Sie den vollständigen Pfad zum neu erstellten Verzeichnis in der
KAFKA_ROOT
Umgebungsvariablen.export KAFKA_ROOT=$(pwd)/kafka_2.13-$KAFKA_VERSION
-
-
Richten Sie die Authentifizierung für Ihren MSK-Cluster ein.
-
Laden Sie die neueste Version der Amazon MSK IAM JAR-Datei im
$KAFKA_ROOT/libs
Verzeichnis herunter. Verwenden Sie den folgenden Befehl, um die Datei herunterzuladen, und{LATEST VERSION}
ersetzen Sie sie durch die tatsächliche Versionsnummer.cd $KAFKA_ROOT/libs wget https://github.com/aws/aws-msk-iam-auth/releases/latest/download/aws-msk-iam-auth-
{LATEST VERSION}
-all.jarDie Amazon MSK IAM JAR-Datei ermöglicht Ihrem Client-Computer den Zugriff auf den MSK-Cluster mithilfe der IAM-Authentifizierung.
Anmerkung
Bevor Sie irgendwelche Kafka-Befehle ausführen, die mit Ihrem MSK-Cluster interagieren, müssen Sie möglicherweise die Amazon MSK IAM JAR-Datei zu Ihrem Java-Klassenpfad hinzufügen. Stellen Sie die
CLASSPATH
Umgebungsvariable ein, wie im folgenden Beispiel gezeigt.export CLASSPATH=$KAFKA_ROOT/libs/aws-msk-iam-auth-
{LATEST VERSION}
-all.jarDadurch wird die
CLASSPATH
für Ihre gesamte Sitzung festgelegt, sodass die JAR für alle nachfolgenden Kafka-Befehle verfügbar ist. -
Gehen Sie in das
$KAFKA_ROOT/config
Verzeichnis, in dem Sie die Client-Konfigurationsdatei erstellen möchten.cd $KAFKA_ROOT/config
-
Kopieren Sie die folgenden Eigenschaften-Einstellungen und fügen Sie sie in eine neue Datei ein. Speichern Sie die Datei als
client.properties
.security.protocol=SASL_SSL sasl.mechanism=AWS_MSK_IAM sasl.jaas.config=software.amazon.msk.auth.iam.IAMLoginModule required; sasl.client.callback.handler.class=software.amazon.msk.auth.iam.IAMClientCallbackHandler
-
-
(Optional) Wenn Sie auf Speicherprobleme stoßen oder mit einer großen Anzahl von Themen oder Partitionen arbeiten, können Sie die Java-Heap-Größe für Kafka-Tools anpassen. Stellen Sie dazu die
KAFKA_HEAP_OPTS
Umgebungsvariable ein, bevor Sie Kafka-Befehle ausführen.Im folgenden Beispiel werden sowohl die maximale als auch die anfängliche Heap-Größe auf 512 Megabyte festgelegt. Passen Sie diese Werte an Ihre spezifischen Anforderungen und verfügbaren Systemressourcen an.
export KAFKA_HEAP_OPTS="-Xmx512M -Xms512M"
-
Rufen Sie Ihre Cluster-Verbindungsinformationen ab.
Öffnen Sie die Amazon-MSK-Konsole unter https://console.aws.amazon.com/msk/
. -
Warten Sie, bis der Status Ihres Clusters Aktiv ist. Dies kann einige Minuten dauern. Wenn der Status Aktiv lautet, wählen Sie den Cluster-Namen aus. Dadurch gelangen Sie zu einer Seite mit der Cluster-Zusammenfassung.
-
Wählen Sie Client-Informationen anzeigen.
-
Kopieren Sie die Verbindungszeichenfolge für den privaten Endpunkt.
Sie erhalten drei Endpunkte für jeden der Broker. Speichern Sie eine dieser Verbindungszeichenfolgen in der Umgebungsvariablen
BOOTSTRAP_SERVER
, wie im folgenden Befehl gezeigt.<bootstrap-server-string>
Ersetzen Sie durch den tatsächlichen Wert der Verbindungszeichenfolge.export BOOTSTRAP_SERVER=
<bootstrap-server-string>
-
Führen Sie den folgenden Befehl aus, um das Thema zu erstellen.
$KAFKA_ROOT/bin/kafka-topics.sh --create --bootstrap-server $BOOTSTRAP_SERVER --command-config $KAFKA_ROOT/config/client.properties --replication-factor 3 --partitions 1 --topic MSKTutorialTopic
Wenn Sie eine
NoSuchFileException
für dieclient.properties
Datei erhalten, stellen Sie sicher, dass diese Datei im aktuellen Arbeitsverzeichnis innerhalb des Kafka-Verzeichnisses bin existiert.Anmerkung
Wenn Sie es vorziehen, die
CLASSPATH
Umgebungsvariable nicht für Ihre gesamte Sitzung festzulegen, können Sie alternativ jedem Kafka-Befehl dieCLASSPATH
Variable voranstellen. Bei diesem Ansatz wird der Klassenpfad nur auf diesen speziellen Befehl angewendet.CLASSPATH=$KAFKA_ROOT/libs/aws-msk-iam-auth-
{LATEST VERSION}
-all.jar \ $KAFKA_ROOT/bin/kafka-topics.sh --create \ --bootstrap-server $BOOTSTRAP_SERVER \ --command-config $KAFKA_ROOT/config/client.properties \ --replication-factor 3 \ --partitions 1 \ --topic MSKTutorialTopic -
(Optional) Vergewissern Sie sich, dass das Thema erfolgreich erstellt wurde.
-
Wenn der Befehl erfolgreich ist, sollte die folgende Meldung angezeigt werden:
Created topic MSKTutorialTopic.
-
Listen Sie alle Themen auf, um zu bestätigen, dass Ihr Thema existiert.
$KAFKA_ROOT/bin/kafka-topics.sh --list --bootstrap-server $BOOTSTRAP_SERVER --command-config $KAFKA_ROOT/config/client.properties
Wenn der Befehl nicht erfolgreich ist oder Sie auf einen Fehler stoßen, finden Sie Informationen Problembehandlung bei Ihrem Amazon MSK-Cluster zur Problembehandlung unter.
-
-
(Optional) Wenn Sie Ihre Umgebungsvariablen für die nächsten Schritte in diesem Tutorial behalten möchten, überspringen Sie diesen Schritt. Andernfalls können Sie die Variablen rückgängig machen, wie im folgenden Beispiel gezeigt.
unset KAFKA_VERSION KAFKA_ROOT BOOTSTRAP_SERVER CLASSPATH KAFKA_HEAP_OPTS
Nächster Schritt
Schritt 5: Produzieren und Verbrauchen von Daten