ESS' Kafka Configuration

ESS’ services communicate with each other by sending messages through Kafka. For example:

The following discusses some key Kafka configurations.

For more information on Kafka configuration, see https://quarkus.io/guides/kafka#kafka-configurationarrow-up-right.

circle-info

Tip Kafka MUST be configured with topic auto-creation enabled (i.e. auto.create.topics.enable = true ). See Custom MSK Configurationsarrow-up-right.

Configuring Bootstrap Kafka Brokers

You can configure ESS services to connect with Kafka either globally or per channel.

Global Configuration

To configure globally such that all the ESS’ message channelsarrow-up-right use the same Kafka instance, you can set KAFKA_BOOTSTRAP_SERVERS configuration.

circle-info

Note Inrupt-provided Kustomize overlays include, in the kafka-credentials.env file, KAFKA_BOOTSTRAP_SERVERS as an input to update. Set its value as part of updating inputs for your deployment.

Per Channel Configuration

To configure per channel such that the message channel uses a separate Kafka instance, for the services that use the channel, configure the corresponding input and output bootstrap servers for that channel MP_MESSAGING_[INCOMING|OUTGOING]_[CHANNEL]_BOOTSTRAP_SERVERSarrow-up-right.

Configuring Password for Encryption and Decryption of Messages

By default, Inrupt enables data encryption for all data that pass through the Kafka messaging system.

circle-info

Tip You MUST set the data encryption key values to a strong password.

Last updated