为 Apache Kafka 配置通道¶
注意
本指南假设 Knative Eventing 安装在 knative-eventing
命名空间中。如果您将 Knative Eventing 安装在其他命名空间中,请将 knative-eventing
替换为该命名空间的名称。
要使用 Kafka 通道,您必须
- 安装 KafkaChannel 自定义资源定义 (CRD)。
- 创建一个 ConfigMap,指定创建 KafkaChannel 实例的默认配置。
创建一个 kafka-channel
ConfigMap¶
-
使用以下模板创建
kafka-channel
ConfigMap 的 YAML 文件apiVersion: v1 kind: ConfigMap metadata: name: kafka-channel namespace: knative-eventing data: channel-template-spec: | apiVersion: messaging.knative.dev/v1beta1 kind: KafkaChannel spec: numPartitions: 3 replicationFactor: 1
注意
此示例指定了两个特定于 Kafka 通道的额外参数;
numPartitions
和replicationFactor
。 -
通过运行以下命令应用 YAML 文件
其中kubectl apply -f <filename>.yaml
<filename>
是您在上一步中创建的文件的名称。 -
可选。要创建一个使用 Kafka 通道的 Broker,请在 Broker 规范中指定
kafka-channel
ConfigMap。您可以通过使用以下模板创建 YAML 文件来实现此目的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
-
通过运行以下命令应用 YAML 文件
其中kubectl apply -f <filename>.yaml
<filename>
是您在上一步中创建的文件的名称。
启用/配置 KafkaChannel 调度程序的自动伸缩¶
要启用 KafkaChannel 调度程序的自动伸缩,您可以阅读 此处说明