Ressources · Intégration n8n

Intégration Kafka n8nAutomatiser Kafka avec n8n.

Les événements circulent déjà sur tes brokers, reste à en faire quelque chose. L'intégration Kafka n8n, c'est 1 opération côté nœud pour publier un message sur un topic, et un trigger qui consomme un topic sous un identifiant de groupe. Pensée pour les équipes qui exploitent déjà Kafka.

Avis vérifiés sur Trustpilot · Agence IA, automatisation & growth

Pourquoi automatiser

Que couvre vraiment l'intégration Kafka n8n ?

Kafka transporte les événements, n8n décide de la suite. Le nœud Kafka écrit dans le flux, le Kafka Trigger le lit. Une opération publie un message sur le topic de ton choix, avec une clé et des en-têtes facultatifs. Un trigger s'abonne à un topic sous un identifiant de groupe de consommateurs, ce nom partagé qui permet à plusieurs consommateurs de se répartir les messages, et transmet chaque message au reste du workflow.

Premier cas de figure, faire atterrir un flux là où il devient lisible. Le trigger consomme un topic, un nœud Set ne garde que les champs utiles, et un nœud MySQL écrit une ligne par message. Même logique avec un stockage souple si les messages n'ont pas tous la même forme : MongoDB encaisse mieux les charges utiles hétérogènes qu'un schéma relationnel figé.

Deuxième cas de figure, transformer un topic en alerte humaine. Un topic de traitements en échec alimente un nœud IF, et tout ce qui dépasse le seuil part dans un message Slack avec la clé du message en clair. L'identifiant de groupe garde ce workflow indépendant des autres consommateurs du même topic.

Troisième cas de figure, n8n en producteur. N'importe quel workflow peut se terminer sur default.execute et publier ce qu'il vient de construire. Un template public fait exactement ça : un nœud HTTP Request récupère la position de l'ISS chaque minute et l'envoie vers un topic Kafka. Remplace l'appel d'API par une soumission de formulaire ou une requête en base, le schéma tient toujours.

Un point à intégrer avant de bâtir dessus. Le credential Kafka ouvre une connexion vers tes brokers, ce n'est pas une API HTTP. Il n'existe donc aucun nœud générique de repli : sur un outil en HTTP, tu sortirais le nœud HTTP Request pour appeler l'endpoint manquant, ici non. Ce que le nœud n'expose pas ne se fait pas depuis n8n. Ni création de topic depuis un workflow, ni inspection des groupes de consommateurs, ni navigation dans les offsets.

L'autre limite connue concerne le trigger. En version 1, il consomme les messages non compressés et les messages GZIP, et échoue avec une erreur de format de compression non pris en charge sur LZ4, Snappy ou Zstd, qui sont pourtant des réglages fréquents côté Confluent et côté producteurs JVM. Soit le producteur bascule en gzip ou sans compression, soit tu passes sur la préversion de la version 2. Pour savoir si l'outil correspond à ton contexte, l'Avis n8n et la Formation n8n vont plus loin.

Connexion

Comment relier n8n à tes brokers Kafka ?

  1. 01

    Créer le credential Kafka

    Dans n8n, ouvre le menu Credentials et crée un credential Kafka. Un credential, c'est la fiche de connexion enregistrée une fois et réutilisée par tous les nœuds. Tu la remplis donc une seule fois pour tous tes workflows Kafka. Commence par le champ Client ID, l'identifiant du client ou du groupe de consommateurs que n8n annonce au cluster. Choisis un nom reconnaissable dans les logs des brokers : il sépare le trafic n8n du reste.

  2. 02

    Déclarer la liste des brokers

    Le champ Brokers attend une liste séparée par des virgules, au format <broker-service-name>:<port>. Le nom de service est celui que tu as donné au broker dans ta liste services : kafka-1:9092,kafka-2:9092 pointe donc vers deux brokers sur le port 9092. Déclare-les tous, le credential s'appuie sur la liste entière pour joindre le cluster. Environnement sans SSL ? Désactive l'interrupteur SSL, actif par défaut sinon.

  3. 03

    Ajouter l'authentification SASL

    Si ton cluster s'authentifie en SASL, active l'interrupteur Authentication puis renseigne Username et Password. Choisis ensuite le SASL Mechanism réglé côté broker : Plain, scram-sha-256 ou scram-sha-512. Enregistre. Le même credential sert ensuite au nœud Kafka comme au Kafka Trigger, sans rien ressaisir. Seule exception, l'encodage avec un Confluent Schema Registry authentifié : il passe par un credential Schema Registry distinct.

