Soluciona problemas de un conector de Pub/Sub

En esta sección, se proporciona orientación para solucionar problemas comunes que se producen cuando se usa un conector de fuente de Pub/Sub o un conector de receptor de Pub/Sub.

Faltan permisos de Pub/Sub

Si la cuenta de servicio de Kafka administrado no tiene permiso para acceder a los recursos de Pub/Sub, se produce el siguiente error:

PERMISSION_DENIED: User not authorized to perform this action.

Este error puede deberse a varios motivos.

  • Conector de Pub/Sub Source: Es posible que la cuenta de servicio de Managed Kafka no tenga permiso para acceder a la suscripción de Pub/Sub. Para resolver este problema, otorga a la cuenta de servicio administrada de Kafka los siguientes roles de Identity and Access Management (IAM):

    • Suscriptor de Pub/Sub (roles/pubsub.subscriber)
    • Visualizador de Pub/Sub (roles/pubsub.viewer)

    Para obtener más información, consulta Cómo otorgar permisos para leer desde la suscripción a Pub/Sub.

  • Conector receptor de Pub/Sub: Es posible que la cuenta de servicio de Managed Kafka no tenga permiso para publicar en el tema de Pub/Sub. Para resolver este problema, otorga al servicio de Kafka administrado el rol de IAM de Publicador de Pub/Sub (roles/pubsub.publisher).

    Para obtener más información, consulta Cómo otorgar permisos para publicar en el tema de Pub/Sub.

Error al verificar la suscripción

Si el conector de fuente de Pub/Sub no puede encontrar la suscripción de Pub/Sub, falla con un error similar al siguiente:

org.apache.kafka.connect.errors.ConnectException: Error verifying the subscription SUBSCRIPTION for project PROJECT

Para resolver este problema, verifica que la configuración del conector especifique la suscripción correcta y que la suscripción exista en tu proyecto.cps.subscription

No se pudieron convertir los registros de las tareas del conector

Si el convertidor de claves o el convertidor de valores del conector no son compatibles con el tipo de datos de los registros, el conector fallará y mostrará un error similar al siguiente:

org.apache.kafka.connect.errors.DataException: Invalid schema type for
CONVERTER_NAME: DATA_FORMAT

Para resolver este problema, cambia el convertidor de claves o el convertidor de valores a la clase correcta para admitir el tipo de datos del esquema.

Por ejemplo, si configuras el convertidor de claves en ByteArrayConverter, es posible que veas el error "Invalid schema type for ByteArrayConverter: STRING". Este error se produce porque ByteArrayConverter no admite tipos STRING. En su lugar, usa org.apache.kafka.connect.storage.StringConverter.

¿Qué sigue?