我可以将 3.0 或 3.4 版的种子成员添加到具有 2.6.8 版成员的 MongoDB 副本集吗?

Can I add a seed member on version 3.0 or 3.4 to a MongoDB replica set with members that are on version 2.6.8?

我想将所有成员升级到 3.4,但是,如果出现任何问题,我希望能够切换回 2.6.8。为了做到这一点,我希望向现有副本集(2.6.8 上)添加一个新成员 3.0 或 3.4 成员,复制数据,然后将其分解并在 3.4 上创建一个单独的副本集。在分离出同步的 3.x 成员后,我会向它添加更多的 3.x 成员并切换我的应用程序以使用新的副本集。如果应用程序中断,我打算切换回旧的副本集。我读到副本集成员可以有不同的版本。我无法找到有关特定版本和潜在问题的信息。另外,我之所以一直提到3.0和3.4,是因为我开始规划的时候,最新的版本是3.0,我也听说要逐步升级会员,所以从3.0到3.2再到3.4。有什么建议吗?

这似乎记录在 Mongo 3.0、3.2 和 3.4 的发行说明中。

https://docs.mongodb.com/manual/release-notes/3.4-upgrade-replica-set/

"upgrade an existing MongoDB deployment to 3.4, you must be running a 3.2-series release.

To upgrade from a version earlier than the 3.2-series, you must successively >upgrade major releases until you have upgraded to 3.2-series. For example, if >you are running a 3.0-series, you must upgrade first to 3.2 before you can >upgrade to 3.4."

https://docs.mongodb.com/manual/release-notes/3.2-upgrade/ https://docs.mongodb.com/manual/release-notes/3.2-downgrade/

"To upgrade an existing MongoDB deployment to 3.2, you must be running a 3.0->series release.

To upgrade from a 2.6-series release, you must upgrade to the latest 3.0-series >release before upgrading to 3.2. For the procedure to upgrade from the 2.6->series to a 3.0-series release, see Upgrade to 3.0."

https://docs.mongodb.com/manual/release-notes/3.0-upgrade/

"To upgrade an existing MongoDB deployment to 3.0, you must be running 2.6. If >you’re running a version of MongoDB before 2.6, you must upgrade to 2.6 before >upgrading to 3.0. See Upgrade to 2.6 for the procedure to upgrade from 2.4 to >2.6. Once upgraded to MongoDB 2.6, you cannot downgrade to any version earlier >than MongoDB 2.4."

在之前的项目中,我们不得不从 2.6.8 升级到 3.0(以滚动方式升级成员以保持集群正常运行 运行)。我们的回滚计划是在此时决定是否一切正常,如果不正常则回滚到 2.6.8。如果没问题,请从 3.0 升级 -> 3.2(同样是滚动升级)。我们没有尝试过两步降级,但我猜根据 Mongo 文档,理论上是可行的。从 3.4 开始,您将不得不查看发行说明,看看理论上是否可行!

另请注意,您需要考虑升级客户端驱动程序。客户端驱动程序版本也存在兼容性问题。