Kafka

Die evoVIU-Kamera unterstützt eine native Kafka Producer-Anbindung und ermöglicht damit die direkte Übertragung von Bilddaten, Metadaten oder Prüfergebnissen an ein Apache-Kafka-Cluster. Dies erlaubt die nahtlose Integration in moderne, skalierbare Datenarchitekturen und Streaming-Pipelines.

Über die Weboberfläche können Kafka-Broker (z. B. kafka01:9092) sowie das gewünschte Topic konfiguriert werden. Für eine strukturierte Verarbeitung lassen sich Daten im JSON-, Binär- oder Avro-Format senden. Die Auswahl des Formats hängt vom jeweiligen Anwendungsfall ab: JSON sorgt für eine einfache Lesbarkeit, wohingegen das Binär- und Avro-Format für effiziente Verarbeitung großer Bilddaten besser geeignet sind.

Der Versand kann zyklisch, ereignisgesteuert (z. B. bei OK/NOK-Ergebnissen) oder manuell ausgelöst werden. Dabei wird jede Nachricht mit einem Zeitstempel versehen. Bei Bedarf kann auch ein Schlüssel (key) für eine Partitionierung definiert werden.

Die Kafka-Anbindung ist besonders robust: Durch die Konfiguration von Acknowledgements, Retries und optionaler SASL/SSL-Verschlüsselung lässt sich eine zuverlässige, sichere Kommunikation sicherstellen.

Mit dieser Integration lässt sich die evoVIU flexibel in verteilte Systeme, Cloud-Infrastrukturen oder Analyseplattformen (z. B. Kafka Streams, Spark) einbinden – ideal für Industrie 4.0- oder IIoT-Szenarien.

Verbindungsparameter

Parameter

Type

Einheit

Erklärung

Beispiel

Required

Bootstrap Server Uri
(Address)

Domain || IP - String


Die Zieladresse des Kafka-Servers.

mykafka.myfacory.de
192.168.0.123

check mark

Port

Integer


Der Port der Kafka-Verbindung.

9092

check mark

ClientID

String


Die Client-ID ist ein eindeutiger Name zur Identifikation eines Kafka-Clients beim Broker.

0


Retries

Integer


Anzahl der Sendeversuche bei Fehler einer Sendung.

1

check mark

Max In Flight Request per Connection

Integer


Legt fest, wie viele Anfragen parallel ohne Antwort gesendet werden dürfen.
Standardwert: 5

0


Message Max Bytes

Integer

Byte

Legt die maximale Größe einer Nachricht fest.

Wert 0 = beliebig großes Message
Wert 1024 = 1024 Bytes = 1kB

0


Requests Timeout

Integer

ms

Legt die maximale Zeit fest, die der Client auf eine Antwort wartet.
Standardwert: 30000ms

Wert 0 = beliebig lange Wartezeit

0


Local Timeout

Integer

ms

Legt das maximale Timeout für das Produzieren inklusive Retries fest.
Standardwert: 120000ms

Wert 0 = beliebig lange Wartezeit

0


Allow Auto Create Topics

Bool


Erlaubt das automatische Erstellen von Topics beim Zugriff.

False


Username

String


Der Username für die Authentifizierung.

Not used


Passwort

String


Das Passwort für die Authentifizierung.

Not used


SASL Mechanism

Dropdown


Legt das Auth-Verfahren fest.

None


Security Protocol

Dropdown


Definiert das Verbindungsprotokoll.

None


Workflow Setup

Anlage der Komponente Kafka Producer

  1. Gehen Sie in Workflows unter Components auf ➕.

  2. Suchen Sie nach der “Kafka Producer” Komponente und wählen Sie diese aus.

image-20250731-085251.png
  1. Es erscheint eine neue Komponente mit dem Namen “Kafka-Producer”. Diese kann jederzeit umbenannt werden.

  2. Geben Sie die Verbindungsparameter ein.

image-20250731-085612.png
  1. Öffnen Sie in Ihrem Event Graph per Rechtsklick das Context-Menü.

  2. Suchen Sie nach “Get Kafka Producer” und wählen Sie den Eintrag aus, damit der Node im Event Graph hinzugefügt wird.

Herzlichen Glückwunsch - Die Komponente “Kafka Producer” wurde erfolgreich angelegt.

Senden von Daten über Kafka Producer

Zunächst ist noch wichtig, die einzelnen Eingänge in dieser Komponente unabhängig von den Verbindungsdaten zu erklären:

Input

Erklärung

Beispiel

Topic

Ein Topic ist ein logischer Kanal über den Nachrichten veröffentlicht und gelesen werden.

cam_result

Key

Der Key bestimmt die Partition einer Nachricht. Gleiche Keys landen immer in derselben Partition.

cam1

Value

Der Value ist der eigentliche Nachrichtendateninhalt, den Producer senden und Consumer lesen.

{“Value”: “2,14”, “Result”: true}

  1. Suchen Sie im Context-Menü nach “Producer” und wählen Sie den Eintrag “Get Kafka Producer” aus.

image-20250731-090108.png


  1. Verbinden Sie den Output der Komponente “Get Kafka Producer” mit dem “Producer” Input des Produce-Knotens.

image-20250731-090235.png
  1. Geben Sie die jeweiligen Topic und Key-Werte an, die Ihnen bereitgelegt wurde. Gleichzeitig können Sie unter Value die entsprechenden Daten verlinken.

image-20250731-091709.png

Herzlichen Glückwünsch! Sie können nun erfolgreich Daten an den Kafka Consumer senden.

  1. Falls Sie sehen wollen, ob die Daten erfolgreich übertragen wurden, so können Sie am Ende des “Produce”-Knotens die Outputs “Success” und “Message” weiter verarbeiten und ausgeben lassen.

image-20250731-093529.png