Uso de Kafka Connect

Utilice Kafka Connect con Oracle Cloud Infrastructure Streaming.

Gestión de configuraciones de Kafka Connect proporciona pasos para utilizar la consola, la CLI y la API.

Para utilizar los conectores de Kafka con Oracle Cloud Infrastructure Streaming, cree una configuración de Kafka Connect. La API de Streaming llama a estas plantillas de configuraciones.

Nota

Las configuraciones de Kafka Connect solo funcionan para flujos del mismo compartimento.

Puede utilizar varios conectores de Kafka con la misma configuración de Kafka Connect. En los casos en los que sea necesario producir o consumir flujos en compartimentos independientes o en los que se necesite más capacidad para evitar alcanzar la limitación en la configuración de Kafka Connect (por ejemplo, demasiados conectores o conectores con demasiados trabajadores), puede crear más configuraciones de conector de Kafka.

Para obtener más información sobre la gestión de configuraciones de Kafka Connect, consulte Gestión de configuraciones de Kafka Connect.

Conectores de Kafka

La compatibilidad con Kafka Connect en Streaming significa que puede aprovechar los numerosos conectores propios y de terceros existentes para mover datos de los orígenes a los destinos.

Conectores de Kafka para productos de Oracle:

Para obtener una lista completa de conectores de origen y receptor de Kafka de terceros, consulte el hub oficial Confluent de Kafka.

Temas de Kafka Connect

El servicio Streaming crea automáticamente los tres temas (config, offset y status) necesarios para utilizar Kafka Connect cuando crea la configuración de Kafka Connect. Estos temas contienen el OCID de la configuración de Kafka Connect en sus nombres.

Coloque estos nombres de temas en el archivo connect-distributed.properties del conector de Kafka que desea utilizar con Streaming.

Por ejemplo:

# 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
Nota

Estos tres temas compactados están diseñados para que los utilicen Kafka Connect y Streaming para almacenar datos de configuración y gestión de estado. No los uses para almacenar tus datos. Para garantizar que los conectores utilizan los temas de configuración de Kafka Connect para su propósito previsto, existen limitaciones estrictas de 50 kb/s y 50 rps para estos temas.

Servidor de inicialización de datos

Defina el servidor de inicialización de datos en el archivo de propiedades del conector de Kafka en el punto final para Streaming en el puerto 9092. Por ejemplo:

streaming.us-phoenix-1.oci.oraclecloud.com:9092
Nota

Para obtener una lista de puntos finales para el servicio de streaming, consulte la sección Streaming en Referencia y puntos finales de API.

Autenticación

La autenticación con el protocolo de Kafka utiliza tokens de autenticación y el mecanismo SASL/PLAIN. Puede generar tokens en la página de detalles del usuario de la consola. Consulte Trabajar con tokens de autenticación para obtener más información.

Consejo

Cree un grupo dedicado y otorgue a ese grupo el permiso para gestionar flujos en el compartimento o arrendamiento adecuado. A continuación puede generar un token de autenticación para el usuario que ha creado y utilizarlo en la configuración del cliente de Kafka.

Archivo de propiedades de conector de Kafka de ejemplo

A continuación se muestra un archivo connect-distributed.properties de conector de Kafka de ejemplo:

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

Política de IAM necesaria

Para utilizar Oracle Cloud Infrastructure, un administrador debe ser miembro de un grupo al que un administrador de arrendamiento haya otorgado acceso de seguridad en una política . Este acceso es necesario tanto si utiliza la Consola como la API de REST con un SDK, una CLI u otra herramienta. Si recibe un mensaje que indica que no tiene permiso o no está autorizado, verifique con el administrador del arrendamiento el tipo de acceso que tiene y en qué compartimento trabaja el acceso.

Para permitir que un grupo gestione las configuraciones de Kafka Connect, debe crear la política correcta en su arrendamiento. Por ejemplo:

allow group <identity_domain_name>/<group_name> KafkaAdmins to manage connect-harnesses in tenancy

Para los administradores: la política de Permitir a los administradores de flujos gestionar recursos de flujo permite al grupo especificado realizar todas las acciones con el flujo y los recursos del servicio Streaming relacionados.

Si no está familiarizado con las políticas, consulte Visión general de las políticas de IAM. Para obtener más información, consulte: