As part of your event-driven architecture solution, Event Endpoint Management provides the capability to describe and catalog your Kafka topics as event sources, and to grant access to application developers within the organization. Application developers can discover event endpoints and configure their applications to access them through the Event Gateway. With Event Endpoint Management, you can control access to any of your event endpoints, and also control what data can be produced to them or consumed from them.
Note: The ability to produce events is only available in Event Endpoint Management version 11.1.5 and later.
Access to the event endpoints is managed by the Event Gateway. The Event Gateway handles the incoming requests from applications to produce (write) events to a topic or to consume from a topic’s stream of events. The Event Gateway is independent of your Kafka clusters, making access control to topics possible without requiring any changes to your Kafka cluster configuration.
Event Endpoint Management can be deployed as a standalone installation, or it can be deployed as part of Cloud Pak For Integration. You can also integrate Event Endpoint Management with IBM API Connect by importing the AsyncAPI document that defines the Kafka event source. This integration provides the option to use events as part of your overall API management solution.
The following diagram provides an overview of Event Endpoint Management.
- The Kafka administrator describes the Kafka topic, which is the event source. They can select a topic from an existing Kafka cluster or specify a new cluster, after which the topics on that cluster can be made available by adding and describing them.
- The Kafka administrator creates options for a topic to define different ways of presenting the topic in the catalog.
- The Kafka administrator publishes the event source in one of the following ways depending on their version:
- The Kafka administrator publishes the Kafka topic. The topic is then available in the catalog for application developers to discover and use as an event source.
- The Kafka administrator publishes an option. The option is then available in the catalog for application developers to discover and use.
- In the catalog, the application developer can browse the available entries or event endpoints that represent event sources and discover information about the kind of event data available, based on which they can decide which one to use in their applications.
- The application developer selects the topic that provides the source of events required for their application and completes one of the following actions depending on their version:
- Subscribes to the topic, generating the required credentials for their application to consume from the topic. The developers can manage their subscriptions through the Event Endpoint Management UI.
- Chooses an appropriate event endpoint for their application to use. They subscribe to that event endpoint to generate the required credentials to provide their application with access to the event endpoint through the Event Gateway. The developers can manage their subscriptions through the Event Endpoint Management UI.
- The application developer connects their application to the event endpoint using the snippets and credentials provided, and this sets up their application with access to the events through the Event Gateway.
- The Event Gateway routes traffic securely to and from the Kafka cluster that holds the topic, providing the access to the application to interact with the topic.