磁盘扩容(原先数据不丢失)
MongoDB扩容方案
1、 现状
两块100G的iscsi存储,分别挂载在/mnt/mongodata和/mnt/mongodata2
其中player_db,repository_d_telecom,task_db,upns_db在mongodata2上,并通过软链的方式连到mongodata
2、 扩容步骤一(停机前准备)
在现有4台mongodb主机10.127.6.112/117/121/126上,分别分配500Giscsi存储,格式化并挂载到/mnt/mongotemp上
3、 扩容步骤二(停机)
发布pc端和手机端停机公告,测试公告有效后进行下一步
4、 扩容步骤三(停机后操作过程)
按照126,121,117,112的顺序关闭4台mongodb应用
将两块数据盘内容复制到新的存储上
cp –r /mnt /mongodata2/* /mnt/mongotemp
cp –r /mnt/mongodata/* /mnt/mongotemp
确认复制完毕后,先移除mongodata的挂载,将500G存储挂载到mongodata
umount –l /mnt/mongodata
umount –l /mnt/mongotemp
mount -t ext4 /dev/mapper/mpathc /mnt/mongodata
按112,117,121,126的顺序启动mongodb,并查看同步是否正常
5、 结果确认
查看网关和基础数据是否有报错,数据库连接是否恢复,若无法自动重连则重启应用
尝试登陆并测试各业务,确认是否成功。
撤销维护公告
一周后,回收原有的两块100G存储
6、 回退方案
恢复挂载
/dev/mapper/mpatha on /mnt/mongodata type ext4 (rw)
/dev/mapper/mpathb on /mnt/mongodata2 type ext4 (rw)
重启相关应用,并确认业务恢复,撤消维护公告