热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

LVM和RAID

LVM和RAIDLVM基础知识概念术语工作原理优点注意linux中使用LVM创建逻辑卷RAID概念技术镜像数据条带数据校验原理作用分类使用场景级别RAID0:无差错控

LVM和RAID

  • LVM
    • 基础知识
      • 概念
      • 术语
      • 工作原理
      • 优点
      • 注意
    • linux中使用LVM创建逻辑卷
  • RAID
    • 概念
    • 技术
      • 镜像
      • 数据条带
      • 数据校验
    • 原理
    • 作用
    • 分类
    • 使用场景
    • 级别
      • RAID0:无差错控制的带区组
      • RAID1:无校验的镜像
      • RAID3:带有专用位校验的数据条带
      • RAID4:带有专用块级校验的数据条带
      • RAID5:带分散校验的数据条带
      • RAID6:带双重分散校验的数据条带
      • 组合


LVM

基础知识


概念

LVM是 Logical Volume Manager(逻辑卷管理)的简写,它是Linux系统对磁盘分区进行管理的一种机制。

LVM是在磁盘分区和文件系统之间添加的一个逻辑层,来为文件系统屏蔽下层磁盘分区布局,提供一个抽象的存储卷,为磁盘分区提供一个文件系统,该文件系统是在存储卷上建立的

LVM层的位置:
在这里插入图片描述
其中方框表示LVM层的位置

术语

PV:physical volume,物理卷,其最小单位是PE,一般默认为4MB。物理卷是LVM的基本存储逻辑块

VG:volume group,卷组,是物理卷的一个组合,可以理解成一台机器的所有内存

LV:logical volume,逻辑卷,用卷组中的空间建立文件系统,相当于磁盘里面的分区,基本单位是LE,是逻辑卷LV可被寻址的基本单位,其大小与PE一一对应

可用df命令去查看磁盘情况,有mapper的就表示是使用的逻辑卷进行分区操作。
在这里插入图片描述

工作原理

将几块物理卷组合起来形成一个卷组,通过LVM层去管理外存设备,因此外存设备不再由内核直接管理。

LVM可以每次从卷组中划分出不同大小的逻辑卷(LogicalVolume)创建新的逻辑设备。逻辑卷相当于文件系统中的分区

优点

1.用户在无需停机的情况下可以方便地调整各个分区大小
2.可以改变逻辑分区的大小
3.有快照功能,可以将数据备份

注意

linux中的boot分区没有使用LVM技术

LVM逻辑设备不受物理约束的限制,逻辑卷不必是连续的空间,它可以跨越许多物理卷,并且可以在任何时候任意的调整大小

linux中使用LVM创建逻辑卷

步骤:
1.查看磁盘分区的个数

fdisk -l

2.创建PV

pvcreate /dev/sdb

3.查看PV

pvscan

4.创建卷组VG

vgcreate alidiidi /dev/sdb

5.创建文件系统LV

lvcreate -L 1G -n office alidiidi

6.查看LV

lvscan

7.格式化LV

mkfs.xfs /dev/alidiidi/office

8.挂载磁盘分区

mkdir office
mount /dev/alidiidi/office office/

可以看到,此时的/dev/mapper/alidiidi-office已经被挂载到/root/office下了,且可以知道该项分区的技术是LVM
在这里插入图片描述

若LV空间不足,则要给LV扩容,LV扩容的容量是VG卷组提供的,因此VG空间足够的情况下,可以直接使用lvextend命令去扩容,当VG空间不足,则要给VG卷组扩容,此时就需要新增物理卷PV了。

显示VG的详细信息,用来判断VG空间是否足够

vgdisplay

若VG空间不够,则要给VG扩容

vgextend alidiidi /dev/sdd

VG扩容之后,就可以给LV提供容量了,LV向VG空间申请容量

lvextend -L +2G /dev/alidiidi/office

将申请到的容量添加进去到LV中,并重新识别

xfs_growfs /dev/alidiidi/office

将其写进etc/fstab,可以让其开机自启

RAID

概念

