3.0.2→3.2.12 Sharded Cluster升级
admin
2023-01-19 06:40:50
0

前期准备:

    1)3.2.12版本准备好

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


    • sh.enableSharding()

    • sh.shardCollection()

    • sh.addShard()

    • db.createCollection()

    • db.collection.drop()

    • db.dropDatabase()

    • any operation that creates a database

    • any other operation that modifies the cluster metadata in any way.

    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);



升级过程中,使用脚本每秒向数据库写一条数据。观察数据写入情况

//报错信息
WriteResult({
        "nInserted" : 0,
        "writeError" : {
                "code" : 94,
                "errmsg" : "Request contains sharding metadata, but the server has not been made sharding aware."
        }
})

可能原因:stepDown未切换到其他节点,就将节点关闭了。




相关内容

热门资讯

伊朗称做好长期作战的准备,专家... 伊朗伊斯兰革命卫队称已做好长期战争的准备,新型武器正在研发中,尚未大规模使用。伊朗外长也表示做好应对...
特朗普要求库尔德人协助对伊朗行... 特朗普3月5号在接受采访的时候,鼓励伊拉克境内的库尔德武装越境进入伊朗。另外还有媒体报道,他还要求伊...
液晶电视背光坏了一个其他的还亮... 液晶电视在进行背光灯线路连接的时候,大多数都是采用串联的线路连接方式,如果发生了一个背光灯工作损坏,...
抽油烟机突然不工作了灯还亮 1、最大的可能就是抽烟机里面的电机出现了故障,导致不能正常的运作,或许是这台抽烟机使用的年限很长了,...
冰箱门关了里面灯还亮怎么办 可能是电压问题,需要及时检查排除冰箱电容过、压缩机故障;也可能是冰箱电容或压缩机损坏,可以更换电容或...
为什么空调关了外机还一直在转 空调关了外机一直在转的原因有几种:1、关机前排出的冷煤气还是得继续散热导致外机一直转。2控制电路部分...
为什么空调会漏水 空调漏水是一个常见的问题,特别是在高湿度环境下使用空调时。空调漏水的原因可以有多种,以下是一些可能的...
谁将出任伊朗新领导人?专家:一... 美国总统特朗普3月6日向伊朗发出“无条件投降”的最后通牒,并表示美国正寻找一位亲美以的伊朗新领导人。...
离婚可以冷静,家暴没有冷静期 “离婚冷静期发生家庭暴力该怎么办?如何能让遭遇家暴的受害者快速离婚,尽早逃离危险?”近日,全国人大代...
特朗普称亲自选定伊朗新领导人,... 美国总统特朗普3月6日向伊朗发出“无条件投降”的最后通牒,并表示美国正寻找一位亲美以的伊朗新领导人。...