lvm快照原理(linux lvm快照)
大家好!今天让创意岭的小编来大家介绍下关于lvm快照原理的问题,以下是小编对此问题的归纳整理,让我们一起来看看吧。
开始之前先推荐一个非常厉害的Ai人工智能工具,一键生成原创文章、方案、文案、工作计划、工作报告、论文、代码、作文、做题和对话答疑等等
只需要输入关键词,就能返回你想要的内容,越精准,写出的就越详细,有微信小程序端、在线网页版、PC客户端
创意岭作为行业内优秀的企业,服务客户遍布全球各地,如需了解SEO相关业务请拨打电话175-8598-2043,或添加微信:1454722008
本文目录:
一、什么是lvm逻辑卷?有哪些特点?
逻辑卷(LVM)它是Linux环境下对磁盘分区进行管理的一种机制,它是建立在物理存储设备之上的一个抽象层,优点在于灵活管理。特点: 1、动在线态扩容 2、离线裁剪 3、数据条带化 4、数据镜像相关特点分析,可以参考黑马程序员社区一个板块都是技术知识。我朋友在黑马学的运维,现在13k16薪。我也正在学习呢。
二、centos5.7创建逻辑卷问题
LVM 逻辑卷管理
LVM的三个层次:
PV(物理卷)
可以是磁盘,也可以是分区(分区类型必须为8e),它是LVM的
基础存储设备
VG(卷组)
包含一个或多个物理卷(PV)的存储池
LV(逻辑卷)
建立在卷组的基础上,应该层就工作的逻辑卷上,
可以对逻辑卷进行格式化,挂载等操作,然后存储数据
几个概念:
物理块(PE)
LVM寻址的最小单位,物理卷都是以相同大小的物理块为存储基本单位,
大小可以是从 8k-16G,默认4M,一个VG中最多可以有65534个PE
逻辑块(LE)
管理工具:
lvm2-2.02.56-8.el5
rpm -qa | grep -i lvm 看有没有这个包,如果没有要安装
使用LV的一般过程:
1、为逻辑卷准备分区或磁盘(RAID也可以)
可以是分区(分区类型必须是8e),也可以是磁盘
2、创建物理卷
3、用物理卷创建卷组
4、激活卷组(一般可以省略)
5、在卷组上建逻辑卷
6、在逻辑卷上建文件系统(格式化、挂载)
创建实例:
1、建分区(分区类型必须是 8e)
# fdisk /dev/sda
Command (m for help): n
First cylinder (59668-60802, default 59668):
Using default value 59668
Last cylinder or +size or +sizeM or +sizeK (59668-60802,
default 60802): +1g
. . . . . .
Command (m for help): p
Command (m for help): t
Partition number (1-15): 13 (分区编号)
Hex code (type L to list codes): 8e
Command (m for help): p
Command (m for help): w
# partprobe
2、利用分区创建PV
# pvcreate /dev/sda12 /dev/sda13 /dev/sda14 /dev/sda15
# pvscan
# pvdisplay #可通过这两个命令来看PV是否真的有了
也可以直接拿RAID做PV
3、利用PV创建VG
# vgcreate vg1 /dev/sda12 /dev/sda13 /dev/sda14
# vgscan
# vgdisplay
4、卷组上创建逻辑卷(默认线性卷)
# lvcreate -n lv01 -L 500M vg1
# lvscan
# lvdisplay
5、使用
# mkfs -t ext3 /dev/vg1/lv01
# mkdir /lv01
# mount /dev/vg1/lv01 /lv01
# df -h
之后就可以在逻辑卷的挂载点上存储数据了
------------------------------
创建条带化的逻辑卷(要有多个PV)
# lvcreate -L 500M -n strp_lv -i2 vg1
# mkfs -t ext3 /dev/vg1/strp_lv
# mkdir /strp_lv
创建镜象逻辑卷(要有多个PV):
-m 指定镜象份数
-m 1 镜象1份,原始数据的同时,生成另一个副本
# vgdisplay
Free PE / Size 472 / 1.84 GB
# lvcreate -n mirr_lv -m 1 -L 500M vg1
# vgdisplay
Free PE / Size 221 / 884.00 MB
可看到,虽然创建的是500M的LV,但实际上用到1G的VG空间
这就是镜象要另外使用的空间
# mkfs -t ext3 /dev/vg1/mirr_lv
# mkdir /miir_lv
练习:用两个PV创建VG,再在该VG下创建一下镜象LV
------------------------------
VG维护
vgchange 停、启用vg
# vgchange -a n vg1 #停用卷组
# lvdisplay
LV Status NOT available
# vgchange -a y vg1 #启用
# lvdisplay
LV Status available
如果该卷组下有LV在挂载使用,该VG是不能停用的,要停用必须要先卸掉
LV
vg增加pv
# vgextend vg1 /dev/sda15
VG的扩容就是通过增加PV来实现的
vg移除pv
# vgreduce vg1 /dev/sda15
LV的管理与维护
在线扩容:
LV扩容,要求VG要有足够的空间,扩展时选扩lv (lvextent)
再扩文件系统(resize2fs)
实施过程:
1、lvextent
# lvextend -L +200M /dev/vg1/lv01
# df -h 可以看到容量并没有变化
# lvscan 可以看到容量增加了200M
2、resize2fs
# resize2fs /dev/vg1/lv01
# df -h 可以看到容量增加了
压缩LV大小:
基本过程:umount -> fsck -f -> resize2fs -> lvreduce
# umount /lv01
# fsck -f /dev/vg1/lv01
# resize2fs /dev/mapper/vg1-lv01 400M
# mount /dev/vg1/lv01 /lv01/
# df -h 可看到变400M了
# lvscan 看到还是700M
# lvreduce -L 400M /dev/vg1/lv01
物理卷间的数据转移:
转移条件:两个PV在同一个VG中,并且目标PV不能小于被转移的PV
实施方法:
1、将PV加到VG中来
# vgextend vg1 /dev/sda15
2、加载镜象模块
# modprobe dm-mirror
# lsmod | grep -i mirror
3、转移数据
# pvmove /dev/sda14 /dev/sda15
4、将老的PV从VG中移除
# vgreduce vg1 /dev/sda15
LVM的快照
LVM的快照是对历史上的数据做了一个保存,随着时间的推移我们可以
通过LVM快照来访问过去的历史数据
# lvcreate -L 100M -s -n lv428 /dev/vg1/lv01
之后不对/dev/vg1/lv01 进行增、删、改
文件内容已彻底发生变化了
这时,一般情况下,再看前面数据已经不可能了,如果有LVM快照
我们可以把快照调出来,看历史上那点数据是什么样子
# mkdir /lv_snap
# mount /dev/vg1/lv428 /lv_snap
又可看到历史数据了
LVM 的删除
删除时要遵循一定的顺序
先删 LV -> 再删 VG -> 再删PV
和创建时刚好相反
删除LV
umount /dev/vg1/lv01
lvremove /dev/vg1/lv01
删除VG
vgremove /dev/vg1
删除PV
pvremove /dev/sda12
pvremove /dev/sda13
在救援模式下使用LVM:
lvm命令,如 vgscan 实际是一些软链接,链接到 lvm.static 或 lvm
但在救援模式下,有些链接是没有建立的,在救援模式下要使用LVM的一些
命令,要在命令前加 lvm 前辍,如:
lvm vgscan
lvm vgchange
三、Linux里面普通文件系统和逻辑卷区别是什么?
逻辑卷
LVM(逻辑卷)的产生是因为传统的分区一旦分区好后就无法在线扩充空间,也存在一些工具能实现在线扩充空间但是还是会面临数据损坏的风险;传统的分区当分区空间不足时,一般的解决办法是再创建一个更大的分区将原分区卸载然后将数据拷贝到新分区,但是在企业的生产系统往往不允许停机或者允许停机的时间很短,LVM就能很好的解决在线扩充空间的问题,而且不会对数据造成影响,LVM还能通过快照在备份的过程中保证日志文件和表空间文件在同一时间点的一致性。《linux 就该这么学》
在LVM中PE(Physical Extend)是卷的最小单位,默认4M大小,就像我们的数据是以页的形式存储一样,卷就是以PE的形式存储。PV(Physical Volume)是物理卷,如果要使用逻辑卷,首先第一步操作就是将物理磁盘或者物理分区格式化成PV,格式化之后PV就可以为逻辑卷提供PE了。VG(Volume Group)是卷组,VG就是将很多PE组合在一起生成一个卷组,当然这里的PE是可以跨磁盘的,如果当前服务器磁盘空间不足就可以增加一个新磁盘对当前系统不会产生任何影响。LV(Logical Volume)是逻辑卷,逻辑卷最终是给用户使用的,前面几个都是为创建逻辑卷做的准备,创建逻辑卷的大小只要不超过VG剩余空间就可以。
文件系统
当硬盘分区被创建完成之后,还并不能直接挂载到目录上存储文件,需要选择合适的文件系统进行格式化。常见的分区类型有FAT32、FAT16、NTFS、HP-UX等,而专供Linux使用的主流的一些分区有ext2/3/4、physical volume (LVM) 、softwareRAID、swap、vfat、xfs等。其中:
1、ext2/3/4:是适合Linux的文件系统类型,由于ext3文件系统多了日志记录功能,因此系统恢复起来更加快速,ext4是ext3的升级,效率更加高,因此建议使用默认类型ext4类型,而不要使用ext2/3;
2、physical volume (LVM):这是一种弹性调整文件系统大小的机制,即可以让文件系统变大或变小,而不改变原文件数据的内容,功能不错,但性能不佳。
3、softwareRAID:利用Linux系统的特性,用软件仿真出磁盘阵列功能。
4、swap:就是内存交换空间。由于swap并不会使用到目录树的挂载,因此用swap就不需要指定挂载点。
5、vfat:同时被Linux与windows所支持的文件系统类型。如果主机硬盘同事存在windows和linux两种操作系统,为了进行数据交换,可以使用该文件系统。
6、xfs:也是一个文件系统类型,在centos7中将被作为默认的文件系统类型,替换ext4。
四、快照技术分为()类?
当前,快照技术已经越来越多的被应用于企业的备份恢复应用,但是对于快照技术的原理,不同快照技术的区别以及优缺点,却很少有人详细提及。面对市场中多样的快照技术,用户应该如果选择呢?
什么是快照技术?
快照技术主要是在操作系统以及存储技术上实现的一种记录某一时间系统状态的技术。近来,Oracle等数据库厂家以及Vmware等虚拟化产品也把这种技术引入各自的数据保护当中。
存储中使用快照技术由于其广泛的实用性成为应用最广泛的。本文主要探讨的是各种不同的存储快照技术。
SINA对于快照的定义是:关于指定数据集合的一个完全可用拷贝,该拷贝包括相应数据在某个时间点(拷贝开始的时间点)的映像。快照可以是其所表示的数据的一个副本,也可以是数据的一个复制品。
由此我们可以看到快照的一些特性:
数学建模中通常包含指针技术快照一旦生成,一定是记录了某一个时间点的系统的完全状态。
为什么要使用快照技术
瞬时备份:在不产生备份窗口的情况下,可以帮助客户创建一致性的磁盘快照,每个磁盘快照都可以认为是一次对数据的全备份。从而实现常规备份软件无法实现的分钟级别的 RPO。
快速恢复:用户可以依据存储管理员的定制,定时自动创建快照,通过磁盘差异回退,快速回滚到指定的时间点上来。通过这种回滚在很短的时间内可以完成。大大的提高了业务系统RTO的水平。
应用测试:用户可以使用快照产生的虚拟硬盘的数据对新的应用或者新的操作系统版本进行测试,这样可以避免对生产数据造成损害,也不会影响到目前正在运行的应用。
报表打印等资源消耗较大的业务的分离:用户可以将指定时间点的快照虚拟硬盘分配给一个新的服务器,从而实现将报表打印等对于服务器核心业务会产生较大影响的剥离。使核心业务服务器运行更加平稳有效快速的运行。
降低数据备份对于系统性能的影响: 通常数据备份是在业务服务器上完成的。每次发起数据备份必然对当前业务系统运行性能造成影响。通过快照虚拟硬盘的提取后,备份工作可以转移到其他服务器上。从而实现了零备份窗口(针对应用主机),零影响的理想数据备份。
传统的存储快照技术(copy-on-write)
传统的存储快照技术以IBM Flashcopy/HDS Shadowimage等为代表,这类技术由于自动生成的能力不足,防御意外的能力比较弱,一般不用于自动备份,而是用于系统更新之前的一种计划内数据保存方式。
传统存储快照技术是基于时间点的复制,能够在一个存储单元中建立数据的完全卷拷贝。如果生产系统此时对某一个数据集合进行频繁的修改,在这种情况下产生一个时间点一致拷贝是比较困难的。当进行快照时,快照的源卷将会被冻结几秒钟;当快照拷贝的位图建立之后,源卷才可以继续进行 I/O操作。当位图建立后,后台拷贝需要进行一段时间,但是在目标卷上看来,拷贝已经完成了。
基于写重定向的存储快照技术 (Redirect Write)
通过写重定向来实现数据快照技术主要在NETAPP公司的存储和NAS中使用,NETAPP 称为Snapshot,由于Snapshot只能提供只读的卷,如果需要对快照虚拟磁盘进行写操作,还需要配合Flexclone技术实现。
SnapShot是WAFL文件系统"任意位置写入"功能带来的一项突出优势。 一份SnapShot是文件系统的在线只读拷贝。创建文件系统的一份SnapShot仅仅需要几秒种的时间,并且除非原始文件被删除或者更改,数据快照并不占用额外的磁盘空间。只有修改活动文件系统中的数据块并写入磁盘中新的位置时,SnapShot才会占用额外的磁盘空间。
基于首次写入变更的存储快照技术(Copy-On-First Write)
基于首次写入变更的存储快照技术是由传统的Copy on write发展而来的,通过整合不同时间的不同快照,使他们之间建立关联性,从而回避了传统快照技术的在多个快照时对于性能和个数的影响。
这类技术主要是以美国飞康公司为代表的。飞康公司称之为Timemark。飞康Timemark 是一种基于时间点的和可定制策略的存储数据快照保护技术。Timemark可以按照客户要求定时的周期产生或者按照策略进行生成,每个数据卷可达到255 个快照。由于Delta增量空间只有在数据变更的时候才会被占用,255个快照(相当于255份数据版本)只需要非常有限的空间就可以实现。另外,飞康近来发明了"录像"(Journal) 技术,任何一秒钟的数据可以迅速变成一个新的快照,使快照技术登上了一个新的高度。
快照技术的比较与选择
传统的快照技术主要是针对每个存储资源时间点状态的单一保护。虽然同一存储资源也可以实现几份乃至十几份的快照,但是快照之间彼此是没有关联性的。正是由于这个缺陷,是当存储管理员对同一存储资源需要多个时间点的多份快照时,传统的存储快照技术遇到以下问题:
存储容量问题:传统快照技术通常是一份快照就需要一份磁盘空间,当客户需要的快照数量上百个之后,产生数百倍的空间占用,显然单一存储的空间局限性问题将暴露的非常突出。同时,其价格也将变得非常昂贵。因而,一般并不用于多份数据快照。实际上,这类快照技术的快照数量本身就十分少(如8 个),也不会用于多个时间点的自动快照机制。
存储性能问题:由于不同时间产生的传统存储快照之间没有关联性,假如需要生成多个快照,一个磁盘块的写入很可能向多个快照空间发出保存当前时间点原始数据的指令,例如产生10个快照的话,就要将一份原始数据同样写入10个快照区域,这样产生的写惩罚十分惊人,而且数据库还需要产生短时冻结,大大降低系统性能。举例:一个系统中有12份快照,当一个数据需要写入时,在存储中将产生 13个写操作和1个读操作。其对存储性能的影响根本无法被接受。
Redirect Write技术和Copy-On-First Write技术都可以在少量的空间内实现高达255份快照。但是由于实现机理不同,所以呈现出不同的性能特性,有着不同的使用领域。
Redirect write的Snapshot技术在数据写入是没有任何性能影响,但是由于破坏了原有数据在磁盘上的连续分配,如果应用程序在数据写入后存在大量连续读操作(如报表业务等),则会降低读性能,导致业务相应时间变长。此外,快照数据只能提供读操作,不能写入数据。对于大量业务环境并不符合要求。为了实现对虚拟快照磁盘的可读写访问,必然要使用Flexclone技术,因此每次写都会变成两次写,产生对写性能的影响,并且破坏了数据在磁盘上的连续分布。因此,我们认为Redirect Write技术比较适合写入数据量远远大于读数据量的应用系统,或者向NAS这种用来做归档和备份存储产品。但是对于当前绝大多数读写比3:1到10:1 的数据中心级别的系统来讲,可能对业务系统产生性能影响。
以上就是关于lvm快照原理相关问题的回答。希望能帮到你,如有更多相关问题,您也可以联系我们的客服进行咨询,客服也会为您讲解更多精彩的知识和内容。
推荐阅读: