Kafka Connect – Übersicht

Kafka Connect ist das bevorzugte Tool für die Datenintegration für Kafka-Entwickler. Es bietet ein Framework für die Verbindung von Kafka mit externen Systemen wie Datenbanken, Message Queues und Dateisystemen.

Kafka Connect bietet eine ausgewählte Reihe von integrierten Connector-Plug‑ins, die von Google Cloudgeprüft und verwaltet werden. Diese Connector-Plug-ins werden automatisch gepatcht und aktualisiert, was die Wartung vereinfacht und die Kompatibilität gewährleistet.Google Cloud bietet außerdem integriertes Monitoring und Logging, um die Integrität Ihrer Pipelines zu gewährleisten.

Kafka Connect-APIs werden als Teil des Google Cloud Managed Service for Apache Kafka-Dienstes angeboten. Diese APIs sind über managedkafka.googleapis.com zugänglich und in die Google Cloud -Konsole und Clientbibliotheken integriert. Sie können Kafka Connect über die Google Cloud Console, die gcloud CLI, die Managed Kafka API, die Cloud-Clientbibliotheken oder Terraform verwalten.

Kafka Connect-Anwendungsfälle

Kafka Connect unterstützt die Datenintegration zwischen Ihrem Managed Service for Apache Kafka-Cluster und verschiedenen anderen Systemen. Hier einige wichtige Anwendungsfälle:

  • Migrieren Sie Ihre vorhandenen Kafka-Bereitstellungen zu Managed Service for Apache Kafka.

  • Replizieren Sie Ihren Managed Service for Apache Kafka-Cluster in eine andere Region für die Notfallwiederherstellung.

  • Streamen Sie Daten aus dem Managed Service for Apache Kafka zu BigQuery, Cloud Storage und Pub/Sub.

Connect-Cluster

Ein Connect-Cluster ist eine verteilte Bereitstellung von Kafka Connect mit vordefinierten Connector-Plug-ins und Konfigurationen. Jeder Connect-Cluster ist einem primären Managed Service for Apache Kafka-Cluster zugeordnet. In diesem primären Cluster wird der Status der Connectors gespeichert, die im Connect-Cluster ausgeführt werden.

Im Allgemeinen dient der primäre Managed Service for Apache Kafka-Cluster auch als Ziel für alle Quell-Connectors und als Quelle für alle Senken-Connectors, die im zugehörigen Connect-Cluster ausgeführt werden.

Ein einzelner Managed Service for Apache Kafka-Cluster kann mehrere Connect-Cluster haben. Wenn Sie MirrorMaker 2.0 ausführen, kann ein Connect-Cluster eine Verbindung zu nicht primären Managed Service for Apache Kafka-Clustern oder selbstverwalteten Kafka-Clustern herstellen, um Themendaten zu lesen oder zu schreiben. Dieser Prozess ermöglicht die Themenreplikation zwischen verschiedenen Clustern.

Aus Sicht des Ressourcenmodells ist ein Connect-Cluster eine separate Ressource von einem Managed Service for Apache Kafka-Cluster.

Angenommen, Sie haben einen Managed Service for Apache Kafka-Cluster, in dem Sie Daten zum Website-Traffic speichern. Sie möchten diese Daten zur Analyse in BigQuery streamen. Sie können einen Connect-Cluster erstellen und einen BigQuery-Senken-Connector verwenden, um die Daten aus Ihren Kafka-Themen nach BigQuery zu übertragen. Dieser Connect-Cluster ist Ihrem Managed Service for Apache Kafka-Cluster als primärer Cluster zugeordnet.

Connectors

Connectors sind die Softwarekomponenten, die Daten zwischen Ihrem Kafka-Cluster und anderen Systemen übertragen.

  • Ein Quell-Connector schreibt Daten aus einer Quelle in einen Managed Service for Apache Kafka-Cluster.

  • Ein Sink-Connector schreibt Daten aus einem Managed Service for Apache Kafka-Cluster in ein Ziel.

Ein Connector wird im Connect-Cluster bereitgestellt, konfiguriert und verwaltet. Sie kann gestartet, beendet, pausiert, neu gestartet und ihre Konfiguration kann aktualisiert werden.

Weitere Informationen zu den Connectortypen, die von Managed Service for Apache Kafka unterstützt werden, finden Sie in der Connectors-Übersicht.

Kafka Connect verwalten

Mit Kafka Connect können Sie sich auf die Bereitstellung von Connectors konzentrieren, während Managed Service for Apache Kafka die zugrunde liegende Infrastruktur und die betrieblichen Komplexitäten übernimmt.

Der Kafka Connect-Dienst automatisiert Folgendes:

  • Bereitstellung von Kafka Connect-Workern: Wenn Sie einen Connect-Cluster erstellen, stellt der Kafka Connect-Dienst automatisch einen Cluster von Workern in Kubernetes bereit.

  • Netzwerk: Der Kafka Connect-Dienst konfiguriert das Netzwerk, um die Kommunikation zwischen den Workern, den Managed Service for Apache Kafka-Brokern und externen Systemen zu ermöglichen. In einigen Fällen müssen Sie möglicherweise Änderungen an Ihren vorhandenen Netzwerkeinstellungen vornehmen.

  • Zonale Resilienz: Der Kafka Connect-Dienst verteilt Worker auf mindestens drei Zonen, um sicherzustellen, dass die Datenverarbeitung im Falle eines zonalen Ausfalls fortgesetzt werden kann.

  • Authentifizierung: Der Kafka Connect-Dienst konfiguriert auch die Authentifizierung mit Kafka-Brokern, um sichere Verbindungen zu gewährleisten.

  • Rollouts und Upgrades: Der Kafka Connect-Dienst verwaltet Änderungen an der Worker-Konfiguration, Versionsupgrades und Sicherheitspatches, damit Ihre Bereitstellungen immer auf dem neuesten Stand sind.

Im Kafka Connect-Dienst können Sie die folgenden Konfigurationen vornehmen:

  • Kapazitäts- und Netzwerkbeschränkungen: Definieren Sie Ressourcenlimits und Netzwerkkonfigurationen, um Leistung und Kosten zu optimieren.

  • Monitoring und Logging: Sie können auf Logs und Messwerte für Ihre Connectors zugreifen, um die Leistung zu überwachen und Fehler zu beheben.

  • Connector-Lebenszyklusverwaltung: Sie können Connectors nach Bedarf pausieren, fortsetzen, neu starten oder beenden, um Ihre Datenpipelines zu verwalten.

Beschränkungen

  • Der primäre Kafka-Cluster muss ein Managed Service for Apache Kafka-Cluster sein. Der primäre Cluster ist der Cluster, in den der Kafka Connect-Cluster seine Metadaten schreibt.

  • Sie können keine benutzerdefinierten Connector-Plug-ins in Ihren Kafka Connect-Cluster hochladen.

  • Der Dienst unterstützt keine Validierung anhand eines Remote-Schemas über die Schemaregistrierung.

Nächste Schritte

Apache Kafka® ist eine eingetragene Marke der Apache Software Foundation oder ihrer verbundenen Unternehmen in den USA und/oder anderen Ländern.