文章目录
场景需求
## 场景再现
1、服务器上有 vdb、vdc 两块25G 磁盘,组成的lvm卷,已分配空间 44G(Tips:其中vdb中全部25G,加vdc中19G)
2、新插入磁盘 vdd 容量 30G
3、现在需要将 vdd加入vg,并将vdb中的pe迁移走,然后从vg中踢出vdb,并将vdb从pv状态清除,最后物理上拔出vdb(Tips:整个过程 要求不丢数据、不停服)
## Tips:
1、新加磁盘 最好容量 大于 即将移除的磁盘 容量(最保险)
2、若是 新加磁盘 的容量 小于 即将移除的磁盘,且 其他同属于同一vg组的其他 磁盘 的PFree 与 新盘容量 之和 大于 即将移除的磁盘容量,也可以(会自动优先 填满大盘容量,不足的在其他PFree 中填)
实际操作
## 1、将vdd格式为pv,并加入vg
pvcreate /dev/vdd
vgextend datavg /dev/vdd
## 2、在线迁移vdb上的pe(Tips:会自动优选能够一次性容纳vdb上pe的vdd作为目标,这里仅需指定要迁出的磁盘即可)
# (若是新盘容量不够,且新盘容量+另外老盘容量之和 大于 即将移除的磁盘容量 也是可以的)
# -v 查看进度,或在后台监控系统负载和磁盘 I/O 情况
[root@VM-0-14-centos ~]# pvmove -v /dev/vdb
Executing: /usr/sbin/modprobe dm-mirror
Cluster mirror log daemon is not running.
Archiving volume group "datavg" metadata (seqno 7).
Creating logical volume pvmove0
Moving 6399 extents of logical volume datavg/lvdata.
activation/volume_list configuration setting not defined: Checking only host tags for datavg/lvdata.
Creating datavg-pvmove0
Loading table for datavg-pvmove0 (252:1).
Loading table for datavg-lvdata (252:0).
Suspending datavg-lvdata (252:0) with device flush
Resuming datavg-pvmove0 (252:1).
Resuming datavg-lvdata (252:0).
Creating volume group backup "/etc/lvm/backup/datavg" (seqno 8).
activation/volume_list configuration setting not defined: Checking only host tags for datavg/pvmove0.
Checking progress before waiting every 15 seconds.
/dev/vdb: Moved: 0.00%
/dev/vdb: Moved: 7.39%
/dev/vdb: Moved: 14.78%
/dev/vdb: Moved: 22.36%
/dev/vdb: Moved: 29.91%
/dev/vdb: Moved: 37.46%
/dev/vdb: Moved: 44.93%
/dev/vdb: Moved: 52.49%
/dev/vdb: Moved: 59.07%
/dev/vdb: Moved: 65.23%
/dev/vdb: Moved: 71.39%
/dev/vdb: Moved: 77.53%
/dev/vdb: Moved: 83.67%
/dev/vdb: Moved: 89.83%
/dev/vdb: Moved: 95.97%
/dev/vdb: Moved: 100.00%
Polling finished successfully.
# 迁移完成后,用pvs查看验证vdb上的PFree 是否等于PSize
[root@VM-0-14-centos ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/vdb datavg lvm2 a-- <25.00g <25.00g
/dev/vdc datavg lvm2 a-- <25.00g 5.99g
/dev/vdd datavg lvm2 a-- <30.00g 5.00g
## 3、将vdb从vg卷组中踢出,并移除vdb的pv格式
vgreduce datavg /dev/vdb
pvremove /dev/vdb
# 查询验证后,可以拔掉vdb了,至此 lvm 在线更换磁盘已完成,若需扩容可参考其他文章
[root@VM-0-14-centos ~]# pvs -o +pv_used
PV VG Fmt Attr PSize PFree Used
/dev/vdc datavg lvm2 a-- <25.00g 5.99g 19.00g
/dev/vdd datavg lvm2 a-- <30.00g 5.00g <25.00g
如果文章对你有帮助,欢迎点击上方按钮打赏作者
暂无评论