Verbindung zu Apache Kafka herstellen
Hier erfahren Sie, wie eine Verbindung zu Apache Kafka erstellt wird, die als OCI GoldenGate-Quelle oder -Ziel verwendet werden kann.
Bevor Sie beginnen
Achten Sie auf Folgendes:
-
Erfahren Sie, wie OCI GoldenGate eine Verbindung zu Ihrer Quelle und Ihren Zielen herstellt.
-
Konfigurieren Sie die erforderlichen Policys, um den sicheren Vault- und Secrets-Zugriff zu aktivieren, wie Secrets verwenden, Vaults verwenden und Secret-Bundles lesen. Weitere Informationen finden Sie unter Minimale empfohlene Policys.
-
Wenn Sie TLS/mTLS verwenden, konvertieren Sie den JKS-Truststore oder Truststore und Keystore in das
PKCS12-Format, das in der Verbindung verwendet werden soll.-
Verwenden Sie das keytool-Dienstprogramm im JDK, um das PKCS12-Format zu konvertieren.
Für den Keystore fordert Sie das keytool-Utility zur Eingabe eines Kennworts auf, wie im folgenden Beispiel dargestellt:
keytool -importkeystore -srckeystore [MY_KEYSTORE.jks] -destkeystore [MY_KEYSTORE.p12] -srcstoretype JKS -deststoretype PKCS12 -deststorepass [PASSWORD_PKCS12]Für den Truststore fordert das keytool-Utility zur Eingabe eines Kennworts auf, wie im folgenden Beispiel dargestellt:
keytool -importkeystore -srckeystore [MY_TRUSTSTORE.jks] -destkeystore [MY_TRUSTSTORE.p12] -srcstoretype JKS -deststoretype PKCS12 -deststorepass [PASSWORD_PKCS12] -
Fügen Sie nach der Konvertierung von Keystore und Truststore die folgenden Zeilen zur Eigenschaftendatei des Kafka-Producers hinzu, und speichern Sie die Änderungen:
ssl.truststore.type=PKCS12 ssl.keystore.type=PKCS12 -
Laden Sie die Datei in die Producereigenschaften der Verbindung im Abschnitt Einstellungen von Erweiterte Optionen hoch.
-
Quellverbindung erstellen
So erstellen Sie eine Apache Kafka-Quellverbindung:
-
Wählen Sie auf der Seite "OCI GoldenGate-Überblick" die Option Verbindungen aus.
Sie können auch im Abschnitt "Ersten Schritte" auf Verbindung erstellen klicken und den 3. Schritt überspringen.
-
Wählen Sie auf der Seite "Verbindungen" die Option Verbindung erstellen.
-
Füllen Sie auf der Seite "Verbindung erstellen" die Felder folgendermaßen aus:
-
Geben Sie unter Name einen Namen für die Verbindung an.
-
(Optional) Geben Sie unter Beschreibung eine Beschreibung ein, mit der Sie diese Verbindung von anderen unterscheiden können.
-
(Nur für GoldenGate auf Multicloud) Wählen Sie Ihr Abonnement aus, und füllen Sie die folgenden Felder aus.
-
Wählen Sie aus der Dropdown-Liste Compartment das Compartment aus, in dem der Ressourcenanker gespeichert ist.
-
Wählen Sie die Multicloud-Partnerregion aus.
-
Wählen Sie Ihre Partnerverfügbarkeitszone aus. Die verfügbaren Optionen werden basierend auf der ausgewählten Multicloud-Partnerregion aufgefüllt.
-
-
Wählen Sie unter Compartment das Compartment aus, in dem die Verbindung erstellt werden soll.
-
Wählen Sie in der Dropdown-Liste Typ "Apache Kafka" aus.
-
Unter Bootstrap-Servern:
-
Geben Sie die Host- und Portnummer für den Bootstrap-Server an. Geben Sie die private IP nur ein, wenn der Hostname aus Ihrem Subnetz nicht aufgelöst werden kann oder SSL/TLS verwendet wird.
Hinweis: Wenn Sie eine private IP eingeben, schreibt OCI GoldenGate die private IP im Format
ip-10-0-0-0.ociggsvc.oracle.vcn.comneu.Tipp: Alle Knoten im Cluster müssen über FQDNs verfügen, damit Traversal über private Endpunkte möglich ist.
-
(Optional) Wählen Sie + Bootstrap-Server aus, um einen weiteren Bootstrap-Server hinzuzufügen.
-
-
Wählen Sie unter Sicherheitsprotokoll eine der folgenden Optionen aus, und füllen sie die entsprechenden Felder ab:
-
Einfacher Text
-
SASL über Plaintext
-
SASL über SSL
-
SSL
-
-
Erweitern Sie Erweiterte Optionen anzeigen. Sie können folgende Optionen konfigurieren:
-
Sicherheit
-
Heben Sie die Auswahl von Vault Secrets verwenden auf, ohne Kennwort-Secrets für diese Verbindung zu verwenden. Wenn diese Option nicht ausgewählt ist, gilt Folgendes:
-
Wählen Sie Von Oracle verwalteten Verschlüsselungsschlüssel verwenden aus, um die gesamte Verschlüsselungsschlüsselverwaltung an Oracle zu übergeben.
-
Wählen Sie Verschlüsselungsschlüssel von Kunden verwalten aus, um einen bestimmten Verschlüsselungsschlüssel auszuwählen, der in Ihrem OCI Vault gespeichert ist, um Ihre Verbindungszugangsdaten zu verschlüsseln.
-
-
-
Netzwerkverbindungen
-
Gemeinsamer Endpunkt, um einen Endpunkt für das zugewiesene Deployment freizugeben. Sie müssen die Konnektivität von der Ingress-IP des Deployments zulassen.
-
Dedizierter Endpunkt für Netzwerktraffic über einen dedizierten Endpunkt im zugewiesenen Subnetz in Ihrem VCN. Sie müssen Konnektivität von den Ingress-IPs dieser Verbindung zulassen.
Hinweis:
- Wenn die Zuweisung einer dedizierten Verbindung sieben Tage lang aufgehoben bleibt, konvertiert der Service sie in eine gemeinsame Verbindung.
- Weitere Informationen zur Oracle GoldenGate-Konnektivität.
-
-
Einstellungen
-
Wenn Sie diese Verbindung für Extract verwenden, ziehen Sie die Datei Consumer oder Producereigenschaften per Drag-and-Drop, oder wählen Sie sie aus. (.properties).
-
Um aus Kafka zu erfassen, erstellen Sie eine Kafka-Consumer-Eigenschaftendatei (.properties) mit einem der folgenden Deserializer oder Konverter:
-
Kafka-Consumer-Eigenschaften für JSON-Deserializer:
key.deserializer=org.apache.kafka.common.serialization.ByteArrayDeserializer value.deserializer=org.apache.kafka.common.serialization.ByteArrayDeserializer -
Kafka-Consumer-Eigenschaften für JSON-Konverter:
key.converter=org.apache.kafka.connect.json.JsonConverter value.converter=org.apache.kafka.connect.json.JsonConverter -
Kafka Verbrauchereigenschaften für Avro Konverter:
key.converter=io.confluent.connect.avro.AvroConverter value.converter=io.confluent.connect.avro.AvroConverter
-
-
-
Sicherheitsattribute: Fügen Sie Sicherheitsattribute hinzu, um den Zugriff auf diese Verbindung mit Zero Trust Packet Routing (ZPR) zu kontrollieren.
-
Tags: Sie können Tags hinzufügen, um Ihre Ressourcen zu organisieren.
-
-
-
Wählen Sie Erstellen.
Nachdem die Verbindung erstellt wurde, wird sie in der Liste "Verbindungen" angezeigt. Weisen Sie die Verbindung einem Deployment zu, um sie als Quelle oder Ziel in einer Replikation zu verwenden.
Zielverbindung erstellen
So erstellen Sie eine Apache Kafka-Zielverbindung:
-
Wählen Sie auf der Seite "OCI GoldenGate-Überblick" die Option Verbindungen aus.
Sie können auch im Abschnitt "Ersten Schritte" auf Verbindung erstellen klicken und den 3. Schritt überspringen.
-
Wählen Sie auf der Seite "Verbindungen" die Option Verbindung erstellen.
-
Füllen Sie auf der Seite "Verbindung erstellen" die Felder folgendermaßen aus:
-
Geben Sie unter Name einen Namen für die Verbindung an.
-
(Optional) Geben Sie unter Beschreibung eine Beschreibung ein, mit der Sie diese Verbindung von anderen unterscheiden können.
-
(Nur für GoldenGate auf Multicloud) Wählen Sie Ihr Abonnement aus, und füllen Sie die folgenden Felder aus.
-
Wählen Sie aus der Dropdown-Liste Compartment das Compartment aus, in dem der Ressourcenanker gespeichert ist.
-
Wählen Sie die Multicloud-Partnerregion aus.
-
Wählen Sie Ihre Partnerverfügbarkeitszone aus. Die verfügbaren Optionen werden basierend auf der ausgewählten Multicloud-Partnerregion aufgefüllt.
-
-
Wählen Sie unter Compartment das Compartment aus, in dem die Verbindung erstellt werden soll.
-
Wählen Sie in der Dropdown-Liste Typ "Apache Kafka" aus.
-
Unter Bootstrap-Servern:
-
Geben Sie die Host- und Portnummer für den Bootstrap-Server an. Geben Sie die private IP nur ein, wenn der Hostname aus Ihrem Subnetz nicht aufgelöst werden kann oder SSL/TLS verwendet wird.
Hinweis: Wenn Sie eine private IP eingeben, schreibt OCI GoldenGate die private IP im Format
ip-10-0-0-0.ociggsvc.oracle.vcn.comneu.Tipp: Alle Knoten im Cluster müssen über FQDNs verfügen, damit Traversal über private Endpunkte möglich ist.
-
(Optional) Wählen Sie + Bootstrap-Server aus, um einen weiteren Bootstrap-Server hinzuzufügen.
-
-
Wählen Sie unter Sicherheitsprotokoll eine der folgenden Optionen aus, und füllen sie die entsprechenden Felder ab:
-
Einfacher Text
-
SASL über Plaintext
-
SASL über SSL
-
SSL
-
-
Erweitern Sie Erweiterte Optionen anzeigen. Sie können folgende Optionen konfigurieren:
-
Sicherheit
-
Heben Sie die Auswahl von Vault Secrets verwenden auf, ohne Kennwort-Secrets für diese Verbindung zu verwenden. Wenn diese Option nicht ausgewählt ist, gilt Folgendes:
-
Wählen Sie Von Oracle verwalteten Verschlüsselungsschlüssel verwenden aus, um die gesamte Verschlüsselungsschlüsselverwaltung an Oracle zu übergeben.
-
Wählen Sie Verschlüsselungsschlüssel von Kunden verwalten aus, um einen bestimmten Verschlüsselungsschlüssel auszuwählen, der in Ihrem OCI Vault gespeichert ist, um Ihre Verbindungszugangsdaten zu verschlüsseln.
-
-
-
Netzwerkverbindungen
-
Gemeinsamer Endpunkt, um einen Endpunkt für das zugewiesene Deployment freizugeben. Sie müssen die Konnektivität von der Ingress-IP des Deployments zulassen.
-
Dedizierter Endpunkt für Netzwerktraffic über einen dedizierten Endpunkt im zugewiesenen Subnetz in Ihrem VCN. Sie müssen Konnektivität von den Ingress-IPs dieser Verbindung zulassen.
Hinweis:
- Wenn die Zuweisung einer dedizierten Verbindung sieben Tage lang aufgehoben bleibt, konvertiert der Service sie in eine gemeinsame Verbindung.
- Weitere Informationen zur Oracle GoldenGate-Konnektivität.
-
-
Einstellungen: Um die Snappy-Komprimierung in der Kafka-Replikation zu verwenden, ziehen Sie sie per Drag-and-Drop, oder wählen Sie Producereigenschaften aus, und ändern Sie die Replikationseinstellungen, wie unter Compression OCI GoldenGate (Confluent) Kafka-Replikation verwenden beschrieben.
-
Sicherheitsattribute: Fügen Sie Sicherheitsattribute hinzu, um den Zugriff auf diese Verbindung mit Zero Trust Packet Routing (ZPR) zu kontrollieren.
-
Tags: Sie können Tags hinzufügen, um Ihre Ressourcen zu organisieren.
-
-
-
Wählen Sie Erstellen.
Nachdem die Verbindung erstellt wurde, wird sie in der Liste "Verbindungen" angezeigt. Weisen Sie die Verbindung einem Deployment zu, um sie als Quelle oder Ziel in einer Replikation zu verwenden.
Nächste Schritte
Fehler bei der Kafka-Verbindung beheben
Die meisten Verbindungsprobleme führen zu TimeoutException-Fehlern. Beispiel:
A failure occurred sending a message to Kafka to topic [ggstest] org.apache.kafka.common.errors.TimeoutException: Topic ggstest not present in metadata after 60000/120000 ms.
Wenn diese Meldung in Ihrer Replicat-Berichtsdatei angezeigt wird, können Sie:
-
Stellen Sie sicher, dass das Zielthema vorhanden ist, oder prüfen Sie, ob die automatische Themenerstellung in den Kafka-Zieleinstellungen aktiviert ist.
-
Stellen Sie sicher, dass keine Firewallregeln den Datenverkehr blockieren.
-
Wenn Sie Kafka auf OCI mit einem privaten Endpunkt ausführen, stellen Sie sicher, dass Sie den internen FQDN als Bootstrap-Server in server.properties und in der Kafka-Verbindung verwenden.
-
Wenn Sie eine Verbindung zu einer Confluent Cloud mit privaten Endpunkten herstellen:
-
Stellen Sie sicher, dass die DNS-Zonen und DNS-Datensätze sowohl in OCI als auch in der Ziel-Cloud eines Drittanbieters ordnungsgemäß konfiguriert sind.
-
Stellen Sie sicher, dass die Netzwerkverbindung zwischen OCI und der Ziel-Cloud einwandfrei funktioniert.
-
Testen Sie, dass Sie über eine OCI-VM, die in demselben Subnetz ausgeführt wird, das mit der Drittanbieter-Cloud verbunden ist, eine Verbindung zur Confluent Cloud mit OpenSSL (
openssl s_client -connect <bootstrap>) herstellen können. -
Testen Sie, ob Sie Nachrichten von einem Kafka-Client veröffentlichen oder konsumieren können, der auf OCI in demselben Subnetz ausgeführt wird, das mit der Drittanbieter-Cloud verbunden ist. Wenn der Fehler auftritt, prüfen Sie Ihre Netzwerkeinstellungen sowohl auf OCI als auch in der Drittanbieter-Cloud.
-