mongoDB-3.x集群管理

mongoDB-3.x集群管理

一.查看集群配置
1.列出己分片集群
use config
db.databases.find( { "partitioned": true } )
db.databases.find() #列出所以database
mongoDB-3.x集群管理
2.列出分片
use admin
db.runCommand( { listShards : 1 } )
mongoDB-3.x集群管理
3.列出集群明细
db.printShardingStatus() or sh.status()
mongoDB-3.x集群管理

二.迁移config server
迁移完后,如有必要,请重启mongos,并重新指定configdb
三.迁移Replica Set Shard
To migrate a sharded cluster, migrate each member separately. First migrate the non-primary members, and then migrate the  primary  last.
1.禁用自动负载
sh.stopBalancer()
mongoDB-3.x集群管理

mongoDB-3.x集群管理

2.迁移shard
方式一:在线迁移
先把SECONDARY迁完,并正常启动使其与PRIMARY通信正常后
step down PRIMARY,使Replica Shard自动Failover挑选出新的PRIMARY后,再迁旧的PRIMARY
如:2节点迁移,shard-p,shard-s迁移到shard-p1,shard-s1
i.把新节点加到现有的Replica shard
primary节点mongo shell下通过rs.add()来添加
rs.add("192.168.192.31:27018")
rs.add("192.168.192.41:27018")
ii.停掉待迁移的shard-s(SECONDARY)
iii.stepDown shard-p(PRIMARY)
让Replica自动Failover到新的shard上
mongoDB-3.x集群管理
iv.停掉待迁移的shard-p(PRIMARY)
v.移除老的 Replica  shard成员
rs.remove("192.168.192.11:27018")
rs.remove("192.168.192.21:27018")

方式二:离线迁移
新mongodb安装配置好,不启动
i.同步数据库
rsync -az /opt/mongodb/db 192.168.192.31:/opt/mongodb/db
rsync -az /opt/mongodb/db 192.168.192.41:/opt/mongodb/db
数据库同步后,请检查权限,属组,属主无误后,启动
ii.制作Replica  shard 
iii.添加shards到集群
sh.addShard('rs2/192.168.192.31:27018,192.168.192.41:27018')
v.移除老的 Replica  shard
use admin
db.runCommand({moveprimary: 'test',to: 'rs1/192.168.192.12:27018,192.168.192.22:27018'})
db.runCommand({removeshard: 'rs0/192.168.192.11:27018,192.168.192.21:27018'})
注意:如果是移除Primary  Replica  shard则需要先将要其中的数据库手动移动到其它 Replica  shard后才能执行移除操作
mongoDB-3.x集群管理

mongoDB-3.x集群管理
可以看到,test 数据库正在移动到rs1, 所以再执行removeshard时报了个警告,所以需要等先数据迁移完成后,才能移除rs0
mongoDB-3.x集群管理
mongoDB-3.x集群管理
rs0移除后,shards就剩下rs1了
3.重新启用负载
sh.setBalancerState(true)
mongoDB-3.x集群管理

转载于:https://www.cnblogs.com/lixuebin/p/10814242.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值