Skip to content

kafka based knative channel implementation without kafka admin rights

License

Notifications You must be signed in to change notification settings

Optum/kafka-topic-channel

Repository files navigation

Kafka Topic Channel

Go Report Card go.dev reference LICENSE

Kafka Topic Channel is a knative channel class based on kafka topic

Why ?

There are already knative maintained channels like kafka consolidated, kafka distributed, inmemory channel, why new channel? The answer is

Knative eventing primitives like broker, trigger and subscription are great for event processing, but they rely on the underlying channel. The existing kafka based channels needs kafka admin rights and requires the knative operator to maintain the kafka cluster or find a managed kafka cluster with admin rights. As a knative operator its challenging to maintain another big solution like kafka. If you are in the same boat, this kafka channel solution might work for you.

This implementation,

  • Creates a knative channel based on the Kafka Topic information in any namespace.
  • Kafka connection information is identical to kafka source
  • Other knative primitives like broker, trigger and subscription works as is on this channel
  • Each kafka topic channel resource would create a separate dispatcher/channel pod
  • Bring your own kafka topic, get a knative channel

Installation

Prereq for using this channel is knative eventing with broker.

Once you have knative eventing in your cluster, install knative-topic-channel.

kubectl apply -f config/release/release.yaml

Usage

Please take a look at the samples on how to use this channel.

Contributing to the Project

The team is open to contributions to our project. For more details, see our Contribution Guide.

About

kafka based knative channel implementation without kafka admin rights

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published