RAID:是独立冗余磁盘阵列(Redundant Arrays of Independent Disks),
由很多块独立的磁盘,组合成一个容量巨大的磁盘组,简单来说就是将多个硬盘通过RAID controller结合成一个虚拟的单台的大容量的硬盘。RAID中部分物理存储空间用来记录保存在剩余空间上的用户数据的冗余信息。当其中某一个磁盘或访问路径发生故障时,冗余信息可用来重建用户数据,可以实现数据的可靠性并且提高磁盘i/o性能

技术


镜像

将数据复制到多个磁盘,一方面可以提高可靠性,另一方面可并发从两个或多个副本读取数据来提高读性能。显而易见,镜像的写性能要稍低, 确保数据正确地写到多个磁盘需要更多的时间消耗。数据条带,将数据分片保存在多个不同的磁盘,多个数据分片共同组成一个完整数据副本,这与镜像的多个副本是不同的,它通常用于性能考虑。

数据条带

数据条带具有更高的并发粒度,当访问数据时,可以同时对位于不同磁盘上数据进行读写操作, 从而获得非常可观的 I/O 性能提升 。

数据校验

利用冗余数据进行数据错误检测和修复,冗余数据通常采用海明码、异或操作等算法来计算获得。利用校验功能,可以很大程度上提高磁盘阵列的可靠性、鲁棒性和容错能力。

原理

用个别磁盘提供数据所产生加成效果提升整个磁盘系统效能。
把相同的数据存储在多个硬盘的不同的地方(因此,冗余地)的方法。通过把数据放在多个硬盘上,输入输出操作能以平衡的方式交叠,改良性能。

作用

(1)通过对磁盘上的数据进行条带化,实现对数据成块存取,减少磁盘的机械寻道时间,提高了数据存取速度。
(2)通过对一个阵列中的几块磁盘同时读取,减少了磁盘的机械寻道时间,提高数据存取速度。
(3)通过镜像或者存储奇偶校验信息的方式,实现了对数据的冗余保护。通过数据校验提供容错功能

分类

磁盘阵列其样式有三种,一是外接式磁盘阵列柜、二是内接式磁盘阵列卡,三是利用软件来仿真

外接式磁盘阵列柜:常被使用大型服务器上,具可热交换(Hot Swap)的特性,不过这类产品的价格都很贵

内接式磁盘阵列卡:价格便宜,但需要较高的安装技术,适合技术人员使用操作

软件仿真:指通过cpu和网络操作系统提供的磁盘管理功能将多块硬盘配置成逻辑盘,组成阵列。软件阵列可以提供数据冗余功能,但是磁盘子系统的性能会有所降低,不适合大数据流量的服务器

使用场景

1、DAS–direct access storage device直接访问存储设备
DAS以服务器为中心,传统的网络存储设备都是将RAID硬盘阵列直接连接到网络系统的服务器上

2、NAS–Network Attached Storage网络附加存储设备
NAS以数据为中心,NAS是 Network Attached Storage的简称,中文称为直接联网存储在NAS存储结构中,存储系统不再通过I/O总线附属于某个特定的服务器或客户机,而是直接通过网络接口与网络直接相连,由用户通过网络访问。

3、SAN–Storage Area Networks存储区域网
SAN以网络为中心,SAN是一种类似于普通局域网的高速存储网络。SAN提供了一种与现有LAN连接的简易方法,允许企业独立地增加它们的存储容量,并使网络性能不至于受到数据访问的影响。这种独立的专有网络存储方式使得SAN具有不少优势:可扩展性高;存储硬件功能的发挥不受LAN的影响;易管理;集中式管理软件使得远程管理和无人值守得以实现;容错能力强。

级别

RAID有很多种级别,RAID 每一个等级代表一种实现方法和技术,等级之间并无高低之分

常见RAID的对比图:
在这里插入图片描述
不常用的对比图:
在这里插入图片描述

RAID0:无差错控制的带区组

RAID0 是一种简单的、无数据校验的数据条带化技术。实际上不是一种真正的 RAID ,因为它并不提供任何形式的冗余策略。

RAID0 一般适用于对性能要求严格但对数据安全性和可靠性不高的应用,如视频、音频存储、临时数据缓存空间等

其数据写入图如下:
在这里插入图片描述

RAID1:无校验的镜像

将数据完全一致地分别写到工作磁盘和镜像磁盘。 RAID1 在数据写入时,响应时间会有所影响,但是读数据的时候没有影响。 RAID1 提供了最佳的数据保护,一旦工作磁盘发生故障,系统自动从镜像磁盘读取数据,不会影响用户工作。

RAID1 应用于对顺序读写性能要求高以及对数据保护极为重视的应用,如对邮件系统的数据保护。

其数据写入图如下:
在这里插入图片描述

RAID3:带有专用位校验的数据条带

它采用一个专用的磁盘作为校验盘,其余磁盘作为数据盘,数据交叉存储到各个数据盘中。

RAID3 完好时读性能与 RAID0 完全一致,并行从多个磁盘条带读取数据,性能非常高,同时还提供了数据容错能力。向 RAID3 写入数据时,必须计算与所有同条带的校验值,并将新校验值写入校验盘中。因此写操作时,系统开销非常大,性能较低。

如果 RAID3 中某一磁盘出现故障,不会影响数据读取,可以借助校验数据和其他完好的数据来重建数据。当故障磁盘被更换后,系统按相同的方式重建故障盘中的数据至新磁盘。

RAID3 只需要一个校验盘,阵列的存储空间利用率高,再加上并行访问的特征,能够为高带宽的大量读写提供高性能,

适用大容量数据的顺序访问应用,如影像处理、流媒体服务等。目前, RAID5 算法不断改进,在大数据量读取时能够模拟 RAID3 ,而且 RAID3 在出现坏盘时性能会大幅下降,因此常使用 RAID5 替代 RAID3 来运行具有持续性、高带宽、大量读写特征的应用。

在这里插入图片描述

RAID4:带有专用块级校验的数据条带

RAID4 与 RAID3 的原理大致相同,区别在于条带化的方式不同。 RAID4按照 块的方式来组织数据,写操作只涉及当前数据盘和校验盘两个盘,多个 I/O 请求可以同时得到处理,提高了系统性能。 RAID4 按块存储可以保证单块的完整性,可以避免受到其他磁盘上同条带产生的不利影响。

写性能比较差。而且随着成员磁盘数量的增加,校验盘的系统瓶颈将更加突出。正是如上这些限制和不足, RAID4 在实际应用中很少见,主流存储产品也很少使用 RAID4 保护。
在这里插入图片描述

RAID5:带分散校验的数据条带

RAID5 应该是目前最常见的 RAID 等级,它的原理与 RAID4 相似,区别在于校验数据分布在阵列中的所有磁盘上,而没有采用专门的校验磁盘。

RAID5 的磁盘上同时存储数据和校验数据,数据块和对应的校验信息存保存在不同的磁盘上,当一个数据盘损坏时,系统可以根据同一条带的其他数据块和对应的校验数据来重建损坏的数据。
  
RAID5 兼顾存储性能、数据安全和存储成本等各方面因素,它可以理解为 RAID0 和 RAID1 的折中方案,是目前综合性能最佳的数据保护解决方案。 RAID5 基本上可以满足大部分的存储应用需求,数据中心大多采用它作为应用数据的保护方案。
在这里插入图片描述

RAID6:带双重分散校验的数据条带

采用两个独立的校验算法,校验数据可以分别存储在两个不同的校验盘上,或者分散存储在所有成员磁盘中。当两个磁盘同时失效时,即可通过求解两元方程来重建两个磁盘上的数据。

它可以保证阵列中同时出现两个磁盘失效时,阵列仍能够继续工作,不会发生数据丢失。 RAID6 等级是在 RAID5 的基础上为了进一步增强数据保护而设计的一种 RAID 方式,它可以看作是一种扩展的 RAID5 等级。

RAID6 很少得到实际应用,主要用于对数据安全等级要求非常高的场合。它一般是替代 RAID10 方案的经济性选择。
  
在这里插入图片描述

组合

RAID0和RAID1的组合,需要至少4个磁盘。
RAID10:
先镜射再分区
在这里插入图片描述

RAID01:
先分区再镜射
在这里插入图片描述


