5.2. Kafka トピックの設定
KafkaTopic
リソースのプロパティーを使用して Kafka トピックを設定します。
oc apply
を使用すると、トピックを作成または編集できます。oc delete
を使用すると、既存のトピックを削除できます。
以下はその例です。
-
oc apply -f <topic-config-file>
-
oc delete KafkaTopic <topic-name>
この手順では、10 個のパーティションと 2 つのレプリカがあるトピックを作成する方法を説明します。
作業を開始する前の注意事項
以下を考慮してから変更を行うことが重要になります。
Kafka は
KafkaTopic
リソースによる以下の変更をサポートしません。-
spec.topicName
を使用したトピック名の変更 -
spec.partitions
を使用したパーティションサイズの減少
-
-
spec.replicas
を使用して最初に指定したレプリカの数を変更することはできません。 -
キーのあるトピックの
spec.partitions
を増やすと、レコードをパーティション化する方法が変更されます。これは、トピックがセマンティックパーティションを使用するとき、特に問題になる場合があります。
前提条件
- TLS 認証および暗号化を使用してリスナーで設定された 稼働中の Kafka クラスターが必要です。
- 稼働中の Topic Operator が必要です (通常は Entity Operator でデプロイされます) 。
-
トピックを削除する場合は、
Kafka
リソースのspec.kafka.config
がdelete.topic.enable=true
(デフォルト) である必要があります。
手順
作成する
KafkaTopic
が含まれるファイルを準備します。KafkaTopic
の例apiVersion: kafka.strimzi.io/v1beta1 kind: KafkaTopic metadata: name: orders labels: strimzi.io/cluster: my-cluster spec: partitions: 10 replicas: 2
ヒントトピックを変更する場合、現行バージョンのリソースは、
oc get kafkatopic orders -o yaml
を使用して取得できます。OpenShift で
KafkaTopic
リソースを作成します。oc apply -f <topic-config-file>