Uso di Kafka Connect
Utilizza Kafka Connect con Oracle Cloud Infrastructure Streaming.
Nella sezione Gestione delle configurazioni di Kafka Connect sono disponibili i passi per l'uso della console, dell'interfaccia CLI e dell'interfaccia API.
Per utilizzare i connettori Kafka con Oracle Cloud Infrastructure Streaming, creare una configurazione di Kafka Connect. L'API di streaming chiama queste configurazioni array.
Le configurazioni Kafka Connect funzionano solo per i flussi nello stesso compartimento.
È possibile utilizzare più connettori Kafka con la stessa configurazione di Kafka Connect. Nei casi in cui è necessario produrre o consumare flussi in compartimenti separati o in cui è necessaria una maggiore capacità per evitare di superare i limiti di limitazione nella configurazione di Kafka Connect (ad esempio, troppi connettori o connettori con troppi lavoratori), è possibile creare più configurazioni del connettore Kafka.
Per ulteriori informazioni sulla gestione delle configurazioni di Kafka Connect, vedere Gestione delle configurazioni di Kafka Connect.
Connettori Kafka
La compatibilità con Kafka Connect in Streaming consente di sfruttare i numerosi connettori di prime e terze parti esistenti per spostare i dati dalle origini alle destinazioni.
Connettori Kafka per i prodotti Oracle:
- Oracle Cloud Infrastructure Object Storage (con Kafka Connect per S3)
- Connettore di origine Amazon S3 Kafka Connect per i producer
- Connettore sink Amazon S3 Kafka Connect, per i consumatori
- Oracle Integration Cloud
- Oracle Database (con JDBC Kafka Connect)
- Oracle GoldenGate
Per un elenco completo dei connettori sorgente e sink Kafka di terze parti, vedere l'hub ufficiale Confluent Kafka.
Discussioni su Kafka Connect
Il servizio di streaming crea automaticamente i tre argomenti (configurazione, offset e stato) necessari per utilizzare Kafka Connect quando si crea la configurazione di Kafka Connect. Questi argomenti contengono l'OCID della configurazione di Kafka Connect nei rispettivi nomi.
Inserire questi nomi di argomento nel file connect-distributed.properties
del connettore Kafka che si desidera utilizzare con Streaming.
Ad esempio:
# Relevant Kafka Connect setting
config.storage.topic:<connect_configuration_OCID>-config
offset.storage.topic:<connect_configuration_OCID>-offset
status.storage.topic:<connect_configuration_OCID>-status
Questi tre argomenti compattati devono essere utilizzati da Kafka Connect e Streaming per memorizzare i dati di configurazione e gestione dello stato. Non usarli per memorizzare i tuoi dati. Per garantire che i connettori utilizzino gli argomenti di configurazione di Kafka Connect per lo scopo previsto, per questi argomenti sono previsti limiti di rallentamento di 50 kb/s e 50 rps.
Server bootstrap
Impostare il server bootstrap nel file delle proprietà del connettore Kafka sull'endpoint per lo streaming sulla porta 9092. Ad esempio:
streaming.us-phoenix-1.oci.oraclecloud.com:9092
Per un elenco degli endpoint per lo streaming, vedere la sezione Streaming in Riferimento API ed endpoint.
Autenticazione
L'autenticazione con il protocollo Kafka utilizza i token di autenticazione e il meccanismo SASL/PLAIN. È possibile generare i token nella pagina dei dettagli utente della console. Per ulteriori informazioni, vedere Utilizzo dei token di autenticazione.
Creare un gruppo dedicato e concedere a tale gruppo l'autorizzazione per gestire i flussi nel compartimento o nella tenancy appropriati. È quindi possibile generare un token di autenticazione per l'utente creato e utilizzarlo nella configurazione del client Kafka.
Esempio di file delle proprietà del connettore Kafka
Di seguito è riportato un esempio di file connect-distributed.properties
del connettore Kafka.
bootstrap.servers=<streaming_endpoint>:9092
sasl.mechanism=PLAIN
security.protocol=SASL_PLAINTEXT
sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required username="<userid>" password="<authToken>";
producer.sasl.mechanism=PLAIN
producer.security.protocol=SASL_PLAINTEXT
producer.sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required username="<userid>" password="<authToken>";
consumer.sasl.mechanism=PLAIN
consumer.security.protocol=SASL_PLAINTEXT
consumer.sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required username="<userid>" password="<authToken>";
config.storage.topic:<connect_configuration_OCID>-config
offset.storage.topic:<connect_configuration_OCID>-offset
status.storage.topic:<connect_configuration_OCID>-status
Criteri IAM necessari
Per utilizzare Oracle Cloud Infrastructure, un amministratore deve essere un membro di un gruppo a cui è stato concesso l'accesso di sicurezza in un criterio da un amministratore della tenancy. Questo accesso è necessario se si utilizza la console o l'API REST con un SDK, un'interfaccia CLI o un altro strumento. Se viene visualizzato un messaggio che informa che non si dispone dell'autorizzazione o che non si è autorizzati, verificare con l'amministratore della tenancy il tipo di accesso di cui si dispone e il compartimento in cui funziona l'accesso.
Per consentire a un gruppo di gestire le configurazioni Kafka Connect, è necessario creare il criterio corretto nella tenancy. Ad esempio:
allow group <identity_domain_name>/<group_name> KafkaAdmins to manage connect-harnesses in tenancy
Per gli amministratori: il criterio in Consenti agli amministratori di streaming di gestire le risorse di streaming consente al gruppo specificato di eseguire qualsiasi operazione con le risorse del servizio di streaming e di streaming correlate.
Se non conosci i criteri, consulta la Panoramica sui criteri IAM. Per ulteriori informazioni, fare riferimento agli argomenti sotto riportati.
- Dettagli per il servizio di streaming nel riferimento ai criteri IAM
- Accesso alle risorse di streaming tra tenancy
- Documentazione ufficiale di Kafka Connect
- Post del blog: Oracle Streaming Service con Kafka Connect