4.3. サポートされている MongoDB トポロジー

MongoDB コネクターは、さまざまな MongoDB トポロジーと使用できます。

4.3.1. MongoDB レプリカセット

MongoDB コネクターは単一の MongoDB レプリカセットから変更をキャプチャーできます。実稼働レプリカセットには 少なくとも 3 つのメンバー が必要です。

MongoDB コネクターをレプリカセットで使用するには、コネクターの mongodb.hosts プロパティーから 1 つ以上のレプリカセットサーバーの アドレスをシードアドレス として指定します。コネクターは、これらのシードを使用してレプリカセットに接続します。その後、接続すると、レプリカからメンバーの完全セットと、どのメンバーがプライマリーになります。コネクターは、プライマリーに接続するためのタスクを開始し、プライマリーの oplog からの変更を取得します。レプリカセットが新しいプライマリーを選択すると、タスクは自動的に新しいプライマリーに切り替わります。

注記

MongoDB がプロキシー(OS X や Windows の Docker など)での前にある場合、クライアントがレプリカセットに接続してメンバーを検出すると、MongoDB クライアントはプロキシーを有効なメンバーとして除外し、プロキシーを通過せずに直接メンバーへの接続を試みます。

このような場合は、コネクターのオプションの設定プロパティーをに mongodb.members.auto.discover 設定 false し、コネクターにメンバーシップの検出を指示し、代わりに最初のシードアドレス( mongodb.hosts プロパティーで指定)をプライマリーノードとして使用するだけです。これは機能しますが、選択を行う際に問題が発生します。