良许Linux教程网 干货合集 如何使用LVM创建性能更高的磁盘阵列

如何使用LVM创建性能更高的磁盘阵列

在处理大量数据或者运行需要大量I/O的应用程序时,磁盘性能的提升可以显著地减少等待时间。为了提高磁盘性能,Linux下提供了一个叫做LVM的逻辑卷管理工具,其中一个功能是创建磁盘阵列。

工作原理

假设我们要写一个32MB的文件。第一个4 MB(默认1个PE(物理扩展)=4M)将写入第一个磁盘/dev/sdb1,然后第二个4 MB将写入第二个磁盘/dev/sdc1,第三个4 MB将写入第三个磁盘/dev/sdd1,第四个4 MB将写入第四个磁盘/dev/sde1,第五个将从第一个磁盘/dev/sdb1开始。此过程将以循环方式反复进行。从I/O的角度提供了更高的性能。此外,单次写入的默认最小大小可以从64k开始。在我们的设置中,我们将使用128k。条带中允许最小磁盘数为2个。

添加4块硬盘,并创建物理卷

系统中已添加四块20GB的硬盘:
Centos8中创建LVM条带卷Centos8中创建LVM条带卷
下面创建物理卷:

[root@localhost ~]# pvcreate /dev/sd[a-d]
  Physical volume "/dev/sda" successfully created.
  Physical volume "/dev/sdb" successfully created.
  Physical volume "/dev/sdc" successfully created.
  Physical volume "/dev/sdd" successfully created.
Centos8中创建LVM条带卷Centos8中创建LVM条带卷
Centos8中创建LVM条带卷Centos8中创建LVM条带卷

创建一个卷组

[root@localhost ~]# vgcreate vg01_data /dev/sd[a-d]
  Volume group "vg01_data" successfully created
[root@localhost ~]# vgs
  VG        #PV #LV #SN Attr   VSize   VFree 
  cl          1   2   0 wz--n- 
Centos8中创建LVM条带卷Centos8中创建LVM条带卷
Centos8中创建LVM条带卷Centos8中创建LVM条带卷

创建一个条带卷

[root@localhost ~]# lvcreate -L 20G -i 4 -I 128k -n lv_data vg01_data /dev/sd[a-d]
  Logical volume "lv_data" created.
Centos8中创建LVM条带卷Centos8中创建LVM条带卷
Centos8中创建LVM条带卷Centos8中创建LVM条带卷
  • -i 4条带数量
  • -I 128k单个条带的大小。
  • /dev/sd[a-d]作为条带卷的磁盘,/dev/sda,/dev/sdb,/dev/sdc,/dev/sdd

使用-m选项列出创建的逻辑卷,并列出逻辑卷映射的物理卷。

[root@localhost ~]# lvdisplay /dev/vg01_data/lv_data  -m
Centos8中创建LVM条带卷Centos8中创建LVM条带卷
Centos8中创建LVM条带卷Centos8中创建LVM条带卷

验证条带卷使用的磁盘

使用dmsetup命令参考lsblk列出的磁盘中的MajorMinor号,来对照使用的磁盘是否一致:

[root@localhost ~]# dmsetup deps /dev/vg01_data/lv_data 
4 dependencies : (8, 48) (8, 32) (8, 16) (8, 0)
[root@localhost ~]# lsblk
Centos8中创建LVM条带卷Centos8中创建LVM条带卷
Centos8中创建LVM条带卷Centos8中创建LVM条带卷

格式化并挂载条带卷

格式化该条带卷并挂载到/data目录:

[root@localhost ~]# mkdir /data
[root@localhost ~]# mkfs.xfs -f /dev/vg01_data/lv_data 
meta-data=/dev/vg01_data/lv_data isize=512    agcount=16, agsize=327648 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=1, sparse=1, rmapbt=0
         =                       reflink=1
data     =                       bsize=4096   blocks=5242368, imaxpct=25
         =                       sunit=32     swidth=128 blks
naming   =version 2              bsize=4096   ascii-ci=0, ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
[root@localhost ~]# mount /dev/vg01_data/lv_data /data/
Centos8中创建LVM条带卷Centos8中创建LVM条带卷
Centos8中创建LVM条带卷Centos8中创建LVM条带卷

在本文中,我们详细介绍了如何使用LVM创建 stripe 磁盘阵列,并且说明了这样做的好处。使用 stripe 磁盘阵列可以大大提高磁盘I/O性能,从而改善我们在处理大量数据或者运行需要大量I/O的应用程序时的体验。无论你是系统管理员还是普通用户,都可以通过学习本教程来提高你的 Linux 系统上的磁盘性能。让我们一起简单易懂的学习如何使用LVM创建高性能的磁盘阵列吧!

以上就是良许教程网为各位朋友分享的Linu系统相关内容。想要了解更多Linux相关知识记得关注公众号“良许Linux”,或扫描下方二维码进行关注,更多干货等着你 !

137e00002230ad9f26e78-265x300
本文由 良许Linux教程网 发布,可自由转载、引用,但需署名作者且注明文章出处。如转载至微信公众号,请在文末添加作者公众号二维码。
良许

作者: 良许

良许,世界500强企业Linux开发工程师,公众号【良许Linux】的作者,全网拥有超30W粉丝。个人标签:创业者,CSDN学院讲师,副业达人,流量玩家,摄影爱好者。
上一篇
下一篇

发表评论

联系我们

联系我们

公众号:良许Linux

在线咨询: QQ交谈

邮箱: yychuyu@163.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部