LVM
LVM(Logical Volume Manager)是一个用于管理存储设备的逻辑卷管理器。它提供了在Linux系统上创建、管理和分配逻辑卷的功能,以提供更灵活、可靠和易于管理的存储解决方案。
使用LVM,可以将多个物理磁盘(或分区)组合在一起形成一个逻辑卷组(Volume Group),并从逻辑卷组中创建逻辑卷(Logical Volume)。逻辑卷可以根据需要进行动态调整大小,并可以分配给文件系统或其他应用程序使用。
LVM提供了以下关键概念和功能:
- 物理卷(Physical Volume,PV):物理磁盘或分区,通过初始化为物理卷并将其加入到逻辑卷管理器中来使用。
- 逻辑卷组(Volume Group,VG):由一个或多个物理卷组成的逻辑卷的集合。逻辑卷组充当逻辑卷的容器。
- 逻辑卷(Logical Volume,LV):从逻辑卷组中分配的逻辑存储单元。逻辑卷具有可调整大小的特性。
- LVM快照(LVM Snapshot):LVM提供了快照功能,可以在不中断系统运行的情况下创建卷的副本。快照可以用于数据备份、恢复和测试等目的。
- 物理扩展(Physical Extend,PE):PE 是用来保存数据的最小单元,我们的数据实际上都是写入 PE 当中的。PE 的大小是可以配置的,默认是 4MB。
LVM的优势:
- 灵活性:LVM允许动态调整逻辑卷的大小,而无需重新分区或重建文件系统。
- 可靠性:LVM支持数据冗余和容错功能,如磁盘镜像和RAID。
- 性能优化:LVM可以通过跨多个物理磁盘分布数据,从而提供更高的输入/输出性能。
- 数据管理:LVM提供了逻辑卷的快照功能,用于数据备份和测试。
通过交换PE来进行资料的转换,将原来LV内的PE转移到其他的设备中以降低LV的容量,或将其他设备 中的PE加到LV中以加大容量
指令
#创建物理卷
pvcreate /dev/sda /dev/sdb
#为卷组分配物理卷
vgcreate vg0(卷组名字) /dev/sda(物理卷)
#从卷组创建逻辑卷
lvcreate -L 500M(逻辑卷大小) -n data vg0(卷组名字)
RAID
独立硬盘冗余阵列(RAID, Redundant Array of Independent Disks),旧称廉价磁盘冗余阵列(Redundant Array of Inexpensive Disks),简称磁盘阵列。利用虚拟化存储技术把多个硬盘组合起来,成为一个或多个硬盘阵列组,目的为提升性能或资料冗余,或是两者同时提升。
RAID把多个硬盘组合成为一个逻辑硬盘,因此,操作系统只会把它当作一个实体硬盘。RAID常被用在服务器电脑上,并且常使用完全相同的硬盘作为组合。由于硬盘价格的不断下降与RAID功能更加有效地与主板集成,它也成为普通用户的一个选择,特别是需要大容量存储空间的工作。
RAID 0
称为带区卷。它将两个以上的磁盘并联起来,成为一个大容量的磁盘。在存放数据时,分段后分散存储在这些磁盘中,因为读写时都可以并行处理,所以在所有的级别中,RAID 0的速度是最快的。但是RAID 0既没有冗余功能,也不具备容错能力,如果一个磁盘(物理)损坏,所有数据都会丢失,危险程度与JBOD相当。
RAID 1
也称为镜像, 两组以上的N个磁盘相互作镜像,在一些多线程操作系统中能有很好的读取速度,理论上读取速度等于硬盘数量的倍数,与RAID 0相同。另外写入速度有微小的降低。
RAID 5
RAID 5是一种储存性能、数据安全和存储成本兼顾的存储解决方案。它使用的是Disk Striping(硬盘分割)技术。
RAID 5使用“奇偶校验位”。与 RAID-4 一样,有效大小是 N-1 个磁盘的大小。 然而,由于奇偶校验信息也在 N 个驱动器之间均匀分布,因此避免了每次写入都必须更新奇偶校验磁盘的瓶颈。防止单个磁盘故障,而且访问速度快。
RAID 5不是对存储的数据进行备份,而是把数据和相对应的奇偶校验信息存储到组成RAID 5的各个磁盘上,并且奇偶校验信息和相对应的数据分别存储于不同的磁盘上。当RAID 5的一个磁盘数据发生损坏后,可以利用剩下的数据和相应的奇偶校验信息去恢复被损坏的数据。RAID 5可以理解为是RAID 0和RAID 1的折中方案。RAID 5可以为系统提供数据安全保障,但保障程度要比镜像低而磁盘空间利用率要比镜像高。RAID 5具有和RAID 0相近似的数据读取速度,只是因为多了一个奇偶校验信息,写入数据的速度相对单独写入一块硬盘的速度略慢,若使用“回写缓存”可以让性能改善不少。同时由于多个数据对应一个奇偶校验信息,RAID 5的磁盘空间利用率要比RAID 1高,存储成本相对较便宜。
RAID 10
RAID 10是先做镜像卷RAID 1 将所有硬盘分为两组,再做RAID 0 执行条带化操作分割数据 ,视为以RAID 1作为最低组合,然后将每组RAID 1视为一个“硬盘”组合为RAID 0运作。
RAID 01则是跟RAID 10的程序相反,是先将数据分割。再做镜像卷RAID 1 它将所有的硬盘分为两组,每组各自构成为RAID 0作为最低组合,而将两组硬盘组合为RAID 1运作。
当RAID 10有一个硬盘受损,其余硬盘会继续运作。RAID 01只要有一个硬盘受损,同组RAID 0的所有硬盘都会停止运作,只剩下其他组的硬盘运作,可靠性较低。如果以六个硬盘建RAID 01,镜像再用三个建RAID 0,那么坏一个硬盘便会有三个硬盘离线。因此,RAID 10远较RAID 01常用,零售主板绝大部分支持RAID 0/1/5/10,但不支持RAID 01。