Déclencheurs

Qu'écoute le Kafka Trigger ?

Kafka Trigger est le nœud qui démarre un workflow quand quelque chose se passe dans Kafka. Tu actives le workflow et chaque événement reçu devient une exécution.

Ce que tu vois dans n8n

Notes de configuration

01Set Up the Kafka TriggerLe Kafka Trigger s'abonne à un topic et lance le workflow sur les messages qu'il reçoit. Deux champs sont obligatoires, et le workflow doit être actif pour que le trigger écoute quoi que ce soit. Tant qu'il reste en brouillon, rien ne remonte.

Le Kafka Trigger s'abonne à un topic et lance le workflow sur les messages qu'il reçoit. Deux champs sont obligatoires, et le workflow doit être actif pour que le trigger écoute quoi que ce soit. Tant qu'il reste en brouillon, rien ne remonte.

Paramètres clés

  • Topic : le nom du topic à consommer, tel qu'il existe sur le cluster, sans approximation d'orthographe.
  • Group ID : le groupe de consommateurs que rejoint ce trigger. Donne un identifiant propre à chaque workflow, sauf si tu veux volontairement répartir les partitions d'un topic entre deux triggers.
  • Allow Topic Creation : autorise le rattachement à un topic qui n'existe pas encore, au lieu d'échouer dessus.
Quand l'utiliser
dès que l'événement existe déjà sur un topic et qu'une suite doit s'enclencher sans qu'une personne recopie les valeurs à la main.
02Choose Where Reading StartsPar défaut, un groupe de consommateurs reprend là où il s'est arrêté. Ces options fixent le comportement de la première exécution et la fréquence d'enregistrement de la position.

Par défaut, un groupe de consommateurs reprend là où il s'est arrêté. Ces options fixent le comportement de la première exécution et la fréquence d'enregistrement de la position.

Paramètres clés

  • Read Messages From Beginning : activé, le trigger lit le topic depuis le plus ancien message conservé, et pas seulement les nouveaux. Pratique pour une reprise unique, bruyant si l'option reste active.
  • Auto Commit Threshold : enregistre la position après un nombre donné de messages traités.
  • Auto Commit Interval : enregistre plutôt la position après une durée donnée, quelques secondes par exemple.
  • Batch Size : le nombre de messages traités par lot. À 1, le traitement se fait message par message.
Cas d'usage
un workflow de rapprochement qui doit rejouer un topic complet à sa première exécution, puis se comporter normalement.
03Shape What Each Message OutputsKafka transmet une valeur et des métadonnées. Ces options décident de ce que le nœud suivant reçoit réellement en entrée.

Kafka transmet une valeur et des métadonnées. Ces options décident de ce que le nœud suivant reçoit réellement en entrée.

Paramètres clés

  • JSON Parse Message : tente de convertir le message en objet, pour adresser les champs avec une expression comme {{ $json.champ }} plutôt que de manipuler une chaîne unique.
  • Only Message : ne renvoie que la propriété message, sans l'enveloppe qui l'entoure.
  • Return Headers : ajoute à la sortie les en-têtes reçus de Kafka, là où les producteurs glissent souvent un identifiant de trace ou de client.
  • Keep Message as Binary Data : conserve la valeur en binaire pour un traitement en aval, une désérialisation Avro par exemple.
Cas d'usage
un topic dont le producteur envoie du JSON en chaîne, converti dès le trigger pour éviter un nœud Code.
04Keep The Consumer In Its GroupUn consommateur Kafka signale régulièrement qu'il est vivant. Ces options pilotent cet échange, et ce sont elles qu'on regarde quand un workflow perd sa place dans le topic.

Un consommateur Kafka signale régulièrement qu'il est vivant. Ces options pilotent cet échange, et ce sont elles qu'on regarde quand un workflow perd sa place dans le topic.

Paramètres clés

  • Heartbeat Interval : la fréquence à laquelle le consommateur signale son activité au broker. Elle doit rester inférieure à Session Timeout, la valeur conseillée tournant autour du tiers de celui-ci.
  • Session Timeout : le délai en millisecondes au bout duquel le broker considère le consommateur comme défaillant.
  • Rebalance Timeout : le temps maximal accordé à un consommateur pour rejoindre le groupe.
  • Retry Delay on Error : l'attente en millisecondes avant de réessayer un enregistrement de position qui a échoué, ce qui évite une boucle de reprise qui sature le broker.
Quand l'utiliser
quand le cluster a déjà des valeurs calibrées et que n8n doit s'aligner dessus.
Actions

