RHEL6中针对LVM的一些新特性:支持逻辑卷的镜像操作、Device Mapper对udev的完整支持、当一个磁盘发生故障时可以使用lvconert –repair进行修复、支持对镜像卷创建快照(rhel6.1的新特性)等。详情请参考官方文档。
一、Volume Group的高级管理:
1、Combining Volume Groups:
一块100G大小的磁盘sdb,分了俩个分区:sdb1和sdb2。sdb1创建了vg01,sdb2创建了vg02.
合并前vg01的信息如下:
现在将vg01和vg02合并在一起,组成新的vg01.如上图所示,vg01的大小是50G,合并后的结果如下图所示:
vg01从50G扩大到100G了。再次查看vg01的信息:
2、Splitting a Volume Group
3、Backing Up Volume Group Metadata:
当创建vg的时候,系统默认会自动备份Metadata。/etc/lvm/backup下面存放的是metadata的备份信息,而/etc/lvm/archive下面存放的是metadata的archive信息。
查看下vg02的metadata备份信息:
由以上信息可以看出,vg02是从vg01分离出来的。
vg02的metadata archive信息:
也可以手工备份vg的metadata,这里用的命令是vgcfgbackup,同样恢复命令是vgcfgrestore。
恢复metadata:
4、Moving a Volume Group to Another System:
这里就一台机器,演示下效果就OK.
二、LVM的高级管理:
1、创建线型逻辑卷:
上面创建u02时指定的大小是vg02大小的20%,而创建u01时将vg02的所有空余空间全部分配给了u01。
2、Creating Mirrored Volumes:
刚开始的时候,我为sdb分了三个分区:/dev/sdb1,/dev/sdb2,/dev/sdb3,然后分别创建了vg01,vg02以及vg03:
接着在创建mirrored volume时报如下错误:
在网上查了查,也没有给出明确的解决办法,查看了下官方文档,也没有明确的答案,最后就将vg02、vg03删除了,将/dev/sdb2、/dev/sdb3、/dev/sdb4加到vg01,再次创建mirrored volume,就不会再出现上述错误了。
注意查看u01的Attr前面多了一个m,这就说明u01是镜像卷。Copy%代表正在同步数据。同步完的结果如下图所示:
查看/dev/mapper下面:
这里的vg01-u01_mlog是专门存放mirror log的设备。并且存放mirror log的设备不能与数据处于同一个PV里,否则会报错的。
使用lvdisplay可以看到u01的镜像卷设备个数是2个。
NOTICE:镜像卷不能被重新分配大小了。
系统对于镜像失败后的操作策略可以查看/etc/lvm/lvm.conf文件,主要是以下俩个参数:
对于log的失败策略,系统默认是allocate,而对于image的失败策略是remove.更详细的信息请参官方文档。
3、将一个逻辑卷转换为镜像卷:
新创建了一个u02逻辑卷:
使用lvconvert将其转换为mirror volume:
对于如何修复Mirrored Volume,等遇到具体的故障时在讨论。
4、Creating Snapshot Volumes:
对mirror volume创建快照是rhel6.1的新特性之一。下面针对镜像卷 u01创建快照:
当前/dev/vg01/u01挂载于/u01目录下,总共有56个文件:
创建快照:
通过lvs查看:
通过lvdisplay查看快照信息:
接着挂载/dev/vg01/u01_snap访问它:
对snap可以进行完全访问。
5、Merging Snapshot Volumes:
这个错误是由于u01目前正在使用,所以卸载它之后,系统立即开始合并:
6、Changing the Parameters of a Logical Volume Group:
将/dev/vg01/u02更改为只读状态:
对于存在快照的卷不能更改其读写模式,否则会报错的,以下使我更改u01时报错:
关于更多LVM的信息,请参考官方文档。
Red Hat Enterprise Linux 6 Logical Volume Manager Administration
本文出自 “candon123” 博客,谢绝转载!