Stream Connect für Apache Kafka verwenden

  • Freigeben Version: Zurich
  • Aktualisiert 31. Juli 2025
  • 6 Minuten Lesedauer
  • Verbinden Sie mit Apache Kafka-Umgebung für Ihren ServiceNow Instanz mit Stream Connect Für Apache Kafka.

    Apache Kafka Ist eine verteilte Ereignis-Streaming-Plattform, die eine einheitliche Möglichkeit zum Austausch von Daten über mehrere Systeme bietet. Stream Connect Für Apache Kafka Verknüpft Ihre Kafka-Umgebung mit Ihrem ServiceNow Instanz, mit der Sie Daten zwischen Ihrer Instanz und Ihren externen Systemen streamen können.

    Hinweis:
    Stream Connect Erfordert Workflow Data Fabric Abonnement und Stream Connect Abonnement. Weitere Informationen finden Sie unter https://www.servicenow.com/now-platform/workflow-data-fabric.html.

    Vorteile

    • Veröffentlichen und verarbeiten Sie Kafka-Ereignisse im Maßstab. Veröffentlichen Sie Ereignisse aus Ihrem in Ihrer Kafka-Umgebung ServiceNow Kafka-Ereignisse aus Ihren externen Systemen in einem hohen Volumen mit geringer Latenz instanzen und verbrauchen.

    • Erstellen Sie Flows, die Kafka-Ereignisse erzeugen und verarbeiten. Stream Connect Ist in integriert Workflow-Studio, Bietet eine Low-Code-Möglichkeit zum Veröffentlichen und Verarbeiten von Kafka-Nachrichten.
    • Importieren Sie Daten aus Ihrer Kafka-Umgebung, und verarbeiten Sie diese Daten mit Ihrer vorhandenen robusten Transformations-Engine (RTE) oder Transformationszuordnungskonfigurationen.
    • Konfigurieren Sie einen Verbraucher, der Ihre eigenen Skripts zur Verarbeitung von Daten aus einem Kafka-Thema verwendet.
    • Überwachen Sie die Leistung Ihrer Verbraucher mit detaillierten Berichten zu Statistiken und Leistungsmetriken.

    Komponenten

    Stream Connect Hat die folgenden Komponenten.

    Hersteller

    Ein Ersteller veröffentlicht Ereignisse in einer Kafka-Umgebung. Stream Connect Hat zwei Ersteller.

    • Kafka-Ersteller Schritt ein Workflow-Studio
    • ProducerV2-API
    Verbraucher

    Ein Verbraucher liest und verarbeitet Ereignisse aus einer Kafka-Umgebung. Stream Connect Hat mehrere Verbraucher.

    • Kafka-Nachrichtenauslöser in Workflow-Studio
    • ETL-Verbraucher (Transform Load) extrahieren
    • Verbraucher der Transformationszuordnung
    • Skript-Verbraucher
    Themen und Themennamespaces

    Ereignisse werden in Themen organisiert und gespeichert. In einem Thema werden Ereignisse desselben Typs gespeichert. Themen sind partitioniert. Ereignisse haben einen Schlüssel. Ereignisse mit demselben Schlüssel werden in derselben Partition gespeichert.

    Themen sind mit einem Themen-Namespace verknüpft. Sie können Namespaces verwenden, um Themen auf logische Weise zu organisieren. Sie können beispielsweise Themen basierend auf dem Kafka-Cluster gruppieren, aus dem sie stammen. Sie können Namespaces auch verwenden, um zu konfigurieren, welche Domänen auf welche Themen in einer domänengetrennten Instanz zugreifen können. Weitere Informationen finden Sie unter Managing namespaces and topics in Hermes.

    Abonnements

    Ein Abonnement ist ein Datensatz, der einem Verbraucher zugeordnet ist. Er speichert Konfigurationsinformationen über den Verbraucher, z. B. den Namen des Kafka-Themas, von dem Nachrichten verarbeitet werden sollen, und die Anzahl der Partitionen, die das Thema hat. Der Abonnementdatensatz wird erstellt, wenn ein Kafka-Stream aktiviert wird.

    Jeder Abonnementdatensatz verfügt über mehrere Metriken, mit denen Sie die Leistung des Verbrauchers anzeigen können, der aus dem Thema liest. Weitere Informationen finden Sie unter Kafka-Abonnements und -Statistiken anzeigen.

    Partitionsgruppen

    Eine Partitionsgruppe ist ein Satz von Themenpartitionen. Wenn ein Thema beispielsweise sechs Partitionen hat, können sie in drei Partitionsgruppen mit zwei Partitionen in jeder Gruppe unterteilt werden.

    Kafka-Verbraucherauftrag

    Ein Auftrag, der Hermes regelmäßig auf neue Ereignisse in einem Thema überprüft. Der Auftrag wählt eine freie Partitionsgruppe aus und ruft ihr Abonnement ab. Das Abonnement gibt den Themennamen an, und der Auftrag überprüft die Partitionen auf Nachrichten für dieses Thema.

    Kafka-Streams (in der folgenden Abbildung nicht angezeigt)

    Ein Kafka-Stream ist ein Datensatz, der den Datenstrom für einen Verbraucher definiert. Wenn Sie den Kafka-Nachrichtenauslöser in verwenden Workflow-Studio, Der Kafka-Stream wird automatisch für Sie erstellt. Wenn Sie einen anderen Verbraucher verwenden, müssen Sie einen manuell erstellen.

    Um Ihre Kafka-Umgebung mit zu verknüpfen ServiceNow Instanz, Stream Connect verwendet Hermes Messaging-Service. Die Hermes Messaging-Service Ermöglicht Ihrer Instanz, große Mengen von Kafka-Ereignissen zu erstellen und zu verbrauchen. Es verwaltet den Datenfluss zwischen Ihrer Kafka-Umgebung und Ihrer Instanz. Weitere Informationen finden Sie unter Hermes Messaging-Service .

    Das folgende Diagramm zeigt die wichtigsten Komponenten von Stream Connect, Wie sie sich auf beziehen ServiceNow Und Drittanbieteranwendungen und wie sie über Hermes eine Verbindung zu Ihrer Kafka-Umgebung herstellen.

    Abbildung : 1. Übersicht über Stream Connect-Komponenten
    Diagramm, das Stream Connect-Komponenten und ihre Beziehung zu Kafka zeigt, ServiceNow, Und Hermes Messaging-Service.

    Stream Connect und Workflow-Studio

    Erstellen Sie Flows, die Kafka-Ereignisse mit erzeugen und verarbeiten Stream Connect Und Workflow-Studio. Stream Connect Verfügt über einen Flow-Auslöser zum Verbrauchen von Kafka-Ereignissen und einen Aktionsschritt zum Erstellen dieser Ereignisse.

    Verwenden Sie Kafka-Nachrichtenauslöser Zum Erstellen von Flows, die Kafka-Ereignisse verarbeiten. Sie können einen Flow erstellen, der Daten aus Kafka verbraucht und in eine Tabelle einfügt oder Spokes verwendet, um die Daten an Umgebungen von Drittparteien zu kommunizieren.

    Der Auslöser ist aktiviert, wenn der Flow aktiviert ist. Nachdem er aktiviert wurde, startet der Auslöser den Flow immer dann, wenn im angegebenen Kafka-Thema eine Nachricht vorhanden ist. Wenn Sie den Kafka-Nachrichtenauslöser verwenden, müssen Sie keinen Kafka-Stream- oder Abonnementdatensatz erstellen. Das System erstellt automatisch beides, wenn der Flow aktiviert wird. Nachrichten werden aus dem Thema gelesen, solange der Flow aktiv ist.

    Verwenden Sie Kafka-Erstellerschritt Um Aktionen zu erstellen, die Ereignisse in Ihrer Kafka-Umgebung in einem Thema veröffentlichen. Sie können beispielsweise den Schritt verwenden, um eine Nachricht über ein Update für einen Incident in zu erstellen ServiceNow, Und übertragen Sie die Nachricht dann an ein Thema in Ihrer Kafka-Umgebung.

    Stream Connect Warnungen

    Erhalten Sie Warnungen und Warnungsbenachrichtigungen für Stream Connect Integrationen. Stream Connect Verwendet sowohl aktive als auch geplante Überwachung, um Ereignisse über mehrere Komponenten hinweg zu erkennen. Wenn ein Problem erkannt wird, erstellt das System eine Warnung und protokolliert eine Nachricht an Stream Connect Protokollieren und sendet eine Warnungsbenachrichtigung. Details finden Sie unter Stream Connect Warnungen.

    Unterstützung für Nachrichten im Avro-Format

    Importieren und erstellen Sie Schemas zum Senden und Empfangen von Nachrichten in einem Apache Avro-Format. Die Verwendung eines Avro-Formats kann die Größe der Nutzlast reduzieren und Ihre Integration in Ihre lokale Kafka-Instanz vereinfachen.

    Sie können Avro-Schemas direkt aus der Confluent-Registrierung importieren oder eigene Schemas mithilfe einer JSON-Datei oder einer JSON-formatierten Zeichenfolge erstellen. Die Schemas werden in gespeichert ServiceNow Und ermöglichen Sie Ihren Erstellern und Verbrauchern, nur-Text-Nachrichten in ein Avro-Format und zurück zu konvertieren. Details finden Sie unter Schemaverwaltung in Stream Connect.

    ETL, Transformationszuordnung und Skriptverbraucher

    Importieren Sie Daten aus Ihrer Kafka-Umgebung mithilfe Ihrer vorhandenen RTE- oder Transformationszuordnungskonfigurationen. Die Verbraucher „Extrahieren Transformationslast“ (ETL) und „Transformationszuordnung“ vereinfachen Ihre Datenimporte, indem sie eine effiziente Möglichkeit bieten, eine Nutzlast aus einer Kafka-Nachricht zu übernehmen, die Daten umzuwandeln und einen Datensatz in eine Tabelle einzufügen oder zu aktualisieren. Sie können mit Stream Connect von einem geplanten Datenimport zu einem wechseln und die Daten mit denselben Konfigurationen verarbeiten.

    Sie können auch den Skriptverbraucher verwenden, um Daten aus Ihrer Kafka-Umgebung zu verarbeiten. Der Skriptverbraucher ist für erweiterte Anwendungsfälle vorgesehen, z. B. wenn die Daten in der Nachricht nicht strukturiert sind oder Datensuchen mit Code erforderlich sind.

    Wenn Sie Konfigurieren Sie einen ETL-Verbraucher (Extract Transform Load), Konfigurieren Sie einen Transformationszuordnungs-Verbraucher, Oder Konfigurieren Sie einen Skriptverbraucher, Müssen Sie auch Erstellen Sie einen Kafka-Stream.

    ProducerV2-API

    Veröffentlichen Sie Ereignisse mit in einem Kafka-Thema ProducerV2-API .

    Stream Connect Nachrichtenreplikation

    Sie können Daten zwischen Ihrer Kafka-Umgebung und replizieren ServiceNow Mit Stream Connect Nachrichtenreplikation.

    Stream Connect Mit der Nachrichtenreplikation können Sie Nachrichtenreplikationen direkt von konfigurieren und verwalten ServiceNow Instanz. Es verwendet einen MID-Server Oder MID-Server Cluster zum Ausführen der Datenreplikationen, sodass Sie keine zusätzlichen Replikationsservices konfigurieren oder hosten müssen. Außerdem wird das Setup der Nachrichtenreplikation vereinfacht, indem die erforderlichen Zertifikate automatisch generiert werden.

    Weitere Informationen finden Sie unter Stream Connect Nachrichtenreplikation.

    Unverarbeitete und nicht zugestellte Nachrichten

    Wenn eine Nachricht nicht zugestellt werden kann, wird sie in der Tabelle „nicht zugestellte Kafka-Nachrichten“ [sys_kafka_undelivered_messages] gespeichert. Eine geplante Aufgabe, Kafka-Ersteller-Wiederholen, liest diese Tabelle regelmäßig und versucht, Nachrichten erneut zuzustellen.

    Wenn ein Batch von Nachrichten aufgrund einer Zeitüberschreitung nicht verarbeitet werden kann, wird er in der Tabelle „unverarbeitete Kafka-Nachrichten“ [sys_kafka_unprocessed_messages] gespeichert. Die Zeitüberschreitung für einen Nachrichten-Batch kann mit festgelegt werden com.glide.kafka_consumer.timeoutEigenschaft. Der Standardwert beträgt 60 Sekunden. Diese Tabelle ist eine rotierte Tabelle, daher werden Datensätze automatisch bereinigt.

    Komprimierungsformate des Herstellers

    Geben Sie ein Komprimierungsformat für an Stream Connect Ersteller mit com.glide.kafka_producer.compression_typeSystemeigenschaft. Unterstützt die folgenden Werte:
    • KEINE
    • GZIP
    • LZ4

    Diese Eigenschaft befindet sich standardmäßig nicht in der Tabelle „Systemeigenschaften“ [sys_properties], daher muss sie sein Manuell hinzugefügt . Diese Eigenschaft legt das Komprimierungsformat für alle fest Stream Connect Ersteller.

    Domänentrennung

    Verwenden Stream Connect Themennamespaces zum Konfigurieren, welche Domänen auf ein Kafka-Thema in einer domänengetrennten Instanz zugreifen können. Themen in gruppieren ServiceNow Namespaces, verknüpfen Sie die Namespaces dann mit bestimmten Domänen. Weitere Informationen finden Sie unter Domänentrennung und Stream Connect.

    Plugin

    Stream Connect Erfordert ServiceNow Stream Connect Installationsprogramm [com.glide.hub.stream_connect.installer]-Plugin. Dieses Plugin aktiviert die lizenzierten Komponenten für die Arbeit mit nachrichtenbasierten Streaming-Daten in Stream Connect.