Configure Kafka Channels¶
Note
This guide assumes Knative Eventing is installed in the knative-eventing
namespace. If you have installed Knative Eventing in a different namespace, replace knative-eventing
with the name of that namespace.
To use Kafka Channels, you must:
- Install the KafkaChannel custom resource definition (CRD).
- Create a ConfigMap that specifies default configurations for how KafkaChannel instances are created.
Create a kafka-channel
ConfigMap¶
-
Create a
kafka-channel
ConfigMap by running the command:kubectl apply -f - <<EOF apiVersion: v1 kind: ConfigMap metadata: name: kafka-channel namespace: knative-eventing data: channelTemplateSpec: | apiVersion: messaging.knative.dev/v1beta1 kind: KafkaChannel spec: numPartitions: 3 replicationFactor: 1 EOF
Note
This example specifies two extra parameters that are specific to Kafka Channels;
numPartitions
andreplicationFactor
. -
Optional. To create a Broker that uses Kafka Channels, specify the
kafka-channel
ConfigMap in the Broker spec. You can do this by running the command:kubectl apply -f - <<EOF apiVersion: eventing.knative.dev/v1 kind: Broker metadata: annotations: eventing.knative.dev/broker.class: MTChannelBasedBroker name: kafka-backed-broker namespace: default spec: config: apiVersion: v1 kind: ConfigMap name: kafka-channel namespace: knative-eventing EOF