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
|
Domain || IP - String |
|
Die Zieladresse des Kafka-Servers. |
mykafka.myfacory.de
|
|
|
Port |
Integer |
|
Der Port der Kafka-Verbindung. |
9092 |
|
|
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 |
|
|
Max In Flight Request per Connection |
Integer |
|
Legt fest, wie viele Anfragen parallel ohne Antwort gesendet werden dürfen.
|
0 |
|
|
Message Max Bytes |
Integer |
Byte |
Legt die maximale Größe einer Nachricht fest. Wert 0 = beliebig großes Message
|
0 |
|
|
Requests Timeout |
Integer |
ms |
Legt die maximale Zeit fest, die der Client auf eine Antwort wartet.
Wert 0 = beliebig lange Wartezeit |
0 |
|
|
Local Timeout |
Integer |
ms |
Legt das maximale Timeout für das Produzieren inklusive Retries fest.
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
-
Gehen Sie in Workflows unter Components auf ➕.
-
Suchen Sie nach der “Kafka Producer” Komponente und wählen Sie diese aus.
-
Es erscheint eine neue Komponente mit dem Namen “Kafka-Producer”. Diese kann jederzeit umbenannt werden.
-
Geben Sie die Verbindungsparameter ein.
-
Öffnen Sie in Ihrem Event Graph per Rechtsklick das Context-Menü.
-
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. |
|
|
Key |
Der Key bestimmt die Partition einer Nachricht. Gleiche Keys landen immer in derselben Partition. |
|
|
Value |
Der Value ist der eigentliche Nachrichtendateninhalt, den Producer senden und Consumer lesen. |
|
-
Suchen Sie im Context-Menü nach “Producer” und wählen Sie den Eintrag “Get Kafka Producer” aus.
-
Verbinden Sie den Output der Komponente “Get Kafka Producer” mit dem “Producer” Input des Produce-Knotens.
-
Geben Sie die jeweiligen Topic und Key-Werte an, die Ihnen bereitgelegt wurde. Gleichzeitig können Sie unter Value die entsprechenden Daten verlinken.
Herzlichen Glückwünsch! Sie können nun erfolgreich Daten an den Kafka Consumer senden.
-
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.