• 进入"运维那点事"后,希望您第一件事就是阅读“关于”栏目,仔细阅读“关于Ctrl+c问题”,不希望误会!

Linux中LVM逻辑卷管理

系统管理 彭东稳 9年前 (2015-08-25) 24572次浏览 已收录 0个评论

 LVM逻辑卷

逻辑卷管理(LVM)指系统将物理卷管理抽象到更高的层次,常常会形成更简单的管理模式。通过使用 LVM,所有物理磁盘和分区,无论它们的大小和分布方式如何,都被抽象为单一存储(single storage)源。

LVM 可以将分区和磁盘聚合成一个虚拟磁盘(virtual disk),从而用小的存储空间组成一个统一的大空间。这个虚拟磁盘在 LVM 术语中称为卷组(volume group)。

LVM2 是一个新的用户空间工具集,它为 Linux 提供逻辑卷管理功能。它完全向后兼容原来的 LVM 工具集。

LVM的结构

LVM被组织为三种元素:

卷(Volume:物理和逻辑卷和卷组

区段(Extent:物理和逻辑区段

设备映射器(Device mapperLinux内核模块

卷(VolumeLinux LVM 组织为物理卷(PV)、卷组(VG)和逻辑卷(LV)。物理卷是物理磁盘或物理磁盘分区(比如 /dev/hda /dev/hdb1)。卷组是物理卷的集合。卷组可以在逻辑上划分成多个逻辑卷。

区段(Extent为了实现 n-to-m 物理到逻辑卷映射,PV VG 的基本块必须具有相同的大小;这些基本块称为物理区段(PE)和逻辑区段(LE)。尽管 n 个物理卷映射到 m 个逻辑卷,但是 PE LE 总是一对一映射的。在使用 LVM2 时,对于每个 PV/LV 的最大区段数量并没有限制。默认的区段大小是 4MB,对于大多数配置不需要修改这个设置,因为区段的大小并不影响 I/O 性能。但是,区段数量太多会降低 LVM 工具的效率,所以可以使用比较大的区段,从而降低区段数量。但是注意,在一个 VG 中不能混用不同的区段大小,而且用 LVM 修改区段大小是一种不安全的操作,会破坏数据。所以建议在初始设置时选择一个区段大小,以后不再修改。不同的区段大小意味着不同的 VG 粒度。例如,如果选择的区段大小是 4GB,那么只能以 4GB 的整数倍缩小或扩展 LV

物理PE到逻辑LE区段的映射图

Linux中LVM逻辑卷管理

另外,请注意图  中的区段分配策略。LVM2 并非总是连续分配 PE;细节参见关于 lvm Linux 手册页(见 参考资料 中的链接)。系统管理员可以设置不同的分配策略,但是一般不需要这么做,因为默认策略(名为一般分配策略(normal allocation policy))使用符合常规的规则,比如不把并行的条带放在同一物理卷上。

设备映射器(Device mapper是一个 Linux 内核模块(也可以是内置的),最早出现在 2.6.9 内核中。它的作用是对设备进行映射 —— LVM2 必须使用这个模块。DMdevice mapper)模块支持如镜像,LVM快照,磁盘访问多路径,LVM2逻辑卷,软RAID功能。在大多数主流发行版中,设备映射器会被默认安装。在创建 VG 和 LV 时, 可以给它们起一个有意义的名称。设备映射器的作用就是将这些名称正确地映射到物理设备。设备映射器会在/dev文件系统中创建下面的设备节点:/dev/VG0/LV0 会是/dev/mapper/VG0-LV0节点的链接。

LVM的管理命令

物理卷管理(PV)

卷组管理VG

逻辑卷管理LV

扩展LV

缩减LV

1)不能在线缩减需先卸载:命令(df -lh)

2)确保缩减后的空间依然可以存储原有的所有数据:命令(umount)

3)在缩减之前应该先强行检查文件,以确保文件系统处于一致性状态:命令(fce2fs -f)

然后先缩减逻辑边界,在缩减物理边界

实例:创建一个逻辑卷并挂载使用

PS:最后说一下,有人可能会有疑惑,为什么挂载之后的大小跟我们分给LV的不同,这就是因为上面提到的区段PE大小的原因,因为PELE是一一对应的所以在创建LV时会根据PE大小的倍数进行创建。

快照卷Snapshot

Linux LVM 实现了一种称为快照(Snapshot)的特性,它的作用就像是拍摄逻辑卷在某一时刻的照片。通过使用快照, 可以获得同一 LV 的两个拷贝 —— 一个可以用于备份,另一个继续用于日常操作。

快照卷的好处:

1)快照的创建非常快,不需要停止生产环境;
2)
建立两个拷贝,但是它们的大小并不一样。快照使用的空间仅仅是存储两个 LV 之间的差异所需的空间;

注意事项:

3)生命周期为整个数据时长,在这段时长内,数据的增长不能超出快照卷大小;

4)快照卷是只读的;

5)快照卷应该跟原卷在同一个卷组(默认都是在VG下);

快照卷的使用方式(接着上一个实例做)

更好的容错能力

最近的 LVM2 开发成果为逻辑卷提供了高可用性。逻辑卷可以有两个或更多的镜像,镜像可以放在不同的物理卷(或不同的设备)上。当在设备上发现 I/O 错误时,可以使用 dmeventd 让一个 PV 离线,而不会影响服务。更多信息请参考 lvcreate(8)、lvconvert(8) 和 lvchange(8) 手册页。

文件系统管理

系统工程师对文件系统的管理操作有:超级块在哪里,超级块备份的够不够,文件系统有多大,GDT在哪里备份的够不够里面存放有哪些信息,分了多少个磁盘块,有没有产生磁盘碎片,需不需要修复,一共有多少块组,磁盘的分区,格式化,挂载等等。


如果您觉得本站对你有帮助,那么可以支付宝扫码捐助以帮助本站更好地发展,在此谢过。
喜欢 (0)
[资助本站您就扫码 谢谢]
分享 (0)

您必须 登录 才能发表评论!