Channel types and defaults

    Custom Channel implementations each have their own event delivery mechanisms, such as in-memory or Broker-based. Examples of Brokers include KafkaBroker and the GCP Pub/Sub Broker.

    Knative provides the InMemoryChannel Channel implementation by default. This default implementation is useful for developers who do not want to configure a specific implementation type, such as Apache Kafka or NATSS Channels.

    You can use the generic Channel object if you want to create a Channel without specifying which Channel implementation CRD is used. This is useful if you do not care about the properties a particular Channel implementation provides, such as ordering and persistence, and you want to use the implementation selected by the cluster administrator.

    For more information about modifying ConfigMaps, see Configuring the Eventing Operator custom resource.

    Default Channels can be configured for the cluster, a namespace on the cluster, or both.

    Note

    In the following example, the cluster default Channel implementation is InMemoryChannel, while the namespace default Channel implementation for the is KafkaChannel.

    Note

    InMemoryChannel Channels must not be used in production environments.