Skip to content

Configuring event bus

Set up the default event bus

An OMAG Server uses an event bus such as Apache Kafka to exchange events with other servers and tools.

Egeria manages the specific topic names and the event payloads; however, it needs to know where the event bus is deployed and any properties needed to configure it.

Since the event bus is used in multiple places, the configuration document allows you to set up the details of the event bus which are then incorporated into all the places where the event bus is needed.

Important sequencing information

You need to set up this information before configuring any of the following:

The following command creates information about the event bus. This information is used on the subsequent configuration of the OMAG Server subsystems. It does not affect any subsystems that have already been configured in the configuration document and if the event bus is not needed, its values are ignored.

It is possible to add arbitrary name/value pairs as JSON in the request body. The correct properties to use are defined in the connector type for the event bus.

POST - configure event bus

{{platformURLRoot}}/open-metadata/admin-services/users/{{adminUserId}}/servers/{{serverName}}/event-bus
Example: Apache Kafka

For example, when using Apache Kafka as your event bus you may want to configure properties that control the behavior of the consumer that receives events and the producer that sends events. This is a typical set of producer and consumer properties:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
{
    "producer": {
        "bootstrap.servers":"localhost:9092",
        "acks":"all",
        "retries":"0",
        "batch.size":"16384",
        "linger.ms":"1",
        "buffer.memory":"33554432",
        "max.request.size":"10485760",
        "key.serializer":"org.apache.kafka.common.serialization.StringSerializer",
        "value.serializer":"org.apache.kafka.common.serialization.StringSerializer",
        "kafka.omrs.topic.id":"cocoCohort"
    },
    "consumer": {
        "bootstrap.servers":"localhost:9092",
        "zookeeper.session.timeout.ms":"400",
        "zookeeper.sync.time.ms":"200",
        "fetch.message.max.bytes":"10485760",
        "max.partition.fetch.bytes":"10485760",
        "key.deserializer":"org.apache.kafka.common.serialization.StringDeserializer",
        "value.deserializer":"org.apache.kafka.common.serialization.StringDeserializer",
        "kafka.omrs.topic.id":"cocoCohort"
    }
}

A different type of event bus would use different properties.

Back to top