Remarque :
- Ce tutoriel nécessite un accès à Oracle Cloud. Pour vous inscrire à un compte gratuit, reportez-vous à Introduction à Oracle Cloud Infrastructure Free Tier.
- Il utilise des exemples de valeur pour les informations d'identification Oracle Cloud Infrastructure, la location et les compartiments. A la fin de votre atelier, remplacez ces valeurs par celles propres à votre environnement cloud.
Collecter les journaux d'OCI Logging dans Logstash à l'aide d'OCI Streaming en tant que serveur Kafka
Introduction
Oracle Cloud Infrastructure (OCI) Streaming permet aux utilisateurs d'Apache Kafka de décharger la configuration, la maintenance et la gestion de l'infrastructure dont votre propre cluster Zookeeper et Kafka a besoin. Streaming est compatible avec la plupart des API Kafka, ce qui vous permet d'utiliser des applications écrites pour Kafka afin d'envoyer des messages au service Streaming et de les recevoir sans avoir à réécrire votre code.
Dans ce tutoriel, vous pouvez apprendre à utiliser le service OCI Streaming en tant que serveur Kafka. Ce service reçoit les demandes de publication avec les journaux du service OCI Logging et abonne les demandes d'un serveur Logstash en dehors d'OCI.
Objectifs
- Créer un hub de connecteur de service OCI
- Créer et utiliser OCI Streaming en tant que serveur Kafka
- Obtenez des journaux à partir du service OCI Logging et redirigez-les, à l'aide d'OCI Service Connector Hub et d'OCI Streaming Kafka vers Logstash
Prérequis
-
Compte Oracle Cloud. Si vous n'avez pas de compte, vous pouvez vous inscrire à un compte Niveau gratuit Oracle Cloud.
-
Pour chaque service dans OCI, vous devez fournir des stratégies permettant aux services de communiquer entre eux. Pour plus d'informations, reportez-vous aux liens suivants.
Architecture
Nous utiliserons les services OCI suivants dans ce tutoriel : OCI Logging, OCI Service Connector Hub et OCI Streaming, comme indiqué dans l'architecture suivante :
Tâche 1 : configuration d'Oracle Cloud Infrastructure
-
Créez un pool de flux de données comme un serveur Kafka.
-
Créez un flux de données. Cela sera considéré comme un sujet Kafka. Vous aurez besoin du nom du flux pour indiquer le sujet dans lequel publier ou vous abonner à OCI Streaming en tant que serveur Kafka.
-
Création d'un connecteur de service. Une fois le flux créé, vous pouvez créer le connecteur de service. Vous allez ajouter la journalisation source et la diffusion en continu cible comme indiqué dans l'image suivante :
-
Pour la configuration source, laissez les valeurs du groupe de journaux et des journaux vides. Le connecteur prendra donc tous les journaux de la location, comme indiqué dans l'image suivante :
-
Pour la configuration cible, indiquez le nom du flux précédemment créé.
-
Tâche 2 : configurer le serveur Logstash
-
Selon vos préférences, créez une instance de machine virtuelle et configurez-la de sorte qu'elle dispose d'un accès
ssh
ou utilisez votre station locale avec un accès Internet. -
Téléchargez Logstash dans l'instance dont vous souhaitez disposer du serveur Logstash. Dans ce tutoriel, nous avons utilisé
v8.6.1
. -
Une fois le téléchargement terminé, décompressez le package et accédez au dossier Logstash.
-
Créez deux fichiers : input.conf et jaas.conf comme indiqué dans les fragments de code suivants.
input.conf
input { kafka { bootstrap_servers => "cell-1.streaming.<oci_region>.oci.oraclecloud.com:9092" topics => ["kafka_topic"] security_protocol => "SASL_SSL" sasl_mechanism => "PLAIN" jaas_path => "./jaas.conf" auto_offset_reset => "earliest" consumer_threads => 1 } } output { stdout { codec => rubydebug } }
jaas.conf
KafkaClient { org.apache.kafka.common.security.plain.PlainLoginModule required username="<username_from_kafka_connection_settings>" password="<auth_token>"; };
-
A partir du pool de flux de données que vous avez créé précédemment, copiez la configuration du fichier jaas.conf à partir des chaînes de connexion SASL dans Paramètres des connexions Kafka.
-
Exécutez la commande suivante pour démarrer Logstash avec le client Kafka qui utilisera les journaux d'OCI Streaming :
./bin/logstash -f input.conf
Liens connexes
Remerciements
- Auteur - Cristian Vlad (architecte cloud principal)
- Contributeur - Gabriel Feodorov (ingénieur cloud)
Ressources de formation supplémentaires
Explorez d'autres ateliers sur docs.oracle.com/learn ou accédez à davantage de contenu de formation gratuit sur le canal Oracle Learning YouTube. En outre, accédez à education.oracle.com/learning-explorer pour devenir un explorateur Oracle Learning.
Pour consulter la documentation produit, consultez Oracle Help Center.
Collect logs from OCI Logging into Logstash using OCI Streaming as a Kafka server
F79037-01
March 2023
Copyright © 2023, Oracle and/or its affiliates.