Connessione ad Apache Kafka

Verrà descritto come creare una connessione ad Apache Kafka da utilizzare come origine o destinazione OCI GoldenGate.

Prima di iniziare

Prima di creare la connessione, assicurarsi di:

Crea una connessione di origine

Per creare una connessione Apache Kafka di origine, procedere come segue.
  1. Nella pagina Panoramica di OCI GoldenGate, fare clic su Connessioni.
    È inoltre possibile fare clic su Crea connessione nella sezione Inizia e andare 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. Per Nome, immettere un nome per la connessione.
    2. (Facoltativo) In Descrizione, immettere una descrizione che consenta di distinguere questa connessione dagli altri.
    3. Per il compartimento, selezionare il compartimento in cui creare la connessione.
    4. Dal menu a discesa Tipo, 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:
      • Testo non codificato
      • SASL su testo non codificato
      • SASL su SSL
      • SSL
    7. Espandere l'area Mostra opzioni avanzate. È possibile configurare le opzioni seguenti:
      • Sicurezza
        • Deselezionare Usa segreti vault per non utilizzare 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: aggiunge 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, procedere come segue.
  1. Nella pagina Panoramica di OCI GoldenGate, fare clic su Connessioni.
    È inoltre possibile fare clic su Crea connessione nella sezione Inizia e andare 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. Per Nome, immettere un nome per la connessione.
    2. (Facoltativo) In Descrizione, immettere una descrizione che consenta di distinguere questa connessione dagli altri.
    3. Per il compartimento, selezionare il compartimento in cui creare la connessione.
    4. Dal menu a discesa Tipo, 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:
      • Testo non codificato
      • SASL su testo non codificato
      • SASL su SSL
      • SSL
    7. Espandere l'area Mostra opzioni avanzate. È possibile configurare le opzioni seguenti:
      • Sicurezza
        • Deselezionare Usa segreti vault per non utilizzare 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 o selezionare Proprietà del producer e modificare le impostazioni di replica come descritto in Utilizzo della replica Kafka di Compression OCI GoldenGate (Confluent).
      • Tag: aggiunge 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.