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.
Étape 4 : créer une rubrique dans le cluster Amazon MSK
Lors de cette étape de Mise en route avec Amazon MSK, vous installez les bibliothèques clientes et les outils Apache Kafka sur l'ordinateur client, puis vous créez une rubrique.
Avertissement
Les numéros de version d'Apache Kafka utilisés dans ce didacticiel ne sont que des exemples. Nous vous recommandons d'utiliser la même version du client que votre version de cluster MSK. Certaines fonctionnalités et corrections de bogues critiques peuvent être absentes d'une ancienne version du client.
Déterminer la version de votre cluster MSK
Ouvrez la console Amazon MSK à l'adresse https://console.aws.amazon.com/msk/
. -
Dans la barre de navigation, choisissez la région dans laquelle vous avez créé le cluster MSK.
Choisissez le cluster MSK.
Notez la version d'Apache Kafka utilisée sur le cluster.
Remplacez les instances des numéros de version d'Amazon MSK dans ce didacticiel par la version obtenue à l'étape 3.
Création d'un sujet sur la machine cliente
-
Connectez-vous à votre machine cliente.
Ouvrez la EC2 console Amazon à l'adresse https://console.aws.amazon.com/ec2/
. -
Dans le panneau de navigation, choisissez Instances. Cochez ensuite la case à côté du nom de la machine cliente dans laquelle vous l'avez crééeÉtape 3 : Créer un ordinateur client.
-
Choisissez Actions, puis Modifier. Suivez les instructions dans la console pour vous connecter à votre ordinateur client.
-
Installez Java et configurez la variable d'environnement de version de Kafka.
-
Installez Java sur la machine cliente en exécutant la commande suivante.
sudo yum -y install java-11
-
Stockez la version Kafka de votre cluster MSK dans la variable d'environnement
KAFKA_VERSION
, comme indiqué dans la commande suivante. Vous aurez besoin de ces informations tout au long de la configuration.export KAFKA_VERSION=
{KAFKA VERSION}
Par exemple, si vous utilisez la version 3.6.0, utilisez la commande suivante.
export KAFKA_VERSION=3.6.0
-
-
Téléchargez et décompressez Apache Kafka.
-
Exécutez la commande suivante pour télécharger Apache Kafka.
wget https://archive.apache.org/dist/kafka/$KAFKA_VERSION/kafka_2.13-$KAFKA_VERSION.tgz
Par exemple, si votre cluster MSK utilise Apache Kafka version 3.6.0, exécutez la commande suivante.
wget https://archive.apache.org/dist/kafka/3.6.0/kafka_2.13-3.6.0.tgz
Note
La liste suivante présente des informations de téléchargement alternatives de Kafka que vous pouvez utiliser en cas de problème.
-
Si vous rencontrez des problèmes de connectivité ou si vous souhaitez utiliser un site miroir, essayez d'utiliser le sélecteur de miroir Apache, comme indiqué dans la commande suivante.
wget https://www.apache.org/dyn/closer.cgi?path=/kafka/$KAFKA_VERSION/kafka_2.13-$KAFKA_VERSION.tgz
-
Téléchargez une version appropriée directement depuis le site Web d'Apache Kafka
.
-
-
Exécutez la commande suivante dans le répertoire où vous avez téléchargé le fichier TAR à l'étape précédente.
tar -xzf kafka_2.13-$KAFKA_VERSION.tgz
-
Enregistrez le chemin complet du répertoire nouvellement créé dans la variable d'
KAFKA_ROOT
environnement.export KAFKA_ROOT=$(pwd)/kafka_2.13-$KAFKA_VERSION
-
-
Configurez l'authentification pour votre cluster MSK.
-
Téléchargez la dernière version du fichier JAR Amazon MSK IAM dans le
$KAFKA_ROOT/libs
répertoire. Utilisez la commande suivante pour télécharger le fichier et remplacez-le{LATEST VERSION}
par le numéro de version réel.cd $KAFKA_ROOT/libs wget https://github.com/aws/aws-msk-iam-auth/releases/latest/download/aws-msk-iam-auth-
{LATEST VERSION}
-all.jarLe fichier JAR Amazon MSK IAM permet à votre machine cliente d'accéder au cluster MSK à l'aide de l'authentification IAM.
Note
Avant d'exécuter des commandes Kafka qui interagissent avec votre cluster MSK, vous devrez peut-être ajouter le fichier Amazon MSK IAM JAR à votre chemin de classe Java. Définissez la variable d'
CLASSPATH
environnement, comme indiqué dans l'exemple suivant.export CLASSPATH=$KAFKA_ROOT/libs/aws-msk-iam-auth-
{LATEST VERSION}
-all.jarCela définit la valeur
CLASSPATH
pour l'ensemble de votre session, rendant le JAR disponible pour toutes les commandes Kafka suivantes. -
Accédez au
$KAFKA_ROOT/config
répertoire pour créer le fichier de configuration du client.cd $KAFKA_ROOT/config
-
Copiez les paramètres de propriété suivants et collez-les dans un nouveau fichier. Enregistrez le fichier sous le nom
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
-
-
(Facultatif) Si vous rencontrez des problèmes liés à la mémoire ou si vous travaillez avec un grand nombre de sujets ou de partitions, vous pouvez ajuster la taille du segment de mémoire Java pour les outils Kafka. Pour ce faire, définissez la variable d'
KAFKA_HEAP_OPTS
environnement avant d'exécuter les commandes Kafka.L'exemple suivant définit à la fois la taille maximale et la taille initiale du tas à 512 mégaoctets. Ajustez ces valeurs en fonction de vos besoins spécifiques et des ressources système disponibles.
export KAFKA_HEAP_OPTS="-Xmx512M -Xms512M"
-
Obtenez les informations de connexion à votre cluster.
Ouvrez la console Amazon MSK à l'adresse https://console.aws.amazon.com/msk/
. -
Attendez que le statut de votre cluster devienne Actif. Cela peut prendre plusieurs minutes. Lorsque le statut devient Actif, choisissez le nom du cluster. Cela vous amène à une page contenant le récapitulatif du cluster.
-
Choisissez Afficher les informations sur le client.
-
Copiez la chaîne de connexion pour le point de terminaison privé.
Vous obtiendrez trois points de terminaison pour chacun des courtiers. Stockez l'une de ces chaînes de connexion dans la variable d'environnement
BOOTSTRAP_SERVER
, comme indiqué dans la commande suivante. Remplacez<bootstrap-server-string>
par la valeur réelle de la chaîne de connexion.export BOOTSTRAP_SERVER=
<bootstrap-server-string>
-
Exécutez la commande suivante pour créer le sujet.
$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
Si vous obtenez un
NoSuchFileException
pour leclient.properties
fichier, assurez-vous que ce fichier existe dans le répertoire de travail actuel du répertoire bin de Kafka.Note
Si vous préférez ne pas définir la variable d'
CLASSPATH
environnement pour l'ensemble de votre session, vous pouvez également préfixer chaque commande Kafka par laCLASSPATH
variable. Cette approche applique le chemin de classe uniquement à cette commande spécifique.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 -
(Facultatif) Vérifiez que le sujet a été créé correctement.
-
Si la commande aboutit, le message suivant devrait s'afficher :
Created topic MSKTutorialTopic.
-
Répertoriez tous les sujets pour confirmer l'existence de votre sujet.
$KAFKA_ROOT/bin/kafka-topics.sh --list --bootstrap-server $BOOTSTRAP_SERVER --command-config $KAFKA_ROOT/config/client.properties
Si la commande échoue ou si vous rencontrez une erreur, consultez Résoudre les problèmes liés à votre cluster Amazon MSK les informations de dépannage.
-
-
(Facultatif) Si vous souhaitez conserver vos variables d'environnement pour les prochaines étapes de ce didacticiel, ignorez cette étape. Dans le cas contraire, vous pouvez annuler la définition des variables, comme indiqué dans l'exemple suivant.
unset KAFKA_VERSION KAFKA_ROOT BOOTSTRAP_SERVER CLASSPATH KAFKA_HEAP_OPTS
Étape suivante
Étape 5 : Produire et consommer des données