第9章 Topic Operator を使用した Kafka トピックの管理
KafkaTopic
リソースは、パーティションやレプリケーション係数の設定などのトピックを設定します。KafkaTopic
を使用してトピックを作成、変更、または削除すると、Topic Operator はこれらの変更が Kafka クラスターに確実に反映されるようにします。
KafkaTopic
リソースの詳細については、KafkaTopic
スキーマ参照 を参照してください。
9.1. トピック管理モード リンクのコピーリンクがクリップボードにコピーされました!
KafkaTopic
リソースは、Kafka クラスター内の単一トピックを管理します。Topic Operator は、KafkaTopic
リソースと Kafka トピックを管理するための 2 つのモードを提供します。
- 双方向モード
- 双方向モードでは、クラスター管理に ZooKeeper が必要です。KRaft モードでの AMQ Streams の使用とは互換性がありません。
- (プレビュー) 単方向モード
- 一方向モードでは、クラスター管理に ZooKeeper は必要ありません。KRaft モードでの AMQ Streams の使用と互換性があります。
一方向トピック管理はプレビューとして利用できます。一方向トピック管理はデフォルトでは有効になっていないため、それを使用できるようにするには 、UnidirectionTopicOperator
フィーチャーゲートを有効にする 必要があります。
9.1.1. 双方向のトピック管理 リンクのコピーリンクがクリップボードにコピーされました!
双方向モードでは、Topic Operator は次のように動作します。
-
KafkaTopic
が作成、削除、または変更されると、Topic Operator は Kafka トピックに対して対応するアクションを実行します。 -
同様に、Kafka クラスター内でトピックが作成、削除、または変更されると、Topic Operator は
KafkaTopic
リソースに対して対応する操作を実行します。
KafkaTopic
リソースまたは Kafka で直接トピックを管理する方法を 1 つ保持してみてください。特定のトピックで、両方の方法を頻繁に切り替えないでください。
9.1.2. (プレビュー) 一方向のトピック管理 リンクのコピーリンクがクリップボードにコピーされました!
双方向モードでは、Topic Operator は次のように動作します。
-
KafkaTopic
が作成、削除、または変更されると、Topic Operator は Kafka トピックに対して対応するアクションを実行します。
対応する KafkaTopic
リソースが存在せずに、トピックが Kafka クラスター内で直接作成、削除、または変更された場合、Topic Operator はそのトピックを管理しません。Topic Operator は KafkaTopic
リソースに関連付けられた Kafka トピックのみを管理し、Kafka クラスター内で独立して管理されるトピックに干渉しません。Kafka トピックに KafkaTopic
が存在する場合は、リソースの外部で行われた設定変更はすべて元に戻されます。
Topic Operator は、複数の KafkaTopic
リソースが同じ .spec.topicName
を使用して Kafka トピックを管理しようとしているケースを検出できます。最も古いリソースのみが調整され、他のリソースはリソースの競合エラーで失敗します。