Connessione ad Apache Kafka

Imparare a creare una connessione ad Apache Kafka da utilizzare come origine o destinazione GoldenGate OCI.

Prima di iniziare

Prima di creare la connessione, assicurarsi di:

Crea una connessione di origine

Per creare una connessione Apache Kafka di origine, effettuare le operazioni riportate di seguito.
  1. Nella pagina Panoramica GoldenGate di OCI fare clic su Connessioni.
    È inoltre possibile fare clic su Crea connessione nella sezione Introduzione e passare al passo 3.
  2. Nella pagina Connessioni fare clic su Crea connessione.
  3. Nella pagina Crea connessione, completare i campi come indicato di seguito.
    1. In Nome, immettere un nome per la connessione.
    2. (Facoltativo) In Descrizione, immettere una descrizione che consenta di distinguere questa connessione dagli altri.
    3. Per Compartimento, selezionare il compartimento in cui creare la connessione.
    4. Nell'elenco a discesa Type selezionare Apache Kafka.
    5. Sotto i server Bootstrap:
      1. Immettere il numero Host e Porta per il server Bootstrap. Immettere l'IP privato solo se il nome host non è risolvibile dalla subnet o se utilizza SSL/TLS.
        Nota

        Se si immette un IP privato, OCI GoldenGate riscrive l'IP privato nel formato ip-10-0-0-0.ociggsvc.oracle.vcn.com.

        Suggerimento

        Tutti i nodi nel cluster devono disporre di nomi FQDN per consentire il passaggio su endpoint privati.
      2. (Opzionale) Fare clic su + server bootstrap per aggiungere un altro server bootstrap.
    6. Per Protocollo di sicurezza, selezionare uno dei seguenti campi, quindi completare i campi corrispondenti:
      • Corpo del testo
      • SASL su testo semplice
      • SASL su SSL
      • SSL
    7. Fare clic su Mostra opzioni avanzate. È possibile configurare le opzioni riportate di seguito.
      • Sicurezza
        • Deselezionare Usa segreti vault per non utilizzare i segreti password per questa connessione. Se l'opzione non viene selezionata:
          • Selezionare Usa chiave di cifratura gestita da Oracle per lasciare tutta la gestione delle chiavi di cifratura a Oracle.
          • Selezionare Usa chiave di cifratura gestita dal cliente per selezionare una chiave di cifratura specifica memorizzata nel vault OCI per cifrare le credenziali di connessione.
      • Connettività di rete
        • Endpoint condiviso, per condividere un endpoint con la distribuzione assegnata. È necessario consentire la connettività dall'IP in entrata della distribuzione.
        • Endpoint dedicato, per il traffico di rete tramite un endpoint dedicato nella subnet assegnata nella VCN. È necessario consentire la connettività dagli IP in entrata di questa connessione.
          Nota

          • Se una connessione dedicata rimane non assegnata per sette giorni, il servizio la converte in una connessione condivisa.
          • Ulteriori informazioni sulla connettività di Oracle GoldenGate.
      • Impostazioni
        • Proprietà consumer Kafka per il deserializzatore JSON:
          key.deserializer=org.apache.kafka.common.serialization.ByteArrayDeserializer
          value.deserializer=org.apache.kafka.common.serialization.ByteArrayDeserializer
        • Proprietà consumer Kafka per il convertitore JSON:
          key.converter=org.apache.kafka.connect.json.JsonConverter
          value.converter=org.apache.kafka.connect.json.JsonConverter
        • Kafka Proprietà consumer per il convertitore Avro:
          key.converter=io.confluent.connect.avro.AvroConverter
          value.converter=io.confluent.connect.avro.AvroConverter
      • Tag: aggiungere tag per organizzare le risorse.
  4. Fare clic su Crea.
Una volta creata, la connessione viene visualizzata nell'elenco Connessioni. Assicurarsi di assegnare la connessione a una distribuzione per utilizzarla come origine o destinazione in una replica.

Creare la connessione di destinazione

