当前位置: 首页 > news >正文

CentOS7 LVM 逻辑卷2种读写策略(磁盘IO性能优化)—— 筑梦之路

LVM 逻辑卷的读写策略有两种:

  • linear:线性方式,一块块盘来读写,写完一块盘再写第二块盘、第 N 块盘,性能低
  • striped:条带方式,多块盘一起并行读写,性能高

查看 LVM 逻辑卷的读写策略的方式:lvdisplay -m "LV Path"

root@node-1:~# lvdisplay 
  --- Logical volume ---
  LV Path                /dev/cache_vg00/cache_lv00
  LV Name                cache_lv00
  VG Name                cache_vg00
  LV UUID                SxIt27-kH9m-2lzb-yOGJ-vYVn-xwi2-qY30PK
  LV Write Access        read/write
  LV Creation host, time 10-1-2-159, 2021-06-04 15:05:32 +0800
  LV Status              available
  # open                 1
  LV Size                2.72 TiB
  Current LE             713820
  Segments               6
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:0

root@node-1:~# lvdisplay -m /dev/cache_vg00/cache_lv00 
  --- Logical volume ---
  LV Path                /dev/cache_vg00/cache_lv00
  LV Name                cache_lv00
  VG Name                cache_vg00
  LV UUID                SxIt27-kH9m-2lzb-yOGJ-vYVn-xwi2-qY30PK
  LV Write Access        read/write
  LV Creation host, time node-1, 2021-06-07 15:05:32 +0800
  LV Status              available
  # open                 1
  LV Size                2.72 TiB
  Current LE             713820
  Segments               6
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:0
   
  --- Segments ---
  Logical extents 0 to 118969:
    Type        linear
    Physical volume /dev/sdb1
    Physical extents    0 to 118969
省略其他信息……  

看到 --- Segments --- 的 Type linear,所以这里的 LVM 逻辑卷读写策略是 linear 线性方式

root@node-2:~# lvdisplay -m /dev/cache_vg00/cache_lv00 
  --- Logical volume ---
  LV Path                /dev/cache_vg00/cache_lv00
  LV Name                cache_lv00
  VG Name                cache_vg00
  LV UUID                7mlqJc-Cxa9-Trhj-O2wp-TeuG-SFYH-Eny0nm
  LV Write Access        read/write
  LV Creation host, time node-2, 2021-06-07 15:11:12 +0800
  LV Status              available
  # open                 1
  LV Size                1.95 TiB
  Current LE             512000
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     1280
  Block device           253:1
   
  --- Segments ---
  Logical extents 0 to 511999:
    Type        striped
    Stripes         5
    Stripe size     64.00 Kib
省略其他信息……   

看到 --- Segments --- 的 Type striped,所以这里的 LVM 逻辑卷读写策略是 striped 条带方式

什么是条带化

当多个进程同时访问一个磁盘时,可能会出现磁盘冲突。磁盘系统对访问次数(每秒的IO操作,IOPS)和数据传输速率(读写速率,TPS)有限制。

当达到这些限制时,后面需要访问磁盘的进程就需要挂起等待,这就是磁盘冲突。避免磁盘冲突是优化I/O性能的一个重要目标。条带化技术是一种自动的将I/0负载均衡到多个物理磁盘上的技术。条带化技术将一块连续的数据分成很多小部分,并把他们分别存储到不同的磁盘上去。这样就能使多个进程同时访问数据的多个不同部分而不会造成磁盘冲突,最大化I/0性能。

LVM的条带化:为了性能考虑,将数据跨越多个磁盘存储,即把LV上连续的数据分成大小相同的块,然后依次存储在各个磁盘PV上,类似于RAID0的数据存放形式,实现数据读写的并发;管理员一句自己的数据需求,定义数据分块大小,分布PV磁盘个数信息,从而实现读写性能最佳化

粗略来讲,条带化strip就是raid0。

 如何创建条带化的LV

以下为一个完整的示例

环境说明:

centos7 minal x86_64

系统盘100G  sda
数据盘 100G sd[b-e]

1. 创建pv

pvcreate -v /dev/sd[b-e]1

pvs

2. 创建vg

vgcreate -v vg01_data /dev/sd[b-e]1

vgs

vgdisplay -v vg01_data

3. 创建lv

# lvcreate -L 100G -i 4 -I 128k -n lv_data vg01_data -v
# lvcreate -L 100G -i 4 -I 128k -n lv_data vg01_data /dev/sd[b-e]1

lvdisplay -m /dev/vg01_data/lv_data

4. 验证

dmsetup deps /dev/vg01_data/lv_data

lsblk

5. 格式化并挂载

mkfs.xfs /dev/mapper/vg01_data-lv_data 

df -hP /data/

参考资料:

Striped Logical Volumes in Logical Volume Management (LVM)

如何将LVM非条带化修改为条带化

参考资料:linux – 将非条带LVM LV更改为条带化LV - 编程之家

相关文章:

  • 湫湫系列故事——减肥记Ⅰ(Python)
  • 分享158个ASP源码,总有一款适合您
  • 机器学习常见面试问题汇总
  • 低代码:让企业“活”起来,赋能企业数字转型
  • SAP IFRS 17 面向服务架构详细解析(包含分类账规则)
  • JavaWeb:过滤器与监听器
  • SpringBoot Log4j2日志
  • 导致商标注册失败的四大原因?
  • Arx遍历块内实体
  • 剑指 Offer II 009. 乘积小于 K 的子数组
  • GF_CLR初始用 - 正式版
  • visual studio2019 定位内存泄漏的方法
  • 懂了委托,才算真正入门C#
  • Python | 数据类型之集合 | 函数
  • 全网最详细的mybatis plus 条件构造器queryWrapper学习,比如and(),eq(),or(),like()等方法以及分页操作
  • 制药行业中各种化合物的净化,大孔吸附净化氨基酸
  • SpringBoot——玩转项目属性配置
  • SockJS-client简介
  • 1、Maven——Maven项目管理工具基本设置、把Maven集成到IDEA2022
  • string,stringbuilder,stringbuffer
  • 电加热油锅炉工作原理_电加热导油
  • 大型电蒸汽锅炉_工业电阻炉
  • 燃气蒸汽锅炉的分类_大连生物质蒸汽锅炉
  • 天津市维修锅炉_锅炉汽化处理方法
  • 蒸汽汽锅炉厂家_延安锅炉厂家
  • 山西热水锅炉厂家_酒店热水 锅炉
  • 蒸汽锅炉生产厂家_燃油蒸汽发生器
  • 燃煤锅炉烧热水_张家口 淘汰取缔燃煤锅炉
  • 生物质锅炉_炉
  • 锅炉天然气_天燃气热风炉