LVM管理

一.逻辑卷管理器(LVM)
允许对卷进行方便操作的抽象层,包括重新设定文件系统的大小
允许在多个物理设备间重新组织文件系统
• 将设备指定为物理卷
• 用一个或者多个物理卷来创建一个卷组
• 物理卷是用固定大小的物理区域(Physical Extent,PE)来定义的
• 在物理卷上创建的逻辑卷
是由物理区域(PE)组成
• 可以在逻辑卷上创建文件系统
二.LVM介绍
LVM: Logical Volume Manager, Version: 2
dm: device mapper:将一个或多个底层块设备组织成一个逻辑设备的模块
设备名:/dev/dm-#
软链接:
/dev/mapper/VG_NAME-LV_NAME
/dev/mapper/vol0-root
/dev/VG_NAME/LV_NAME
/dev/vol0/root
PE(physical extent): 每一个物理卷被划分为称为PE(Physical Extents)的基本单元,具有唯一编号的PE是能被LVM寻址的最小单元。PE的大小是可设置的,默认为4MB。
LE(logical extent): 逻辑卷也被划分为被称为LE(Logical Extents) 的可被寻址的基本单位。在同一个卷组中,LE的大小和PE是相同的,并且一一对应。
三.LVM更改文件系统的容量
LVM可以弹性的更改LVM的容量
通过交换PE来进行资料的转换,将原来LV内的PE转移到其他的
设备中以降低LV的容量,或将其他设备中的PE加到LV中以加大
容量

四.LVM的优点
1. 灵活的容量.
当使用逻辑卷时,文件系统能扩展到多个磁盘上,你能聚合多个磁盘或磁盘分区成单一的逻辑卷.
2.可伸缩的存储池.
你能使用简单的命令来扩大或缩小逻辑卷大小,不用重新格式化或分区磁盘设备.
3.在线的数据再分配.
你能在线移动数据,数据能在磁盘在线的情况下重新分配.比如,你能在线更换可热插拔的磁盘.
4. 方便的设备命名
逻辑卷能按你觉得方便的方式来起所有名称.
5.磁盘条块化.
你能生成一个逻辑盘,他的数据能被条块化存储在2个或更多的磁盘上.这样能明显提升数据吞吐量.
6.映像卷
逻辑卷提供方便的方法来映像你的数据.
7.卷快照
使用逻辑卷,你能获得设备快照用来一致性备份或测试数据更新效果而不影响真实数据.
五.实验演示
以下实验在VMware Workstation 14 Pro上完成,操作系统分别为centos 6.9 和centos 7.4。
A.在虚拟机上虚拟增加2块硬盘分别为/dev/sdb和/dev/sdc,将其分区后再创建卷组vg0和逻辑卷lv0。
1.下图为将两块硬盘分区后执行fdisk -l 命令后输出的信息。注:分区格式为8e

2.创建物理组

pvcreate /dev/sdb1 创建物理卷/dev/sdb1容量为5G
pvcreate /dev/sdc1 创建物理卷/dev/sdc1容量为4G
pvs 显示创建好的所有的物理卷

pvdisplay 显示创建好的所有的物理卷详细信息

3.创建卷组
vgcreate -s 16m vg0 /dev/sd{b,c}1 创建9G大小的卷组,并设置 卷组上的物理卷的PE为16M
vgs 查找系统中存在的LVM卷组,并显示找到的卷组列表
vgdisplay 显示所有卷组的属性。
4.创建逻辑卷
lvcreate -n lv0 -L 5G vg0
lvs
lvdisplay
B.将lv0容量扩容
1.新增一块硬盘,并将其创建成物理卷
pvcreate /dev/sdd1
pvs
2.扩展vg0
vgextend vg0 /dev/sdd
3.扩展lv0
lvextend -L +3G /dev/vg0/lv0
4. 同步所有的文件系统
resize2fs /dev/vg0/lv0 同步所有的文件系统
lvextend -l +100%FREE -r /dev/vgq/lv0 一步到位
C .将lv0容量缩减(要考虑到现有文件不能被破坏)
a.先备份
b.必须卸载后缩小
1.resize2fs /dev/vg0/lv0 6G
2.fsck /dev/vg0/lv0
3.lvreduce -L 6G /dev/vg0/lv0
4.lvs
5.mkfs.ext4 /dev/vg0/lv0
6.mount /dev/vg0/lv0 /mnt/lvm0

D.缩减卷组vg0即卷组中的若干个硬盘删掉
1.通过pvdisplay命令显示/dev/sbc1的空间是没有被使用的
2.根据创建逻辑卷lv0的大小,所以这有两种方式可以将vg0的容量减少。第一种是直接删掉设备,第二种是将设备/dev/sdd1的数据先移除,再将其所处。
若是将/dev/sdd1删掉
vgs

pvmove /dev/sdd1
pvdisplay /dev/sdd1
vgreduce vg0 /dev/sdd1
vgs
pvremove /dev/sdd1
pvdisplay
若是将/dev/sdc1删掉,同理可直接执行以下命令
vgreduce vg0 /devsdc1
pvremove /devsdc1
E.跨主机将逻辑卷/dev/vg0/lv0 从centos7迁移到centos 6上(让它继续正常使用包括数据)
在centos 7上创建了逻辑卷/dev/vg0/lv0大小为3G()
在centos 7 上/mnt/lvm0目录创建了3个文件11,12,13
现将逻辑卷/dev/vg0/lv0 从centos7迁移到centos 6(包括文件11,12,13)
1.pvdisplay显示物理卷的情况
2.将物理卷/dev/sdb1的数据移到同一卷组的其他物理卷中,并从vg0中删除

pvremove /dev/sdb1

pvdisplay
2.卸载设备/dev/vg0/lv0
fuser -km /mnt/lvm0
umount /mnt/lvm0
3.将卷组导出即将硬盘c从7中拆除
vgchange -a n vg0
vgexport vg0
vgdisplay
4.将硬盘加入6中并导入
vgimport vg0
vgchange vg0
pvdisplay
5.挂载vg0
mkdir /mnt/lvm0 -p
mount /dev/vg0/lv0 /mnt/lvm0
df -h
5.验证文件是否可以正常查看
F.为现有逻辑卷创建快照
1.创建快照
lvcreate -l 64 -s -n data-snapshot -p r /dev/vg0/lv0
2.挂载快照
mkdir -p /mnt/snap
mount -o ro /dev/vg0/data-snapshot /mnt/snap/
df -h
G.误操作了/mnt/lvm0/目录下的文件,恢复创建快照时文件的状态
1.先将/mnt/lvm0/目录下的文件11删除,12的文件内容清空
2.卸载逻辑卷
fuser -km /mnt/lvm0
fuser -km /mnt/snap
umount /mnt/lvm0
umount /mnt/snap
df -h
3.恢复快照
lvconver --merge /dev/vg0/date-snapshot
4.验证文件是否还原
mount /dev/vg0/lv0 /mnt/lvm0
cd /mnt/lvm0
cat 11 12 13


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值