Linux的磁盘与文件系统(4)-----LVM

LVM卷管理

LVM是逻辑盘卷管理(Logical Volume Manager)的简称,它是Linux环境下对磁盘分区进行管理的一种机制,LVM是建立在硬盘和分区之上的一个逻辑层,来提高磁盘分区管理的灵活性。

LVM特点
可以对磁盘进行动态管理。因为逻辑卷的大小是可以动态调整的,而且不会丢失现有的数据。如果我们新增加了硬盘,其也不会改变现有上层的逻辑卷。作为一个动态磁盘管理机制,逻辑卷技术大大提高了磁盘管理的灵活性。

基本的逻辑卷管理概念

PV  : 物理卷
物理卷在逻辑卷管理中处于最底层,它可以是实际物理硬盘上的分区,也可以是整个物理硬盘,也可以是raid设备。

VG  : 卷组
卷组建立在物理卷之上,一个卷组中至少包括一个物理卷,在卷组建立之后可以动态的添加物理卷到卷组中。一个逻辑卷管理系统中可以只有一个卷组,也可以拥有多个卷组。

LV : 逻辑卷

逻辑卷建立在卷组之上,卷组中的未分配空间可以用于建立新的逻辑卷,逻辑卷建立之后可以动态的扩展和缩小空间。系统中的多个逻辑卷可以属于同一个卷组,也可以属于不同的多个卷组。



PE :物理块

LVM 默认使用4MB的PE区块,而LVM的LV最多仅能含有65534个PE  (lvm1 的格式),因此默认的LVM的LV最大容量为4M*65534/(1024M/G)=256G。PE是整个LVM 最小的储存区块。
也就是说,其实我们的资料都是由写入PE 来处理的。简单的说,这个PE 就有点像文件系统里面的block 大小。所以调整PE 会影响到LVM  的最大容量!不过,在CentOS6.x 以后,由于直接使用lvm2 的各项格式功能,因此这个限制已经不存在了。


LVM卷管理

磁盘准备
我们将模拟raid5、分区、物理硬盘三种类型设备创建VG,raid5 需要四块硬盘,分区和物理硬盘各一块硬盘,还有扩容时需要至少一块硬盘,所以在虚拟机里添加八块硬盘。


首先要安装LVM管理工具。

1,新建一个raid5设备,
2,新建一个分区

创建PV

pvcreate /dev/md5  /dev/sdf1  /dev/sdg


查看PV  
#  pvdisplay
还可以使用命令pvs和pvscan查看简略信息。

创建VG

# vgcreate vg0 /dev/md5 /dev/sdf1 /dev/sdg


查看VG


同样可以使用命令vgs和vgscan查看。


创建LV   (逻辑卷)

# lvcreate  -L 1G -n lv1 vg0



-L   指定创建的LV 的大小
-l    指定创建的LV 的PE 数量
-n   LV的名字
上面命令的意思是:从vg0 中分出1G的空间给lv1 使用

查看LV的信息


LV     PathLV的路径,全名
LV     NameLV的名字
VG    Name所属的VG
LV     SizeLV的大小

此时再来查看一下VG的大小

减少了1G

格式化LV

然后再挂载使用


最后将挂载信息写入到/etc/fstab



我们可以测试一下是否可用






LVM的扩容操作


LVM最大的好处就是可以对磁盘进行动态管理,而且不会丢失现有的数据。假如有一天,lv1的使用量达到了80%,需要扩容,那我们该怎么做呢?因为vg0中还有很多剩余空间,所以我们可以从vg0中再分配点空间给lv1。

1,查看vg0的剩余容量
2,对lv1进行扩容
     #  lvextend -L +1G /dev/vg0/lv1    在原有的基础上增加了1G


此时用df -TH 查看实际的磁盘容量你会发现,实际容量并没有发生变化。这是因为我们的系统还不认识刚刚添加进来的磁盘的文件系统,所以还需要对文件系统进行扩容。


此时
# resize2fs /dev/vg0/lv1



通过查看测试数据是否正常来判断是否在线动态扩容完成。



VG的扩容

VG的扩容可以有两种方法。
第一种方法是通过增加PV来实现,操作如下:
A. 创建PV,使用/dev/sdh来创建一个PV。
B. 扩容VG

第二种方法是通过扩展RAID设备的容量来间接对VG进行扩容:
A.向RAID 中新加一块硬盘

B./dev/md5 的大小变化后,调整PV的大小




LV的缩减

缩减操作需要离线处理

A.umount 文件系统
B. 缩减文件系统
C. 检查磁盘
D. 再次执行缩减操作
E. 缩减LV
F. 挂载查看
G. 查看测试数据




VG的缩减
A. umount文件系统      umount /mnt/lv1
B. 查看当前的PV详情     pvs
C. 将/dev/sdg从vg0 中移除      vgreduce vg0  /dev/sdg
D. 再次查看PV情况        pvs
E. 查看vg0 的情况          vgs


删除LVM
如果要彻底的来移除LVM的话,需要把创建的步骤反过来操作。
1,umount文件系统
2,移除LV
3,移除VG
4,移除PV
5,删除LVM


LVM快照

快照就是将当时的系统信息记录下来,就好像照相一样,未来若有任何资料变动了,则原始资料会被移动到快照区,没有被改动的区域则由快照区与档案系统共享。


建立LV
# lvcreate-L 100M -n lv1 vg0
# mkfs.ext4 /dev/vg0/lv1
# mount /dev/vg0/lv1 /mnt/lv1/

创建快照
# lvcreate-L 80M -s -n lv1snap /dev/vg0/lv1
说明:为/dev/vg0/lv1 创建一个大小为80M,名称为lv1snap 的快照。





猜你喜欢

转载自blog.csdn.net/lvxiaojiahuo/article/details/79996180