高级磁盘管理06 — 了解LVM

了解 LVM

在您初次安装 RockyLinux 时,您需要对磁盘执行分区操作,若不执行,则默认选择 LVM

对于新手而言,我们建议您选择 标准分区

当我们选择 标准分区 且后续执行挂载操作后,分区的容量大小就被完全固定,这种约束性在服务器上是不被允许的,因此我们需要有一种技术可以实现对硬盘资源的动态调整,也就是我们说的 LVM

基本原理

LVM(Logical Volume Manager,逻辑卷管理)的原理比较简单,简单来说就是在 磁盘分区文件系统 之间加一个逻辑抽象层,把多块硬盘进行卷组合并,通过一个叫做逻辑卷的东西来对其进行底层的磁盘管理操作。

相关术语

  • 物理存储介质(The physical media):LVM 的存储介质可以是整个硬盘,也可以是硬盘分区或 RAID 等。介质必须转换或初始化为 LVM 物理卷(即 PV)才能进行下一步的操作。
  • PV(Physical Volume,物理卷):LVM 的基本存储逻辑块。创建物理卷可以用硬盘分区,也可以用硬盘本身。
  • VG(Volume Group,卷组):类似于标准分区中的物理硬盘,一个 VG 由一个或多个 PV 组成。
  • LV(Logical Volume,逻辑卷):类似于标准分区当中的硬盘分区,LV 建立在 VG 之上,您可以在 LV 上写入相应的文件系统。
  • PE(Physical Extent,物理区域):PV 中可以分配的最小存储单位,可以单独指定大小,默认为 4MB
  • LE(Logical Extent,逻辑区域):LV 中可以分配的最小存储单位,在同一个 VG 中,PE 和 LE 是相同的

请注意不同对象中对最小存储单位的定义:

  • 在 RAID 当中,最小的存储单位被称为 chunk
  • 在 ext4 文件系统中,最小的存储单位被称为 block
  • 在 NTFS 文件系统中,最小的存储单位被称为 cluster
  • 在物理硬盘中,最小的存储单位被称为扇区

从上图可知,组成 LVM 其实是三部分(不同颜色),分别是蓝色的物理分区层、绿色的 LVM 层、黑色的文件系统层。

从系统管理员的角度来说,也是按照上图的顺序进行使用,依次是:硬盘分区/硬盘/RAID —> 初始化为一个或多个 PV —> 合并组合成为 VG —> 划分出一个或多个 LV —> 格式化写入文件系统,挂载后进行使用

LVM 的写入机制

LVM 的写入机制主要涉及两种数据分布模式,两者的核心区别在于数据如何跨物理卷(PV)存储:

  1. 线性模式(Linear Mode)– 默认写入机制,即新数据按顺序写入到物理卷,只有当前 PV 空间用尽后,才会使用下一个 PV

    • 优点:数据的连续性高,单块物理卷损坏时,未写入的 PV 数据仍可保留
    • 缺点:无法并行读写,性能受限于单块磁盘的速度
  2. 条带模式(Striped Mode) – 类似于 RAID 0 的读写机制。数据会被拆分为固定大小的条带单元(Stripe Unit)并轮流写入到多个 PV 中,实现并行读写。比如,若条带单元大小为 64KB 且使用了 3 块 PV,则第 1 个 64KB 数据写入到 PV1 中,第 2 个 64KB 数据写入到 PV2 中,第 3 个 64KB 数据写入到 PV3 中,第 4 个 64KB 数据再次写入到 PV1 中,依此类推。

    • 优点:显著提升多磁盘的读写性能
    • 缺点:任意一个 PV 故障都会导致 LV 不可用;扩容的复杂度较高;需要搭配额外的数据备份方案或技术

两者的对比:

模式 数据分布 性能 冗余 使用场景
线性模式 按照顺序依次填充 PV 较低 通用场景
条带模式 轮流写入到多个 PV 中 较高 有单独的备份方案或技术的情况下,追求高性能的磁盘 I/O ,如数据库的读写、大文件的连续读写等
Avatar photo

关于 陸風睿

GNU/Linux 从业者、开源爱好者、技术钻研者,撰写文档既是兴趣也是工作内容之一。Q - "281957576";WeChat - "jiulongxiaotianci",Github - https://github.com/jimcat8
用一杯咖啡支持我们,我们的每一篇[文档]都经过实际操作和精心打磨,而不是简单地从网上复制粘贴。期间投入了大量心血,只为能够真正帮助到您。
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