理解LVM《二》lvm 组件

    ㈠ 物理卷

    ⑴ PV简介

 

          一个设备可以被 LVM 使用之前必须先被初始化为一个 PV 。这会在设备的起始位置放置一个标签,俗称“8e”。
          默认情况下,LVM 标签被放在第2个 512 字节的扇区。
          但是,你可以把PV 标签放在一个磁盘的前4个512字节的扇区中的任意一个。
          一个 LVM 标签在重启后也会存在,同时在一个集群中都被知道。
          LVM 标签用于把一个设备识别为一个 PV
          LVM标签含:
          ① 对该设备的随机的唯一的标识符(UUID)
          ② 指出块设备的大小(字节)
          ③ 记录 LVM 元数据的存储位置
          ④ 设备顺序方面的信息(因为在系统启动时设备可以是以任何顺序出现)

    ⑵ LVM元数据

 

          LVM 元数据含有LVM 卷组的详细配置信息。默认情况下,一个卷组的元数据被放置到该卷组中的每个 PV 的一个特殊区域, 元数据很小,且以 ASCII 格式存储。
          当前 LVM 允许在每个 PV 上存储0,1,2 个元数据的拷贝,默认是1个。
          一旦你配置在每个 PV 上存储多少个元数据的拷贝后,你在后续就不能改动了。(也就是一旦 pv 加入 VG ,就不允许再修改了)
          第一个拷贝被放在设备的起始位置,在 PV 标签的后面。如果有第2份拷贝,则放在设备的结束位置。
          假如你不小心覆盖了开始位置的数据,你可以使用结束位置的第2份来恢复

 

    ⑶  LVM 物理卷布局

 

              LVM 标签放在第2个扇区,后面是 pv 所在卷组的元数据,然后就是可用空间。第一个扇区可能是启动扇区。

 

    ⑷ 分区作LVM

 

          LVM 允许你用分区来做 PV ,而不是整个磁盘。但一般建议你把整个盘分成一个分区。
          原因:
          1、一是方便管理。而且如果一个磁盘上有多个 pv 会导致内核在启动时警告分区类型未知
          2、条带化性能。因为 LVM 并不能判断两个 pv 是否在同一个磁盘上,如果你在这样的 PV 上建立 striped 逻辑卷,将导致性能的下降。
          当然、自己作测试机、一盘多区作PV是可以考虑的

 

    ㈡ 卷组

 

          在一个 VG 中,磁盘空间被分成固定大小的单位,称为 extent。我们通常称之为“PE”。

          PE是整个LVM最小的存储单位,也就是说,其实我们的文件数据都是由写入PE来处理的。

          简单的说,PE就如oracle里面的block。

          LVM的重点在于可以弹性调整文件系统的容量,实现这个便是通过交换PE来进行数据转换,将原本LV内的PE移到其他设备中以降低LV容量,

          或将其他设备的PE加到此LV中以扩大容量。
          
PE与VG的相关性图示:

           这个VG要扩充的话,加上其他的PV即可;而最重要的LV如果要扩充的话,也是通过加入VG内没有使用到的PE来扩充的!

 

    ㈢ 逻辑卷

 

          VG 被分成多个逻辑卷,有三种可选 :线性逻辑卷、条带化逻辑卷、镜像卷


          
          ① 线性逻辑卷


          
          一个线性逻辑卷聚合多个 PV 称为一个逻辑卷。例如你有两个 60GB 的磁盘,你可以建立一个 120 GB 的逻辑卷。
          两个物理存储设备可以看成首位相接的。
          建立一个线性卷时,会按顺序分配某个范围的 PE 给 LV 用

 

          用于建立 LV 的 PV 不需要相同的大小

 

          你可以从可用的 PE 中建立多个线性逻辑卷,大小随意

 

    ② 条带化逻辑卷

 

          你可以通过建立一个 striped 逻辑卷来控制数据如何写入物理卷。对于大型的连续读写来说,这可以提高性能.
          条带化通过循环地把数据写入预先定好数量的 PV 上来提高性能。通过条带化,I/O 可以以并行的方式进行,在某些情况下,可以达到几乎线性倍数的性能提高.
          下面是一个分布于三个 PV 上的条带化逻辑卷,可以看到和 RAID-0 是一样的原理.
          不同的是,RAID-0 要求每个成员设备大小相同,而 LVM 不要求这样

          在一个条带化的逻辑卷中,stripe 的大小不可以超过 PE 的大小
          要扩展一个 striped 逻辑卷不像扩展一个 linear 逻辑卷那么简单,需要逻辑卷所在卷组有一定的自由空间以移动数据
          例如你有一个跨越两个 PV 的 striped LV ,如果你想扩展它,必须“至少”增加2个 PV 才能实现条带化逻辑卷的扩展

 

    ③ 镜像逻辑卷

 

          当一个镜像 LV 的一部分失效时(例如一个 PV 失效),镜像 LV 会变成一个普通的线性 LV ,仍然可以被访问
          LVM 支持镜像卷,当建立一个镜像逻辑卷时,LVM 确保写进一个底层 pv 的数据会被写进另外一个 pv
          你可以用 LVM 建立一个带有多个镜像的逻辑卷
          一个 LVM 镜像设备把源设备分成一个个区域,大小为 512 KB 。LVM 会维护一个日志,它用于跟踪那个(些)区域是同步。`   
          这个日志可以放在磁盘上,重启也不会丢失,或者可以被读入内存。

          目前集群不支持镜像卷

 

    ④ 快照卷

 

          LVM 的快照功能允许你为一个设备在某个特定的时间点建立一个“虚拟的”的镜像,而不用中断服务。
          和镜像逻辑卷一样,LVM 的 snapshot 功能并不被集群所支持
          在快照建立完成后,如果源设备有改变,则会把被改变的区域做一个拷贝,这样日后可以用于重建设备。
          因为 snapshot 只拷贝在快照卷建立后被改变的数据区域,所以 snapshot 功能只需要很少的存储空间。
          例如在一个很少更新的 LV 中,3-5%的空间就足够用于维护快照卷了。
          注意,snapshot 只是一个虚拟的拷贝,不是实际的介质备份。snapshot 并不能取代普通的备份过程。
          一旦快照卷满了,就被卸载。这是为了确保源文件系统有足够的空间。你应该定时观察快照卷的使用情况。 快照卷是可以调整大小的
          当你建立一个快照文件系统时,源文件系统还是可以读写的。假如快照的一个 chunk 被改变,该 chunk 被打上标记,并不再从原来的卷中拷贝。
          快照卷有如下用途 :
       
          1、你可以在不用卸载原来的文件系统或者停止应用的情况下对一个 LV 进行备份
       
          2、你可以对快照卷进行 fsck 再决定原来的文件系统是否需要修复
       
          3、因为快照卷是可读写的,你可以告诉应用程序对快照卷的数据进行测试,而不用动原来的数据

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值