Per creare una connessione Apache Kafka di destinazione, effettuare le operazioni riportate di seguito.
  1. Nella pagina Panoramica GoldenGate di OCI fare clic su Connessioni.
    È inoltre possibile fare clic su Crea connessione nella sezione Introduzione e passare al passo 3.
  2. Nella pagina Connessioni fare clic su Crea connessione.
  3. Nella pagina Crea connessione, completare i campi come indicato di seguito.
    1. In Nome, immettere un nome per la connessione.
    2. (Facoltativo) In Descrizione, immettere una descrizione che consenta di distinguere questa connessione dagli altri.
    3. (Solo per GoldenGate nel multicloud) Selezionare la sottoscrizione, quindi completare i campi riportati di seguito.
      1. Dall'elenco a discesa Compartimento selezionare il compartimento in cui risiede l'ancora risorsa.
      2. Selezionare l'area partner multicloud.
      3. Seleziona la tua zona di disponibilità dei partner. Le opzioni disponibili vengono popolate in base all'area partner multicloud selezionata.
    4. Per Compartimento, selezionare il compartimento in cui creare la connessione.
    5. Nell'elenco a discesa Type selezionare Apache Kafka.
    6. Sotto i server Bootstrap:
      1. Immettere il numero Host e Porta per il server Bootstrap. Immettere l'IP privato solo se il nome host non è risolvibile dalla subnet o se utilizza SSL/TLS.
        Nota

        Se si immette un IP privato, OCI GoldenGate riscrive l'IP privato nel formato ip-10-0-0-0.ociggsvc.oracle.vcn.com.

        Suggerimento

        Tutti i nodi nel cluster devono disporre di nomi FQDN per consentire il passaggio su endpoint privati.
      2. (Opzionale) Fare clic su + server bootstrap per aggiungere un altro server bootstrap.
    7. Per Protocollo di sicurezza, selezionare uno dei seguenti campi, quindi completare i campi corrispondenti:
      • Corpo del testo
      • SASL su testo semplice
      • SASL su SSL
      • SSL
    8. Fare clic su Mostra opzioni avanzate. È possibile configurare le opzioni riportate di seguito.
      • Sicurezza
        • Deselezionare Usa segreti vault per non utilizzare i segreti password per questa connessione. Se l'opzione non viene selezionata:
          • Selezionare Usa chiave di cifratura gestita da Oracle per lasciare tutta la gestione delle chiavi di cifratura a Oracle.
          • Selezionare Usa chiave di cifratura gestita dal cliente per selezionare una chiave di cifratura specifica memorizzata nel vault OCI per cifrare le credenziali di connessione.
      • Connettività di rete
        • Endpoint condiviso, per condividere un endpoint con la distribuzione assegnata. È necessario consentire la connettività dall'IP in entrata della distribuzione.
        • Endpoint dedicato, per il traffico di rete tramite un endpoint dedicato nella subnet assegnata nella VCN. È necessario consentire la connettività dagli IP in entrata di questa connessione.
          Nota

          • Se una connessione dedicata rimane non assegnata per sette giorni, il servizio la converte in una connessione condivisa.
          • Ulteriori informazioni sulla connettività di Oracle GoldenGate.
      • ImpostazioniPer utilizzare la compressione Snappy nella replica Kafka, trascinare la selezione o selezionare Proprietà del producer e modificare le impostazioni di replica come descritto in Utilizzo della replica Kafka Compression OCI GoldenGate (Confluent).
      • Attributi di sicurezza: aggiungere attributi di sicurezza per controllare l'accesso a questa connessione utilizzando Zero Trust Packet Routing (ZPR).
      • Tag: aggiungere tag per organizzare le risorse.
  4. Fare clic su Crea.
Una volta creata, la connessione viene visualizzata nell'elenco Connessioni. Assicurarsi di assegnare la connessione a una distribuzione per utilizzarla come origine o destinazione in una replica.

Risolvere gli errori di connessione a Kafka

La maggior parte dei problemi di connessione genera errori TimeoutException. Ad esempio:

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.

Se questo messaggio viene visualizzato nel file del report Replicat, è possibile:

  • Assicurarsi che l'argomento di destinazione sia presente o verificare che la creazione automatica dell'argomento sia abilitata nelle impostazioni Kafka di destinazione.
  • Assicurarsi che non vi siano regole firewall che bloccano il traffico.
  • Se si esegue Kafka su OCI con un endpoint privato, assicurarsi di utilizzare il nome FQDN interno come server di bootstrap in server.properties e nella connessione Kafka.
  • Se ti stai connettendo a un cloud Confluent con endpoint privati:
    • Assicurarsi che le zone DNS e i record DNS siano configurati correttamente sia nel cloud OCI che nel cloud di terze parti di destinazione.
    • Assicurarsi che la connessione di rete tra OCI e il cloud di destinazione funzioni correttamente.
    • Eseguire il test per connettersi al cloud di destinazione Confluent con OpenSSL (openssl s_client -connect <bootstrap>) da una VM OCI in esecuzione nella stessa subnet connessa al cloud di terze parti.
    • Test che puoi pubblicare o utilizzare i messaggi di un client Kafka in esecuzione su OCI all'interno della stessa subnet connessa al cloud di terze parti. In caso di errore, controlla le impostazioni di rete sia su OCI che sul cloud di terze parti.