第9章 Streams for Apache Kafka と MirrorMaker 2 の使用
MirrorMaker 2 を使用して、データセンター内またはデータセンター間で 2 つ以上のアクティブな Kafka クラスター間でデータをレプリケーションします。
MirrorMaker 2 を設定するには、config/connect-mirror-maker.properties
設定ファイルを編集します。必要に応じて、MirrorMaker 2 の分散トレースを有効 にすることができます。
大量のメッセージ処理
設定を調整して、大量のメッセージを処理できます。詳細は、大量のメッセージの処理 を参照してください。
MirrorMaker 2 には、MirrorMaker の以前のバージョンではサポートされていない機能があります。ただし、MirrorMaker 2 をレガシーモードで使用するように設定 できます。
9.1. active/active または active/passive モードの設定
MirrorMaker 2 は、active/passive または active/active クラスター設定で使用できます。
- アクティブ/アクティブのクラスター設定
- アクティブ/アクティブ設定には、双方向でデータをレプリケーションするアクティブなクラスターが 2 つあります。アプリケーションはいずれかのクラスターを使用できます。各クラスターは同じデータを提供できます。これにより、地理的に異なる場所で同じデータを利用できるようにします。コンシューマーグループは両方のクラスターでアクティブであるため、レプリケーションされたトピックのコンシューマーオフセットはソースクラスターに同期されません。
- active/passive クラスター設定
- active/passive 設定には、passive クラスターにデータをレプリケーションする active クラスターがあります。passive クラスターはスタンバイのままになります。システムに障害が発生した場合に、データ復旧に passive クラスターを使用できます。
プロデューサーとコンシューマーがアクティブなクラスターのみに接続することを前提とします。MirrorMaker 2 クラスターはターゲットごとに必要です。
9.1.1. 双方向レプリケーション (active/active)
MirrorMaker 2 アーキテクチャーは、アクティブ/アクティブ クラスター設定での双方向レプリケーションをサポートします。
各クラスターは、source および remote トピックの概念を使用して、別のクラスターのデータをレプリケーションします。同じトピックが各クラスターに保存されるため、リモートトピックの名前は MirrorMaker 2 によってソースクラスターを表すように自動的に変更されます。元のクラスターの名前の先頭には、トピックの名前が追加されます。
図9.1 トピック名の変更

ソースクラスターにフラグを付けると、トピックはそのクラスターにレプリケーションされません。
remote トピックを介したレプリケーションの概念は、データの集約が必要なアーキテクチャーの設定に役立ちます。コンシューマーは、同じクラスター内でソースおよびリモートトピックにサブスクライブできます。これに個別の集約クラスターは必要ありません。
9.1.2. 一方向レプリケーション (active/passive)
MirrorMaker 2 アーキテクチャーは、active/passive クラスター設定での一方向レプリケーションをサポートします。
active/passive のクラスター設定を使用してバックアップを作成したり、データを別のクラスターに移行したりできます。この場合、リモートトピックの名前の自動変更は推奨しません。
IdentityReplicationPolicy
をソースコネクター設定に追加することで、名前の自動変更をオーバーライドできます。この設定が適用されると、トピックには元の名前が保持されます。