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éation d'une rubrique dans le cluster Amazon MSK
Au cours de cette étape de la section Commencer à utiliser Amazon MSK, vous pouvez créer une rubrique selon l'une des deux approches suivantes : en utilisant des AWS outils natifs avec l' CreateTopic API ou en utilisant les AdminClient outils Apache Kafka sur un ordinateur client.
Avertissement
Lorsque vous utilisez AWS des outils avec l' CreateTopic API, vérifiez que votre cluster répond aux exigences. Pour plus de détails, consultez la section Exigences relatives à l'utilisation des API de rubrique.
Avertissement
Lorsque vous utilisez AdminClient cette approche, 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 bugs critiques peuvent être absentes d'une ancienne version du client.
Rubriques
Création d'un sujet à l'aide de AWS outils
Vous pouvez créer des sujets dans votre cluster MSK à l'aide d' AWS outils tels que la AWS CLI, AWS les SDK ou la console de AWS gestion. Cette approche fournit un moyen rationalisé de gérer les sujets sans avoir besoin d'un accès direct aux outils du client Kafka.
Pour obtenir des informations détaillées sur la création de rubriques à l'aide AWS des outils, consultez le guide du développeur d'CreateTopic API.
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 console Amazon EC2 à 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 avez crééÉ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 la version 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 extrayez 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.tgzNote
La liste suivante présente quelques informations de téléchargement alternatives de Kafka que vous pouvez utiliser si vous rencontrez des problèmes.
-
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 -
Stockez le chemin complet vers le répertoire nouvellement créé dans la variable d'
KAFKA_ROOTenvironnement.export KAFKA_ROOT=$(pwd)/kafka_2.13-$KAFKA_VERSION
-
-
Configurez l'authentification pour votre cluster MSK.
-
Trouvez la dernière version
de la bibliothèque cliente Amazon MSK IAM. Cette bibliothèque permet à votre machine cliente d'accéder au cluster MSK à l'aide de l'authentification IAM. -
À l'aide des commandes suivantes, accédez au
$KAFKA_ROOT/libsrépertoire et téléchargez le fichier JAR Amazon MSK IAM associé que vous avez trouvé à l'étape précédente. Assurez-vous de le remplacer{LATEST VERSION}par le numéro de version que vous êtes en train de télécharger.cd $KAFKA_ROOT/libswget https://github.com/aws/aws-msk-iam-auth/releases/latest/download/aws-msk-iam-auth-{LATEST VERSION}-all.jarNote
Avant d'exécuter des commandes Kafka qui interagissent avec votre cluster MSK, vous devrez peut-être ajouter le fichier JAR Amazon MSK IAM à votre chemin de classe Java. Définissez la variable d'
CLASSPATHenvironnement, comme illustré dans l'exemple suivant.export CLASSPATH=$KAFKA_ROOT/libs/aws-msk-iam-auth-{LATEST VERSION}-all.jarCela le définit
CLASSPATHpour l'ensemble de votre session, rendant le JAR disponible pour toutes les commandes Kafka suivantes. -
Accédez au
$KAFKA_ROOT/configré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) Ajustez la taille du tas Java pour les outils Kafka.
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 tas Java. Pour ce faire, définissez la variable d'
KAFKA_HEAP_OPTSenvironnement avant d'exécuter les commandes Kafka.L'exemple suivant définit la taille de tas maximale et initiale à 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 MSKTutorialTopicSi vous obtenez un
NoSuchFileExceptionpour leclient.propertiesfichier, 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'
CLASSPATHenvironnement pour l'ensemble de votre session, vous pouvez également préfixer chaque commande Kafka avec cette variable.CLASSPATHCette 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) Supprimez les variables d'environnement que vous avez utilisées dans ce didacticiel.
Si vous souhaitez conserver vos variables d'environnement pour les prochaines étapes de ce didacticiel, ignorez cette étape. Sinon, vous pouvez désactiver ces 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