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.
Herstellen einer Verbindung zu Ihrem Cluster mit Anmeldeinformationen
Nachdem Sie ein Secret erstellt und es Ihrem Cluster zugeordnet haben, können Sie Ihren Client mit dem Cluster verbinden. Das folgende Verfahren zeigt, wie Sie einen Client mit einem Cluster verbinden, der SASL/SCRAM Authentifizierung verwendet. Außerdem wird anhand eines Beispielthemas gezeigt, wie das Produzieren und das Konsumieren anhand eines Beispielthemas erfolgt.
Themen
Einen Client mithilfe der SASL/SCRAM Authentifizierung mit dem Cluster verbinden
-
Führen Sie den folgenden Befehl auf einem Computer aus, der AWS CLI installiert wurde.
clusterARN
Ersetzen Sie durch den ARN Ihres Clusters.aws kafka get-bootstrap-brokers --cluster-arn
clusterARN
Speichern Sie aus dem JSON-Ergebnis dieses Befehls den Wert, der der genannten Zeichenfolge zugeordnet ist
BootstrapBrokerStringSaslScram
. Sie werden diesen Wert in späteren Schritten verwenden. -
Erstellen Sie auf Ihrem Client-Computer eine JAAS-Konfigurationsdatei, die die in Ihrem Secret gespeicherten Benutzeranmeldeinformationen enthält. Erstellen Sie beispielsweise für den Benutzer alice eine Datei namens
users_jaas.conf
mit dem folgenden Inhalt.KafkaClient { org.apache.kafka.common.security.scram.ScramLoginModule required username="alice" password="alice-secret"; };
-
Verwenden Sie den folgenden Befehl, um Ihre JAAS-Konfigurationsdatei als
KAFKA_OPTS
-Umgebungsparameter zu exportieren.export KAFKA_OPTS=-Djava.security.auth.login.config=
<path-to-jaas-file>
/users_jaas.conf -
Erstellen Sie in einem
/tmp
-Verzeichnis eine Datei namenskafka.client.truststore.jks
. -
(Optional) Verwenden Sie den folgenden Befehl, um die JDK-Schlüsselspeicherdatei aus Ihrem
cacerts
JVM-Ordner in diekafka.client.truststore.jks
Datei zu kopieren, die Sie im vorherigen Schritt erstellt haben.JDKFolder
Ersetzen Sie ihn durch den Namen des JDK-Ordners auf Ihrer Instanz. Beispielsweise könnte Ihr JDK-Ordnerjava-1.8.0-openjdk-1.8.0.201.b09-0.amzn2.x86_64
benannt sein.cp /usr/lib/jvm/
JDKFolder
/lib/security/cacerts /tmp/kafka.client.truststore.jks -
Erstellen Sie im
bin
-Verzeichnis Ihrer Apache-Kafka-Installation eine Client-Eigenschaftendatei namensclient_sasl.properties
mit dem folgenden Inhalt. Diese Datei definiert den SASL-Mechanismus und das SASL-Protokoll.security.protocol=SASL_SSL sasl.mechanism=SCRAM-SHA-512
-
Führen Sie den folgenden Befehl aus, um ein Beispielthema zu erstellen.
BootstrapBrokerStringSaslScram
Ersetzen Sie es durch die Bootstrap-Broker-Zeichenfolge, die Sie in Schritt 1 dieses Themas abgerufen haben.<path-to-your-kafka-installation>
/bin/kafka-topics.sh --create --bootstrap-serverBootstrapBrokerStringSaslScram
--command-config<path-to-client-properties>
/client_sasl.properties --replication-factor 3 --partitions 1 --topic ExampleTopicName -
Führen Sie den folgenden Befehl auf Ihrem Client-Computer aus, um in dem von Ihnen erstellten Beispielthema zu produzieren.
BootstrapBrokerStringSaslScram
Ersetzen Sie sie durch die Bootstrap-Broker-Zeichenfolge, die Sie in Schritt 1 dieses Themas abgerufen haben.<path-to-your-kafka-installation>
/bin/kafka-console-producer.sh --broker-listBootstrapBrokerStringSaslScram
--topicExampleTopicName
--producer.config client_sasl.properties -
Führen Sie den folgenden Befehl auf Ihrem Client-Computer aus, um aus dem von Ihnen erstellten Thema zu verbrauchen.
BootstrapBrokerStringSaslScram
Ersetzen Sie sie durch die Bootstrap-Broker-Zeichenfolge, die Sie in Schritt 1 dieses Themas abgerufen haben.<path-to-your-kafka-installation>
/bin/kafka-console-consumer.sh --bootstrap-serverBootstrapBrokerStringSaslScram
--topicExampleTopicName
--from-beginning --consumer.config client_sasl.properties
Fehlerbehebung bei Verbindungsproblemen
Beim Ausführen von Kafka-Client-Befehlen können Java-Heap-Speicherfehler auftreten, insbesondere bei der Arbeit mit großen Themen oder Datensätzen. Diese Fehler treten auf, weil Kafka-Tools als Java-Anwendungen mit Standardspeichereinstellungen ausgeführt werden, die für Ihre Arbeitslast möglicherweise nicht ausreichen.
Um Out of Memory Java Heap
Fehler zu beheben, können Sie die Größe des Java-Heaps erhöhen, indem Sie die KAFKA_OPTS
Umgebungsvariable so ändern, dass sie Speichereinstellungen enthält.
Im folgenden Beispiel wird die maximale Heap-Größe auf 1 GB () festgelegt. -Xmx1G
Sie können diesen Wert an Ihren verfügbaren Systemspeicher und Ihre Anforderungen anpassen.
export KAFKA_OPTS="-Djava.security.auth.login.config=
<path-to-jaas-file>
/users_jaas.conf -Xmx1G"
Bei umfangreichen Themen sollten Sie die Verwendung von zeit- oder offsetbasierten Parametern in Betracht ziehen, anstatt die Speicherbelegung --from-beginning
zu begrenzen:
<path-to-your-kafka-installation>
/bin/kafka-console-consumer.sh --bootstrap-serverBootstrapBrokerStringSaslScram
--topicExampleTopicName
--max-messages 1000 --consumer.config client_sasl.properties