Connexion à votre cluster à l'aide des informations d'identification de connexion - Amazon Managed Streaming for Apache Kafka

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Connexion à votre cluster à l'aide des informations d'identification de connexion

Après avoir créé un secret et l'avoir associé à votre cluster, vous pouvez connecter votre client au cluster. La procédure suivante montre comment connecter un client à un cluster qui utilise SASL/SCRAM l'authentification. Il montre également comment produire et consommer à partir d'un exemple de sujet.

Connexion d'un client au cluster à l'aide de l' SASL/SCRAM authentification

  1. Exécutez la commande suivante sur une machine déjà AWS CLI installée. clusterARNRemplacez-le par l'ARN de votre cluster.

    aws kafka get-bootstrap-brokers --cluster-arn clusterARN

    À partir du résultat JSON de cette commande, enregistrez la valeur associée à la chaîne nomméeBootstrapBrokerStringSaslScram. Vous utiliserez cette valeur dans les étapes suivantes.

  2. Sur votre ordinateur client, créez un fichier de configuration JAAS contenant les informations d'identification d'utilisateur stockées dans votre secret. Par exemple, pour l'utilisateur alice, créez un fichier appelé users_jaas.conf avec le contenu suivant.

    KafkaClient { org.apache.kafka.common.security.scram.ScramLoginModule required username="alice" password="alice-secret"; };
  3. Utilisez la commande suivante pour exporter votre fichier de configuration JAAS en tant que paramètre d'environnement KAFKA_OPTS.

    export KAFKA_OPTS=-Djava.security.auth.login.config=<path-to-jaas-file>/users_jaas.conf
  4. Créez un fichier nommé kafka.client.truststore.jks dans un répertoire /tmp.

  5. (Facultatif) Utilisez la commande suivante pour copier le fichier de stockage de clés JDK de votre cacerts dossier JVM dans le kafka.client.truststore.jks fichier que vous avez créé à l'étape précédente. JDKFolderRemplacez-le par le nom du dossier JDK de votre instance. Par exemple, votre dossier JDK peut être nommé java-1.8.0-openjdk-1.8.0.201.b09-0.amzn2.x86_64.

    cp /usr/lib/jvm/JDKFolder/lib/security/cacerts /tmp/kafka.client.truststore.jks
  6. Dans le répertoire bin de votre installation d'Apache Kafka, créez un fichier de propriétés client appelé client_sasl.properties avec le contenu suivant. Ce fichier définit le mécanisme et le protocole SASL.

    security.protocol=SASL_SSL sasl.mechanism=SCRAM-SHA-512
  7. Pour créer un exemple de rubrique, exécutez la commande suivante. BootstrapBrokerStringSaslScramRemplacez-la par la chaîne bootstrap broker que vous avez obtenue à l'étape 1 de cette rubrique.

    <path-to-your-kafka-installation>/bin/kafka-topics.sh --create --bootstrap-server BootstrapBrokerStringSaslScram --command-config <path-to-client-properties>/client_sasl.properties --replication-factor 3 --partitions 1 --topic ExampleTopicName
  8. Pour produire un exemple de rubrique que vous avez créé, exécutez la commande suivante sur votre ordinateur client. BootstrapBrokerStringSaslScramRemplacez-la par la chaîne du broker bootstrap que vous avez récupérée à l'étape 1 de cette rubrique.

    <path-to-your-kafka-installation>/bin/kafka-console-producer.sh --broker-list BootstrapBrokerStringSaslScram --topic ExampleTopicName --producer.config client_sasl.properties
  9. Pour consommer à partir de la rubrique que vous avez créée, exécutez la commande suivante sur votre ordinateur client. BootstrapBrokerStringSaslScramRemplacez-la par la chaîne bootstrap broker que vous avez obtenue à l'étape 1 de cette rubrique.

    <path-to-your-kafka-installation>/bin/kafka-console-consumer.sh --bootstrap-server BootstrapBrokerStringSaslScram --topic ExampleTopicName --from-beginning --consumer.config client_sasl.properties

Dépannage des problèmes de connexion

Lorsque vous exécutez les commandes du client Kafka, vous pouvez rencontrer des erreurs de mémoire Java Heap, en particulier lorsque vous travaillez avec des sujets ou des ensembles de données volumineux. Ces erreurs se produisent parce que les outils Kafka s'exécutent en tant qu'applications Java avec des paramètres de mémoire par défaut qui peuvent être insuffisants pour votre charge de travail.

Pour résoudre Out of Memory Java Heap les erreurs, vous pouvez augmenter la taille du segment de mémoire Java en modifiant la variable d'KAFKA_OPTSenvironnement pour inclure les paramètres de mémoire.

L'exemple suivant définit la taille maximale du tas à 1 Go ()-Xmx1G. Vous pouvez ajuster cette valeur en fonction de la mémoire système disponible et de vos exigences.

export KAFKA_OPTS="-Djava.security.auth.login.config=<path-to-jaas-file>/users_jaas.conf -Xmx1G"

Si vous abordez des sujets volumineux, pensez à utiliser des paramètres basés sur le temps ou le décalage plutôt que de limiter l'utilisation --from-beginning de la mémoire :

<path-to-your-kafka-installation>/bin/kafka-console-consumer.sh --bootstrap-server BootstrapBrokerStringSaslScram --topic ExampleTopicName --max-messages 1000 --consumer.config client_sasl.properties