1

我是 MongoDB 的新手。如果问题不够清楚,我很抱歉。我的意思是:

  • 我有集群GlusterFS 卷(配置在 2 CentOS之上)。这意味着,可以从两个 CentOS 机器中读取相同的数据目录:
  • 让我们打电话:CentOS-1CentOS-2
  • 我想mongod在两个 CentOS 机器上安装 MongoDB 服务器。但是只启动(运行)一个。(另一个CentOS-2可能是故意停止的)
  • 然后应用程序将连接到 上的那个(当前活动)CentOS-1

这里主要问题来了(请参考下图):

  • 假设:如果CentOS-1服务器出现故障,我手动启动另一个 MongoDB 服务器(mongod在另一个盒子上CentOS-2),并让所有应用程序连接到CentOS-2

(1)一切都还在工作吗?
(2) 是否会像 MySQL 那样存在“锁定”问题?
(3)如果成功了,是不是说我们可以添加任意数量的MongoDB Servers(在待机模式下),只要它们摆动,就没有问题?

在此处输入图像描述


笔记:

一次只能运行 1 个服务器。不像:多个服务器正在访问数据存储。

感谢所有先进的意见:)

4

2 回答 2

2

是的你可以。只要您打算使用相同版本的mongodb和相同的操作系统,将数据文件移动到不同的服务器不会有任何问题。mongodb.lock当您移动文件时,如果该文件存在于数据目录中,请确保删除该文件。

于 2015-11-27T17:39:15.703 回答
0

Glusterfs 很适合在各种服务器之间进行文件复制,但使用 Glusterfs 同步 mongodb 数据并不是一个好主意。
一切都会继续吗?
可能没有
MySQL 中是否会出现“锁定”问题?
是的,会的。检查此https://docs.mongodb.org/v3.0/faq/concurrency/ .glusterfs 在写入 gluster-volumes 时锁定文件,并且 mongodb 数据可能会经常更改,这可能会导致问题。

您可以出于您的目的考虑 mongodb 复制(https://docs.mongodb.org/manual/core/replication-introduction/ )

于 2015-11-27T08:12:53.950 回答