web-dev-qa-db-ja.com

Mongo DBクラスターの構成中に(ホスト名ではなく)IPアドレスを使用することは正しいですか?問題が発生しますか?

一部のデータ分析にMongo DBクラスターを使用しています(Mongo DBバージョン2.4.5)。

私の設定は次のとおりです:

1)Node1-mongoconfigサーバー、mongod shard

2)Node2-mongoconfigサーバー、mongod shard

3)Node3-mongoconfigサーバー、mongos

4)Node4-mongos

上記のすべてのノードは、OSレベルで固有のホスト名を持っています(シェルコマンド "hostname"の出力)

このMongo DBクラスターの構成中に、ホスト名の代わりにIPアドレスを使用することは正しいですか? DNSサーバーが原因で直面している問題があり、ホスト名の代わりにIPアドレスを使用してクラスター全体(構成サーバーのアドレス、シャードなど)を構成したいと思います。

これはクラスターを構成する正しい方法ですか、それとも問題が発生しますか?

3
ShekharM

通常、クラスターの構成にIPアドレスを使用することはお勧めしません。環境については言及していませんが、多くの環境ではリブートによりIPアドレスが変更されることがよくあります。あるいは、将来的に1つ以上のノードを別のホストに移動する必要があるかもしれません。

その場合、IPアドレスは変更されますが、ホスト名(DNSではなく hostsファイル のホスト名を使用する場合も)を使用すると、抽象化のレイヤーが提供され、ホスト名は同じままで、そのような移動のためにデータベース構成を変更する必要はありません。

これは、シャード環境の構成サーバーでは特に重要になります。変更されたIPアドレスは、手順が変更されたホスト名と同じであり、 この手順 からわかるように、構成サーバーの移動にはクラスターのダウンタイムが必要であることを意味します。

以上のことから、テストまたはすべてを破棄して再起動できる(または同様の)環境では、これらの問題は実際には適用されず、構成でIPアドレスを使用できます。長期的に稼働するシステム、または運用環境で稼働し、最小限の中断を必要とするシステムでは、IPアドレスを介したホスト名の使用をお勧めします。

2
Adam C