推荐阅读
  • 【重识云原生】第四章云网络4.8.3.2节——Open vSwitch工作原理详解
    2OpenvSwitch架构2.1OVS整体架构ovs-vswitchd:守护程序,实现交换功能,和Linux内核兼容模块一起,实现基于流的交换flow-basedswitchin ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • Linux如何安装Mongodb的详细步骤和注意事项
    本文介绍了Linux如何安装Mongodb的详细步骤和注意事项,同时介绍了Mongodb的特点和优势。Mongodb是一个开源的数据库,适用于各种规模的企业和各类应用程序。它具有灵活的数据模式和高性能的数据读写操作,能够提高企业的敏捷性和可扩展性。文章还提供了Mongodb的下载安装包地址。 ... [详细]
  • Java在运行已编译完成的类时,是通过java虚拟机来装载和执行的,java虚拟机通过操作系统命令JAVA_HOMEbinjava–option来启 ... [详细]
  • 本文介绍了Redis中RDB文件和AOF文件的保存和还原机制。RDB文件用于保存和还原Redis服务器所有数据库中的键值对数据,SAVE命令和BGSAVE命令分别用于阻塞服务器和由子进程执行保存操作。同时执行SAVE命令和BGSAVE命令,以及同时执行两个BGSAVE命令都会产生竞争条件。服务器会保存所有用save选项设置的保存条件,当满足任意一个保存条件时,服务器会自动执行BGSAVE命令。此外,还介绍了RDB文件和AOF文件在操作方面的冲突以及同时执行大量磁盘写入操作的不良影响。 ... [详细]
  • Vagrant虚拟化工具的安装和使用教程
    本文介绍了Vagrant虚拟化工具的安装和使用教程。首先介绍了安装virtualBox和Vagrant的步骤。然后详细说明了Vagrant的安装和使用方法,包括如何检查安装是否成功。最后介绍了下载虚拟机镜像的步骤,以及Vagrant镜像网站的相关信息。 ... [详细]
  • 单页面应用 VS 多页面应用的区别和适用场景
    本文主要介绍了单页面应用(SPA)和多页面应用(MPA)的区别和适用场景。单页面应用只有一个主页面,所有内容都包含在主页面中,页面切换快但需要做相关的调优;多页面应用有多个独立的页面,每个页面都要加载相关资源,页面切换慢但适用于对SEO要求较高的应用。文章还提到了两者在资源加载、过渡动画、路由模式和数据传递方面的差异。 ... [详细]
  • Nginx使用AWStats日志分析的步骤及注意事项
    本文介绍了在Centos7操作系统上使用Nginx和AWStats进行日志分析的步骤和注意事项。通过AWStats可以统计网站的访问量、IP地址、操作系统、浏览器等信息,并提供精确到每月、每日、每小时的数据。在部署AWStats之前需要确认服务器上已经安装了Perl环境,并进行DNS解析。 ... [详细]
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • 禁止程序接收鼠标事件的工具_VNC Viewer for Mac(远程桌面工具)免费版
    VNCViewerforMac是一款运行在Mac平台上的远程桌面工具,vncviewermac版可以帮助您使用Mac的键盘和鼠标来控制远程计算机,操作简 ... [详细]
  • LVS实现负载均衡的原理LVS负载均衡负载均衡集群是LoadBalance集群。是一种将网络上的访问流量分布于各个节点,以降低服务器压力,更好的向客户端 ... [详细]
  • 本文介绍了iOS开发中检测和解决内存泄漏的方法,包括静态分析、使用instruments检查内存泄漏以及代码测试等。同时还介绍了最能挣钱的行业,包括互联网行业、娱乐行业、教育行业、智能行业和老年服务行业,并提供了选行业的技巧。 ... [详细]
  • 本文介绍了一个Magento模块,其主要功能是实现前台用户利用表单给管理员发送邮件。通过阅读该模块的代码,可以了解到一些有关Magento的细节,例如如何获取系统标签id、如何使用Magento默认的提示信息以及如何使用smtp服务等。文章还提到了安装SMTP Pro插件的方法,并给出了前台页面的代码示例。 ... [详细]
author-avatar
安安1
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有