4.4.9. 扩展条状卷
要增加条状逻辑卷的大小,基本物理卷中必须有足够的可用空间,以便让卷组支持它。例如,如果您有一个使用了这个卷组的双向条带,那么在卷组中添加一个物理卷将会使您无法扩展条带,反之,您必须在卷组中添加至少两个物理卷。
例如:考虑卷组
vg
包括两个基本物理卷,参见 vgs
命令的结果。
# vgs
VG #PV #LV #SN Attr VSize VFree
vg 2 0 0 wz--n- 271.31G 271.31G
您可以使用整个卷组空间创建一个条带。
#lvcreate -n stripe1 -L 271.31G -i 2 vg
Using default stripesize 64.00 KB Rounding up size to full physical extent 271.31 GB Logical volume "stripe1" created #lvs -a -o +devices
LV VG Attr LSize Origin Snap% Move Log Copy% Devices stripe1 vg -wi-a- 271.31G /dev/sda1(0),/dev/sdb1(0)
注意:那个卷组中已经没有剩余空间了。
# vgs
VG #PV #LV #SN Attr VSize VFree
vg 2 1 0 wz--n- 271.31G 0
下面的命令在卷组中添加了另一个物理卷,那么就有了 135G 的额外空间。
# vgextend vg /dev/sdc1 Volume group "vg" successfully extended # vgs VG #PV #LV #SN Attr VSize VFree vg 3 1 0 wz--n- 406.97G 135.66G
此时您不能扩展条状逻辑卷来充满卷组,因为需要两个基本设备来将数据按条状保存。
# lvextend vg/stripe1 -L 406G
Using stripesize of last segment 64.00 KB
Extending logical volume stripe1 to 406.00 GB
Insufficient suitable allocatable extents for logical volume stripe1: 34480
more required
要扩展条状逻辑卷,请添加另一个物理卷,然后扩展该逻辑卷。在这个示例中,在卷组中添加两个物理卷,我们就可以将逻辑卷 5A 扩展成卷组的大小。
#vgextend vg /dev/sdd1
Volume group "vg" successfully extended #vgs
VG #PV #LV #SN Attr VSize VFree vg 4 1 0 wz--n- 542.62G 271.31G #lvextend vg/stripe1 -L 542G
Using stripesize of last segment 64.00 KB Extending logical volume stripe1 to 542.00 GB Logical volume stripe1 successfully resized
如果您没有足够的基本物理设备来扩展条状逻辑卷,那么在扩展不是条状的情况下也可能扩大卷,但可能导致性能不平衡。当为逻辑卷添加空间时,默认操作是使用与现有逻辑卷最新片段相同的条状参数,但您可覆盖那些参数。下面的例子是在启动
lvextend
命令失败后,使用剩余的可用空间扩大了条状逻辑卷。
#lvextend vg/stripe1 -L 406G
Using stripesize of last segment 64.00 KB Extending logical volume stripe1 to 406.00 GB Insufficient suitable allocatable extents for logical volume stripe1: 34480 more required #lvextend -i1 -l+100%FREE vg/stripe1