当服务器某个目录空间不足以支持后续使用,而需要进一步扩容,可以将多块磁盘合并到一个逻辑卷上进行挂载,挂载到指定的目录下
基本概念
-
PV(Physical Volume)- 物理卷
物理卷在逻辑卷管理中处于最底层,它可以是实际物理硬盘上的分区,也可以是整个物理硬盘,也可以是raid设备。 -
VG(Volumne Group)- 卷组
卷组建立在物理卷之上,一个卷组中至少要包括一个物理卷,在卷组建立之后可动态添加物理卷到卷组中。一个逻辑卷管理系统工程中可以只有一个卷组,也可以拥有多个卷组。 -
LV(Logical Volume)- 逻辑卷
逻辑卷建立在卷组之上,卷组中的未分配空间可以用于建立新的逻辑卷,逻辑卷建立后可以动态地扩展和缩小空间。系统中的多个逻辑卷可以属于同一个卷组,也可以属于不同的多个卷组 -
PE(Physical Extent)- 物理块
扩容操作
1. 创建物理卷(PV)
将需要合并的磁盘创建为物理卷 ,如本次的
/dev/sdb1
/dev/sdc1
注意:
- 创建物理卷时,会将需要创建物理卷的磁盘格式化掉
- 创建物理卷的磁盘不能处于挂载状态(如处于挂载状态,需要先
umount
掉)
pvcreate /dev/sdb1 /dev/sdc1
执行可能的结果:(磁盘会被格式化)
ARNING: vfat signature detected on /dev/sdc1 at offset 82. Wipe it? [y/n]: n
Aborted wiping of vfat.
1 existing signature left on the device.
[root@alianga-server data]# pvcreate /dev/sdc1
WARNING: vfat signature detected on /dev/sdc1 at offset 82. Wipe it? [y/n]: y
Wiping vfat signature on /dev/sdd1.
WARNING: vfat signature detected on /dev/sdc1 at offset 0. Wipe it? [y/n]: y
Wiping vfat signature on /dev/sdd1.
WARNING: vfat signature detected on /dev/sdc1 at offset 510. Wipe it? [y/n]: y
Wiping vfat signature on /dev/sdc1.
Physical volume "/dev/sdc1" successfully created.
2. 查看物理卷(PV)
pvdisplay
可能的执行结果:
--- Physical volume ---
PV Name /dev/sda3
VG Name centos_alianga-server
PV Size <237.28 GiB / not usable 0
Allocatable yes
PE Size 4.00 MiB
Total PE 60743
Free PE 1
Allocated PE 60742
PV UUID 2Jp8ia-5Iv0-fr5g-isem-hOBK-soD5-e1s9V2
--- Physical volume ---
PV Name /dev/sdc1
VG Name lvm_data
PV Size 57.84 GiB / not usable 3.98 MiB
Allocatable yes (but full)
PE Size 4.00 MiB
Total PE 14807
Free PE 0
Allocated PE 14807
PV UUID 1sJV4x-Sewr-ToWc-RSeD-dEQp-hhp8-fIRW84
--- Physical volume ---
PV Name /dev/sdd1
VG Name lvm_data
PV Size <14.47 GiB / not usable 3.63 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE 3703
Free PE 2638
Allocated PE 1065
PV UUID Fk8osv-xF9N-NjIp-wyTy-YITC-fARu-aoitxI
3. 创建卷组
创建一个名为lvm_data
的vg组(名字可以随便改),并将/dev/sdb1
、/dev/sdc1
物理卷添加到该卷组中
vgcreate lvm_data /dev/sdb1 /dev/sdc1
返回结果:
Volume group "lvm_data" successfully created
4. 创建逻辑卷
L
指定逻辑卷的大小n
自定义逻辑卷组的名称
# lvmdata 重命名的逻辑卷名字
# lvm_data 物理卷组名字
lvcreate -L 57G -n lvmdata lvm_data
返回结果:
Logical volume "lvmdata" created
5. 查看分区
fdisk -l
返回结果
可以看到新的逻辑卷位置
/dev/mapper/lvm_data-lvmdata
设备 Boot Start End Blocks Id System
/dev/sdc1 32 121307135 60653552 c W95 FAT32 (LBA)
磁盘 /dev/mapper/lvm_data-lvmdata:61.2 GB, 61203283968 字节,119537664 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
6. 格式化分区
mkfs.ext4 /dev/mapper/lvm_data-lvmdata
7. 挂载到指定的目录
将逻辑分区挂载到需要保存文件的目录即可
mount /dev/mapper/lvm_data-lvmdata /data/test
8.检查确认
df -h
返回结果
文件系统 容量 已用 可用 已用% 挂载点
devtmpfs 16G 0 16G 0% /dev
tmpfs 16G 0 16G 0% /dev/shm
tmpfs 16G 1.6G 14G 11% /run
tmpfs 16G 0 16G 0% /sys/fs/cgroup
/dev/mapper/centos_alianga--server-root 50G 21G 30G 42% /
/dev/mapper/lvm_data-lvmdata 56G 53M 54G 1% /data/test
9. 开机自动挂载
在/etc/fstab
中添加挂载信息,实现开机自动挂载
/dev/mapper/lvm_data-lvmdata /data ext4 defaults 0 0
二次扩容
将新的磁盘挂载到现有的逻辑卷中,以进一步扩容
1. 创建物理卷(PV)
pvcreate /dev/sdd1
2. 添加到现有物理卷组
将新的物理卷添加到卷组中,因为物理卷组
在于逻辑卷
的底层,即lvm_data
已经和lvmdata
关联上,只需要向卷组中添加新的磁盘(物理卷),然后就可以直接扩容逻辑卷了
vgextend lvm_data /dev/sdd1
返回结果
Volume group "lvm_data" successfully extended
3.逻辑块扩容
①这里先以扩容5G
为例
lvresize -L +5G /dev/mapper/lvm_data-lvmdata
返回结果
Size of logical volume lvm_data/lvmdata changed from 57.00 GiB (14592 extents) to 62.00 GiB (15872 extents).
Logical volume lvm_data/lvmdata successfully resized.
②查看是否扩容
文件系统 容量 已用 可用 已用% 挂载点
devtmpfs 16G 0 16G 0% /dev
tmpfs 16G 0 16G 0% /dev/shm
tmpfs 16G 1.6G 14G 11% /run
tmpfs 16G 0 16G 0% /sys/fs/cgroup
/dev/mapper/centos_alianga--server-root 50G 21G 30G 42% /
/dev/mapper/lvm_data-lvmdata 56G 53M 54G 1% /data/test
③ 刷新扩容后的大小
resize2fs /dev/mapper/lvm_data-lvmdata
返回结果
esize2fs 1.42.9 (28-Dec-2013)
Filesystem at /dev/mapper/lvm_data-lvmdata is mounted on /data/test; on-line resizing required
old_desc_blocks = 8, new_desc_blocks = 8
The filesystem on /dev/mapper/lvm_data-lvmdata is now 16252928 blocks long.
④ 查看挂载情况
df -h
返回结果
文件系统 容量 已用 可用 已用% 挂载点
devtmpfs 16G 0 16G 0% /dev
tmpfs 16G 0 16G 0% /dev/shm
tmpfs 16G 1.6G 14G 11% /run
tmpfs 16G 0 16G 0% /sys/fs/cgroup
/dev/mapper/centos_alianga--server-root 50G 21G 30G 42% /
/dev/mapper/lvm_data-lvmdata 61G 53M 58G 1% /data/test
至此扩容结束
Q.E.D.