Que sait faire le nœud Kafka ?

Le nœud Kafka expose une opération. Pour chacune : le nœud tel que tu le configures dans n8n, les champs obligatoires, et nos notes de terrain.

01

Sends messages to a Kafka topic

execute

Ce que tu vois dans n8n

Notes & cas d'usage

Le nœud publie un message par item entrant. Kafka renvoie un accusé de réception, pas des données : c'est un point de sortie de workflow, pas une consultation.

Paramètres clés

  • Topic : la destination du message, par exemple orders-created.
  • Message : le contenu envoyé, souvent une expression du type {{ $json.id }}. Active Send Input Data pour pousser l'item entier en JSON à la place.
  • Key : la clé du message, celle qui regroupe les messages liés sur une même partition.
  • Event Name : le schéma au format namespace.name, utile une fois Use Schema Registry activé.
Cas d'usage
republier une demande de formulaire nettoyée sur un topic interne.
Besoin d'aide

Besoin d'aide pour automatiser Kafka avec n8n ?

L'équipe te répond directement.

Chaque message est lu par une personne.

FAQ

Kafka et n8n, les questions fréquentes

01L'intégration Kafka n8n est-elle gratuite ?
Oui du côté de n8n. Le nœud Kafka comme le Kafka Trigger sont livrés avec n8n : rien à installer, aucun coût supplémentaire, que tu sois sur n8n Cloud ou sur une instance auto-hébergée en Community Edition sous licence Sustainable Use. Ce que coûte ton dispositif Kafka est une autre question, qui dépend entièrement de la façon dont tu exploites tes brokers, et cette page ne peut pas la chiffrer à ta place. Le vrai coût, c'est le temps de configuration : un credential, un nom de topic, un identifiant de groupe par workflow qui consomme.
02Quels credentials faut-il pour connecter Kafka à n8n ?
Un seul credential Kafka, partagé par le nœud et le trigger. Il demande un Client ID, c'est-à-dire l'identifiant du client ou du groupe de consommateurs, et une liste de brokers écrite au format nom de service puis port, séparés par des virgules, par exemple kafka-1:9092. L'interrupteur SSL reste actif sauf si ton environnement tourne sans SSL. Si le cluster utilise SASL, active l'interrupteur Authentication puis renseigne un nom d'utilisateur, un mot de passe et le mécanisme attendu par le broker, parmi Plain, scram-sha-256 et scram-sha-512. L'encodage avec un Confluent Schema Registry authentifié passe par un credential Schema Registry séparé.
03Quelles sont les limites du nœud Kafka dans n8n ?
Le nœud expose 1 opération, l'envoi d'un message sur un topic. Tout le reste de ce que sait faire Kafka reste hors champ : créer un topic depuis un workflow, inspecter les groupes de consommateurs, parcourir les offsets. Et il n'existe pas de contournement par un nœud générique, parce que le credential ouvre une connexion vers tes brokers et non une API HTTP : appeler soi-même un endpoint n'est pas une option ici. Côté consommation, la version 1 du trigger lit uniquement les messages non compressés et GZIP, et échoue sur les topics en LZ4, Snappy ou Zstd.
04Le Kafka Trigger réagit-il en temps réel ?
Ça dépend, et n8n ne documente pas le mécanisme de ce trigger : le présenter comme instantané serait une supposition. Ce qui est documenté, c'est le reste. Le workflow doit être publié et actif pour que le trigger écoute. L'identifiant de groupe détermine si ton trigger lit le topic seul ou partage les partitions avec un autre consommateur. L'option Read Messages From Beginning décide si la première exécution rejoue l'historique conservé ou traite seulement ce qui arrive ensuite. Et Batch Size réglé sur 1 donne un traitement message par message plutôt que par lots.
05n8n ou Make pour Kafka ?
La vraie ligne de partage porte sur l'endroit où tourne l'outil. Make est hébergé par Make, sans option d'auto-hébergement, et facturé à l'opération consommée. n8n tourne sur tes propres serveurs ou sur n8n Cloud, avec un workflow identique dans les deux cas. Pour Kafka, ça compte plus qu'ailleurs : les brokers vivent souvent sur un réseau privé qu'une plateforme hébergée ne peut pas joindre, et un flux d'événements génère du volume, ce qui rend le modèle à l'opération à vérifier sur tes propres chiffres. Make garde l'avantage sur le nombre de connecteurs hébergés.
Hack'celeration Lab

Reçois nos tips intégration chaque semaine.

Pas de spam. Désinscription à tout moment.