Échange de données à l’aide de l' Service de messagerie Hermes
Vous pouvez produire et utiliser des messages Kafka dans votre ServiceNow instance à l’aide de la commande Service de messagerie Hermes .
Il existe plusieurs méthodes d’échange de données entre votre ServiceNow instance et votre environnement Kafka à l’aide de la commande Service de messagerie Hermes . Dans tous les cas, les données sont produites par une entité et consommées par une autre.
- À l’aide Connexion au fluxde , vous pouvez créer des messages à partir de votre ServiceNow instance à l’aide d’une étape Producer à partir d’une action de flux ou de l’API Producer, puis utiliser les messages dans votre application externe. Vous pouvez également créer des messages à partir d’une application externe, puis utiliser les messages dans votre ServiceNow instance via l’une des méthodes suivantes :
- Déclencheur de flux Kafka
- Consommateur RTE
- Consommateur de carte de transformation
- Consommateur de script
Pour plus d’informations, consultez Connexion au flux pour Apache Kafka .
- À l’aide de , Service d'exportation de journalvous pouvez créer des journaux à partir de votre ServiceNow instance, puis les utiliser dans votre application externe. Pour plus d’informations sur la production et la consommation de journaux pour , reportez-vous à Service d'exportation de journalla section Exploring Log Export Service (LES).
- En utilisant le protocole standard Kafka, vous pouvez échanger des messages avec n’importe quelle application qui produit des messages. Par exemple, vous pouvez créer des messages à partir d’une application Java à l’aide du protocole Kafka standard, puis les consommer dans votre ServiceNow instance et vice versa.
Produire et consommer des messages
Pour commencer l’échange de messages, créez une rubrique dans le Hermes cluster Kafka. Une fois la rubrique créée, vous créez un total de trois processus pour communiquer avec le Hermes cluster Kafka.
- Un processus est nécessaire pour produire des messages vers Hermes.
- Deux processus sont nécessaires pour utiliser les messages de Hermes. Deux processus sont nécessaires car Hermes utilise une paire de clusters Kafka à des fins de basculement. Si un cluster tombe en panne, les données sont produites dans l’autre Hermes cluster Kafka.Important :Vous devez configurer deux adresses d’amorce de consommateur distinctes, une pour chaque client consommateur.
Lorsque vous utilisez la commande list pour afficher une liste de rubriques, une liste des rubriques actuelles est renvoyée par l’une ou les deux grappes. Les rubriques peuvent être renvoyées à partir d’un seul cluster, en fonction de la date de la dernière synchronisation. Les rubriques créées à des fins de basculement sont différenciées par un préfixe d’identification de cluster à trois lettres.
Lorsque vous accédez aux grappes Hermes à l’aide de l’interface de ligne de commande, des rubriques internes s’affichent en plus de toutes les rubriques que vous avez créées. Pour plus de détails, voir KB1705399.
Vous ne pouvez pas supprimer une rubrique des deux clusters Kafka à l’aide d’une seule commande dans l’interface de ligne de commande (CLI). Toutefois, vous pouvez supprimer la rubrique des deux clusters en supprimant l’enregistrement de rubrique dans votre instance. Consultez Supprimer une rubrique dans Hermes.
Plages de ports requises
- Producteur : 4000-4050
- Consommateur1 : 4100 à 4150
- Consommateur2 : 4 200 à 4 250
Adresses d’amorce
Utilisez les mappages de port suivants pour connecter les producteurs et les consommateurs aux adresses d’amorce du cluster Kafka. Tous les contrôleurs de livraison d’applications utilisés par Hermes suivent la même convention.
- Producteur : 4000-4050
- Consommateur1 : 4100 à 4150
- Consommateur2 : 4 200 à 4 250
Les clients du créateur utilisent des ports compris entre 4 000 et 4 050. Par exemple :
Producers = "<instance_name>.service-now.com:4000,<instance_name>.service-now.com:4001,<instance_name>.service-now.com:4002,<instance_name>.service-now.com:4003"
Étant donné qu’il Hermes utilise une paire de clusters Kafka, vous devez configurer deux clients consommateurs avec des adresses d’amorce de consommateur distinctes.
- Le premier client consommateur utilise des ports compris entre 4100 et 4150. Par exemple :
Consumer A = "<instance_name>.service-now.com:4100,<instance_name>.service-now.com:4101,<instance_name>.service-now.com:4102,<instance_name>.service-now.com:4103" - Le deuxième client consommateur utilise des ports allant de 4200 à 4250. Par exemple :
Consumer B = "<instance_name>.service-now.com:4200,<instance_name>.service-now.com:4201,<instance_name>.service-now.com:4202,<instance_name>.service-now.com:4203"
Lorsque vous configurez les propriétés du producteur et du consommateur pour votre propre client Kafka, utilisez ce modèle de chaîne.