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未切换到其他节点,就将节点关闭了。




相关内容

热门资讯

2026 WAIC观察:机器人... 摘要:具身智能的“iPhone时刻”何时来? 今年WAIC的火爆超出了所有人的预期,黄牛票卖到200...
票据扫描后显示查无此票?沈阳一... 近日,有市民向潇湘晨报·晨视频爆料,自己在辽宁沈阳臻悦影城购买《功夫女足》电影票,出票后用国家电影事...
没钱打伊朗了?美媒爆料:美军连... 前线炮火不断,后方战费告急。由于伊朗冲突带来的巨额开支超乎预期,美国国防部正步入“断粮”边缘。美国《...
三星 Galaxy Z Fol... 三星目前已经确认,将于7月22日 21:00带来三星Galaxy全球新品发布活动。也就是说,明天大家...
航天员举办公益科普 为民众沉浸... 中新网广州7月21日电 (记者 王坚)在中国航天事业创建70周年之际,嫦娥六号月背玄武岩国旗实物近日...
消失30年的功夫童星,又打回来... 作者 | 肖瑶 编辑 | 吴擎这个夏天“打”得最爽的电影《火遮眼》里,人们认出了谢苗。他是主角。那个...
太空算力,将数据中心搬上天(经... 本报记者 王 政近年来,我国加强人工智能科技创新,积极推进“人工智能+”行动,智能经济核心产业规模已...
半自动洗衣机洗涤电机嗡嗡响不转 1、有可能是使用的时候洗衣机使用的电流功率比电源线和插线板之间的输出电流功率大,在这种情况下的话就会...
油烟机电机不转有什么故障 油烟机电机不转,可能存在以下故障:1.电源故障:若油烟机的电源线有擦伤、切割、线路松动等导致电源供电...
全自动洗衣机电机响但是不转 这种不转的情况有很多种比如定时器故障、电源线插头与插座接触不良、电机启动电容损坏、电机线圈损坏、电机...