Unify and manage your data

Confluent Kafka messaging provider configuration

Learn about the configuration parameters required to use Confluent Kafka as a messaging provider in Reltio.

Confluent Kafka can be configured as a messaging provider for event streaming destinations. You can define the provider using either a provider alias configuration or a URI-based configuration.

Provider type values

The following provider type values define the authentication mechanism used to connect to Confluent Kafka:

TypeCredentials requiredDescription
kafkaOptionalUses PLAINTEXT if no credentials are provided, or SASL/PLAIN if credentials are provided.
kafka-localNoUses PLAINTEXT for local Confluent Kafka environments.
kafka-plainYesUses SASL/PLAIN authentication.
kafka-scram-sha-256YesUses SASL/SCRAM-SHA-256 authentication.
kafka-scram-sha-512YesUses SASL/SCRAM-SHA-512 authentication.

Provider configuration parameters

You can also configure Confluent Kafka providers using provider properties with a provider alias.

ParameterRequiredDescription
provider.<alias>.typeYesSpecifies the Confluent Kafka provider type and authentication mechanism.
provider.<alias>.hostYesConfluent Kafka bootstrap server in host:port format.
provider.<alias>.usernameConditionalKafka API key or username. Required for SASL authentication types.
provider.<alias>.passwordConditionalKafka API secret or password. Required for SASL authentication types.

For authentication types that require credentials, both username and password must be provided together. Providing only one of these values is not supported.

URI-based configuration

Confluent Kafka providers are configured using a URI that defines the authentication type, credentials, and Kafka bootstrap server.

The URI format is:


kafka-plain://{username}:{password}@{host}:{port}
            

The username and password values must be URL-encoded if they contain special characters.

Here's an example for uri:


kafka-plain://my-api-key:my-api-secret@pkc-12345.us-east-1.aws.confluent.cloud:9092

The Confluent Kafka provider URI contains the following components:

  • Scheme: Defines the authentication type, for example kafka-plain or kafka-scram-sha-256.
  • Username: Kafka API key or SASL username.
  • Password: Kafka API secret or SASL password.
  • Host and port: Confluent Kafka bootstrap server in host:port format.

Tenant configuration example

The Confluent Kafka provider is configured in the tenant messaging destinations using the provider URI.


{
    "messaging": {
        "destinations": [
            {
                "type": "queue",
                "provider": "kafka-plain://<username>:<password>@<host>:<port>",
                "name": "example",
                "enabled": true
            }
        ]
    }
}
    

Optional configuration properties

Additional Confluent Kafka configuration properties can be defined using the provider.<alias>.properties.* prefix.

These properties control connection behavior, topic configuration, and producer settings. Examples include:

  • Connection settings such as timeouts and in-flight message limits
  • Topic settings such as partition count and retention policies
  • Producer settings such as batching, compression, and retries

If not specified, default values defined by the Confluent Kafka client or environment configuration are used.