lvm快照

cow技术 copy on write

实现快照

[root@xiaochen ~]# lvscan
ACTIVE '/dev/vg1/lv1' [12.00 GiB] inherit
[root@xiaochen ~]# lvs
LV VG Attr LSize Pool Origin Data% Move Log Cpy%Sync Convert
lv1 vg1 -wi-ao--- 12.00g
[root@xiaochen ~]# lvcreate -s -L 100M -n lv01-snap /dev/vg01/lv01         //-s是快照
注:100M:快照卷所使用的空间是和原卷是同一卷组的空间,原卷没有空间的话做不了快照卷

[root@xiaochen ~]# lvscan
ACTIVE Original '/dev/vg1/lv1' [12.00 GiB] inherit
ACTIVE Snapshot '/dev/vg1/lv1-snap' [104.00 MiB] inherit
[root@xiaochen ~]# mkdir /mnt/lv01-snap
[root@xiaochen ~]# mount /dev/vg01/lv01-snap /mnt/lv01-snap
[root@xiaochen ~]# df -ThP //T类型,P在一行显示
文件系统 类型 容量 已用 可用 已用%% 挂载点
/dev/mapper/vg1-lv1 ext4 12G 954M 11G 9% /mnt/lv01
/dev/mapper/vg1-lv1--snap ext4 12G 954M 11G 9% /mnt/lv01-snap

[root@xiaochen ~]# ls /mnt/lv01
20 22 24 26 28 30 32 34 36 38 40 42 44 46 48 50
21 23 25 27 29 31 33 35 37 39 41 43 45 47 49 lost+found
[root@xiaochen ~]#
[root@xiaochen ~]# ls /mnt/lv01-snap/
20 22 24 26 28 30 32 34 36 38 40 42 44 46 48 50
21 23 25 27 29 31 33 35 37 39 41 43 45 47 49 lost+found

快照原理:

[root@xiaochen ~]# lvscan
ACTIVE Original '/dev/vg1/lv1' [12.00 GiB] inherit
ACTIVE Snapshot '/dev/vg1/lv1-snap' [104.00 MiB] inherit

[root@xiaochen ~]# ll /dev/mapper/vg1-lv1*
lrwxrwxrwx 1 root root 7 6月 10 14:56 /dev/mapper/vg1-lv1 -> ../dm-2
lrwxrwxrwx 1 root root 7 6月 10 14:56 /dev/mapper/vg1-lv1-real -> ../dm-5
lrwxrwxrwx 1 root root 7 6月 10 14:56 /dev/mapper/vg1-lv1--snap -> ../dm-4
lrwxrwxrwx 1 root root 7 6月 10 14:56 /dev/mapper/vg1-lv1--snap-cow -> ../dm-6

[root@xiaochen ~]# dmsetup ls --tree
vg01-lv01 (253:2)
└─vg1-lv01-real (253:5)
├─ (252:48)
└─ (252:32)
vg01-lv01--snap (253:4)
├─vg01-lv01--snap-cow (253:6)
│ └─ (252:48)
└─vg01-lv01-real (253:5)
├─ (252:48)
└─ (252:32)


注意事项:
1. 快照卷和原卷使用同一VG空间
2. 快照卷大小问题 (快照卷空间使用完将自动失效)
a. 根据数据变化速率
b. 设置初始大小,自动增长

[root@xiaochen ~]# vim /etc/lvm/lvm.conf
snapshot_autoextend_threshold = 70 //快照自动增长的阈值
snapshot_autoextend_percent = 20 //达到之后自动增长原来的百分之20
[root@xiaochen ~]# service lvm2-monitor start
[root@xiaochen ~]# chkconfig lvm2-monitor on

删除LV,VG:
1. 停止应用程序对该相应文件系统的访问
2. 卸载文件系统,包括/etc/fstab
3. lvremove
4. vgremove
5. pvremove
处于不激活的状态能直接删掉,处于激活的状态会询问你是否确实删除

[root@xiaochen ~]# umount /dev/vg01/lv01
[root@xiaochen ~]# lvremove /dev/vg01/lv01
[root@xiaochen ~]# lvremove -f /dev/vg01/lv01
[root@xiaochen ~]# vgremove vg01
[root@xiaochen ~]# pvremove /dev/sdb{1,2,3,5}

  

作者:tigergao
功不唐捐 玉汝于成
原文地址:https://www.cnblogs.com/tigergaonotes/p/14165233.html