目录
LVM存储管理介绍
lvm磁盘扩容有两种方式
创建lvm磁盘
1. 首先先加入第一块儿新的磁盘
2. 对新磁盘 /dev/sdb 进行分区
通过LVM命令创建新卷
1. 创建物理卷
2.创建卷组 并将物理卷加入其中
3. 创建逻辑卷并分配大小
4.格式化刚刚创建的硬盘
5. 挂载磁盘
扩容lvm之新增磁盘扩容
1. 新加一块儿磁盘,并分区
2. 创建物理卷
3. 扩容VG卷组
4. 将新的PV物理卷加入之前创建的data VG卷组
5. 扩容LV卷
6.检查刷新文件系统使其空间生效
扩容lvm之在原有磁盘扩容
1.扩容分区表
2.扩容物理卷PV
3.扩容逻辑卷LV
4.检查刷新文件系统使其空间生效
LVM存储管理介绍
- PV(Physical Volume):这是起点,相当于原始硬盘或分区。使用pvdisplay命令可以查看所有物理卷详情。
- VG(Volume Group):构建于PV之上,将多个PV聚合形成存储池,提升灵活性。通过vgcreate命令创建VG,vgdisplay展示VG信息。
- LV(Logical Volume):在VG中划分的可调整大小的逻辑空间,类似传统分区,但更灵活。用lvcreate创建LV,lvdisplay查看LV状态。LV创建后,格式化并挂载即可使用。
简言之,LVM通过PV→VG→LV的层级设计,结合实用命令操作,实现了存储资源的高效与动态管理。
lvm磁盘扩容有两种方式
1.一种是新加一块儿盘,将两块儿或多块儿硬盘和成一个卷
2.另一种是原有磁盘可以扩容,扩容磁盘空间后扩容分区表
然后扩容pv vg lv即可
创建lvm磁盘
- 下面文档介绍的是新建一块儿盘做成lvm卷,然后再加一块儿新盘,将两块儿盘空间合成一个卷。
1. 首先先加入第一块儿新的磁盘
2. 对新磁盘 /dev/sdb 进行分区
(parted是磁盘分区命令,也可用fdisk,由于现在磁盘空间占用都很大,最好分gpt分区不要分mbr分区)
# parted /dev/sdb #使用parted进入sdb磁盘
(parted) mktable gpt #指定分区表类型为gpt
(parted) mkpart ext4 0% 100% #指定gpt分区表的空间 (ext4只是一个标签,并不是真正的分区,分区还是要通过mkfs.ext4分)
(parted) print #打印分区信息
(parted) quit #退出
- 分好区后可以lsblk看到新的分区/dev/sdb1
通过LVM命令创建新卷
1. 创建物理卷
# pvcreate /dev/sdb1
2.创建卷组 并将物理卷加入其中
# vgcreate data /dev/sdb1
(data为卷组名称可自定义)
3. 创建逻辑卷并分配大小
# lvcreate -l +100%free -n lvdata data
(该分配为全部分配,lvdata为逻辑卷名 data为卷组名)
- 也可以只分配一部分空间
lvcreate -L 10G -n lvdata data
- 创建完成后可以lsblk看到新的lvm的盘的名字和储存位置
- 以及这块儿盘的实际文件位置(两个红框都是同一个新建的data-lvdata 只不过软连接的位置不一样)
4.格式化刚刚创建的硬盘
# mkfs.ext4 /dev/mapper/data-lvdata
- 格式化成功后可以看到已经有UUID号了
5. 挂载磁盘
扩容lvm之新增磁盘扩容
1. 新加一块儿磁盘,并分区
sdc 8:32 0 500G 0 disk
- 分区要创建GPT分区,可以用fdisk或parted分区,参考文档开头
- 对新磁盘 /dev/sdc 进行分区
(parted是磁盘分区命令,也可用fdisk,由于现在磁盘空间占用都很大,最好分gpt分区不要分mbr分区)
# parted /dev/sdc #使用parted进入sdc磁盘
(parted) mktable gpt #指定分区表类型为gpt
(parted) mkpart ext4 0% 100% #指定gpt分区表的空间 (ext4只是一个name标签,并不是真正的分区,分区还是要通过mkfs.ext4分)
(parted) print #打印分区信息
(parted) quit #退出
- 分好区后可以lsblk查看到sdc1
sdc 8:32 0 500G 0 disk
└─sdc1 8:33 0 500G 0 part
2. 创建物理卷
# pvcreate /dev/sdc1
[root@fce ~]# pvcreate /dev/sdc1 #创建物理卷
Physical volume /dev/sdc1 successfully created.
root@fce ~]# pvs #查看已创建的物理卷
PV VG Fmt Attr PSize PFree
/dev/sda2 centos lvm2 a-- <49.50g 0
/dev/sdb1 data lvm2 a-- <500.00g 0
/dev/sdc1 lvm2 --- <500.00g <500.00g #可以看到这个是我们刚刚创建的
3. 扩容VG卷组
查看当前vg卷组创建情况命令:vgs
[root@fce ~]# vgs
VG #PV #LV #SN Attr VSize VFree
centos 1 2 0 wz--n- <49.50g 0
data 1 1 0 wz--n- <500.00g 0
- 这一步可以看到 当前有哪些vg卷组,我们需要扩容的卷组是data
4. 将新的PV物理卷加入之前创建的data VG卷组
# vgextend data /dev/sdc1 #data就是以前创建的卷组名字叫data
- 查看扩容后的VG卷组 命令:vgs
[root@fce- ~]# vgs
VG #PV #LV #SN Attr VSize VFree
centos 1 2 0 wz--n- <49.50g 0
data 2 1 0 wz--n- 999.99g <500.00g #可以看到VSize大小变成了1T了, VFree剩余空间也多除了500GB
5. 扩容LV卷
可以先查看当前lv的大小 命令:lvs
[root@fce- ~]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
root centos -wi-ao---- <45.50g
swap centos -wi-ao---- 4.00g
lvdata data -wi-ao---- <500.00g #这里可以看到我们需要扩容的LV逻辑卷lvdata当前是500GB
- 查询需要扩容的lv卷具体文件位置 命令:fdisk -l (根据磁盘的数量,输入内容会很多,要找一下我们需要的lv)
磁盘 /dev/mapper/data-lvdata:536.9 GB, 536866717696 字节,1048567808 个扇区 #找到这一行 /dev/mapper/data-lvdata 就是需要扩容lv的文件位置
Units = 扇区 of 1 * 512 = 512 bytes扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
- 将VG卷组剩余的空间全部分给需要扩容的LV卷
lvextend -l +100%free /dev/mapper/data-lvdata
lsblk 已经可以看到盘的空间变大了,注意:此时分区还没有变大
- 将之前的逻辑卷分区lvdata 仅增加10GB 空间
# lvextend -L +9.9G /dev/mapper/data-lvdata
(如图所示就是已经加成功了)
6.检查刷新文件系统使其空间生效
如果是xfs文件系统就用
#xfs_growfs /挂载目录
如果是ext4文件系统用如下命令:
# resize2fs -p /dev/mapper/data-lvdata
可以看到容量已经增上来了
扩容lvm之在原有磁盘扩容
先从虚拟化或者云平台扩容当前磁盘(#虚拟化平台扩容磁盘不能有快照)
1.扩容分区表
(如下是parted扩容,注意如果parted版本低则没有resizepart命令。需要手动删除现有分区表重建分区表)
查看当前vdc磁盘分区表
(parted) print
Model: Virtio Block Device (virtblk)
Disk /dev/vdc: 215GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 107GB 107GB
可以看到磁盘是215g,分区表只有107g
开始扩容分区表
(parted)
(parted) resizepart
Partition number? 1
End? [107GB]? 100%
(parted) print
Model: Virtio Block Device (virtblk)
Disk /dev/vdc: 215GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 215GB 215GB
(parted) quit
Information: You may need to update /etc/fstab.
[root@fcecsldlc01 data]#
[root@fcecsldlc01 data]# cat /etc/redhat-release
CentOS Linux release 7.9.2009 (Core)
[root@fcecsldlc01 data]#
查看vdc1分区是否扩容成功
[root@fcecsldlc01 data]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
vda 253:0 0 100G 0 disk
└─vda1 253:1 0 100G 0 part /
vdb 253:16 0 16G 0 disk [SWAP]
vdc 253:32 0 200G 0 disk
└─vdc1 253:33 0 200G 0 part
└─data-lv_data 252:0 0 100G 0 lvm /data
2.扩容物理卷PV
命令如下:
#pvresize /dev/vdb1
3.扩容逻辑卷LV
#lvextend -l +100%free /dev/data/lvdata
4.检查刷新文件系统使其空间生效
如果是xfs文件格式就用
#xfs_growfs /挂载目录
如果是ext4用如下命令:
# resize2fs -p /dev/mapper/data-lvdata
可以看到容量已经增上来了