MongoDB副本集

MongoDB副本集

我对 MongoDB 还不熟悉。我在 Amazon m2.xlarge EC2 实例上设置了一个 mongo 服务器。我设置了一个 RAID10,其中包含 4 个 EBS 卷用于存储。它似乎非常适合收集数据。如何设置副本集?我是否必须为此手动创建一个全新的实例和 RAID10?它的机制是什么?.. 停机时间最短或没有停机时间?

答案1

您需要运行 3 个 mongo 实例。最好的办法是使用另一个 mongo 实例来存储数据,然后运行另一个作为仲裁器,该仲裁器在线只是为了投票,而不是保存任何数据。这可以是一个免费的微型实例。

您可以在同一主机上运行它,但这是毫无意义的,因为如果您的主机/ebs 出现故障,您将失去一切,那么副本集的意义何在?

有关如何设置的更多信息,请参阅

http://www.mongodb.org/display/DOCS/Replica+Sets

答案2

在我的设置中,我使用跨两台服务器的副本集,如下所示:

host1 - 主 host2 - 优先级 0 // 用于读取的从属 仲裁器 - mongodb 的第二个实例,我在 host1 上运行

(仲裁器不持有任何数据)

请注意,在读取系统上,大多数用户(以及我的经验)认为您需要大量 RAM。具体来说,您需要的 RAM 应超过索引的总大小。

我们的经验(以及其他人的经验)是,当索引不适合内存时,Mongodb 在读取时会出现严重的性能问题。

呼!

相关内容