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




相关内容

热门资讯

银行系统开始“反内卷” 本刊记者 崔晓萌近期,平安银行、招商银行、中信银行等多家上市银行召开中期业绩会,“反内卷”成了绕不开...
AI领域顶级研究员年薪高达20... 据悉,硅谷科技公司为争夺AI人才不惜开出天价薪酬,而国内AI行业同样面临人才争夺战。据报道,Goog...
官方通报“女子误踩氢氟酸中毒”... 9月15日晚,浙江省杭州市余杭闲林街道办事处发布情况通报:此前报道据潇湘晨报报道,9月14日晚,网友...
固态电池商业化面临成本挑战 低... 来源:滚动播报 据中证报,“近期,固态电池板块大涨,市场热度高涨,仿佛固态电池一夜之间就要走进千家万...
“嘎子谢孟伟”公开道歉!警方已... 据现代快报,近日,辽宁的李先生向现代快报反映,9月10日上午,“嘎子谢孟伟”在网络平台直播时,身着人...
模型:变形的拉链,能测出机器人... 新华社北京9月15日电 9月15日,《新华每日电讯》发表题为《模型:变形的拉链,能测出机器人的“智商...
天龙三号液体运载火箭一级动力系... 新华社济南9月15日电(记者朱峥)由北京天兵科技有限公司自主研制的天龙三号大型液体运载火箭15日在山...
中美经贸马德里谈判最新结果公布 中国商务部国际贸易谈判代表兼副部长李成钢15日说,过去两天,中美双方在西班牙马德里举行会谈。双方积极...
中美就TikTok相关问题等达... 新华社快讯:中国商务部国际贸易谈判代表兼副部长李成钢15日说,本次会谈,双方围绕TikTok及中方有...
2025互联网岳麓大会“AI+... 华声在线9月15日讯(记者 谢璐)9月15日下午,2025互联网岳麓大会“AI+文化”分论坛在马栏山...