条带化逻辑卷管理(LVM)
lvdisplay -m
在我们构建的 LVM 中,数据是如何分布的,可以通过 -m
参数查看 ( --maps
):
检查LVM磁盘数据分布
lvdisplay -m /dev/mapper/vg--data-lv--thanos
检查LVM磁盘数据分布
--- Logical volume ---
LV Path /dev/vg-data/lv-thanos
LV Name lv-thanos
VG Name vg-data
LV UUID mz432T-ISFa-ifKq-DqzF-nQdY-duq9-2V3JOO
LV Write Access read/write
LV Creation host, time alipaydockerphy010052095245.et15, 2023-07-29 15:43:08 +0800
LV Status available
# open 1
LV Size <6.08 TiB
Current LE 1593389
Segments 2
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 251:0
--- Segments ---
Logical extents 0 to 1525877:
Type linear
Physical volume /dev/dfb1
Physical extents 0 to 1525877
Logical extents 1525878 to 1593388:
Type linear
Physical volume /dev/sda5
Physical extents 0 to 67510
可以看到这里的类型是 linear
,也就是顺序分布
构建条代化分布LVM
条代化 striped
配置实际上也非常简单,主要是传递参数 -i
表示数据跨几块物理磁盘分布,以及 -I
参数设置条代化大小。我在 XFS文件系统快速起步 为数据库构建的就是跨3块磁盘的条代化LVM,以便能够实现性能提升以及大容量磁盘:
创建条代化LVM卷
pvcreate /dev/nvme0n{0..2}p1
vgcreate vg_db /dev/nvme0n{0..2}p1
lvcreate -n vl_log -l 10%FREE -i 3 -I 128k vg_db
lvcreate -n vl_data -l 100%FREE -i 3 -I 128k vg_db
说明:
-i 3
表示使用3块磁盘作为volume group,这样条带化会分布到3个磁盘上
-I 128k
表示使用 128k 作为条带化大小,也可以使用单纯数字128
默认单位就是k
-l
表示扩展百分比,这里采用了10%FREE
和100%FREE
表示空闲空间的10%和100% ; 另外一种常用的扩展大小表示是使用-L
参数,则直接表示扩展多少容量,例如-L 10G
表示扩展 10GB 空间