設定 Apache Kafka 的 Channels¶
注意
本指南假設 Knative Eventing 安裝在 knative-eventing
命名空間中。如果您已將 Knative Eventing 安裝在不同的命名空間中,請將 knative-eventing
替換為該命名空間的名稱。
若要使用 Kafka Channels,您必須
- 安裝 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 Channels 特有的額外參數:
numPartitions
和replicationFactor
。 -
執行以下命令來套用 YAML 檔案
其中kubectl apply -f <filename>.yaml
<filename>
是您在上一步中建立的檔案名稱。 -
選用。若要建立使用 Kafka Channels 的 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 調度器的自動縮放,您可以閱讀此處的說明