3.0.2→3.2.12 Sharded Cluster升级(mmapv1引擎不换)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了3.0.2→3.2.12 Sharded Cluster升级(mmapv1引擎不换)相关的知识,希望对你有一定的参考价值。

前期准备:

    1)3.2.12版本准备好

    2)升级过程中,保证client不会修改集合元数据。例如:不能执行下列操作:

    3)关闭balancer

    4)备份config数据库 



操作步骤:

1、关闭balancer   

mongos> db.setBalancerState(false);


2、升级shards

  • 升级其中一个Secondary成员

    • 关闭mongod实例,3.0命令替换成3.2

    • 重启该成员。等待该成员集群中的状态为SECONDARY后,再升级第二个Secondary

  • Step Down主节点。

  • 当rs.status()显示主节点已经是分片的其他成员,开始升级stepped-down的主节点(此时,只是role是Secondary)

    • 关闭mongod实例,3.0命令替换成3.2

    • 重启


3、升级config server

升级config server是有顺序的。如果启动mongos指定的config server顺序如下

//mongod_config.conf
sharding:
   configDB: db-test01:20001,db-test02:20001,db-test03:20001

那么,升级的顺序为:db-test03 → db-test02 → db-test01

  • 关闭db-test03 config server,并且3.0命令替换成3.2

  • 启动3.2版本的config server,指定configsvr和port

    • 使用命令行启动

mongod --configsvr --port 20001 --dbpath /data/mongodb/config
    • 使用配置文件启动

sharding:
   clusterRole: configsvr
net:
   port: 20001
storage:
   dbpath: /data/mongodb/config

依次重复启动其他configDB:db-test02、db-test01


4、升级mongos实例

  • 无序的。替换3.2版本的mongos,重启(一个一个mongos做替换)

关闭mongos时,程序会有报错。因为mongos关闭,当前连接会断掉,之后程序尝试连接关闭的mongos连不上会连接其他mongos(如有多个mongos节点且程序配置访问多个mongos),不影响业务。


5、开启balancer

mongos> db.setBalancerState(true);


本文出自 “11570138” 博客,请务必保留此出处http://11580138.blog.51cto.com/11570138/1942847

以上是关于3.0.2→3.2.12 Sharded Cluster升级(mmapv1引擎不换)的主要内容,如果未能解决你的问题,请参考以下文章

通过一步步创建sharded cluster来认识mongodb

MongoDB之 Sharded cluster架构原理

mongodb3.4 Sharded cluster

Deploy A MongoDB 4.0 Sharded Cluster

MongoDB——MongoDB分片集群(Sharded Cluster)

通过一步步创建sharded cluster来认识mongodb