第3章〓DAS服务器配置与管理 【学习目标】 理解DAS技术基础知识、RAID(磁盘阵列)、RAID数据保护LUN虚拟化,以及磁盘及磁盘分区等相关理论知识。 掌握基本磁盘的配置与管理、动态磁盘的配置与管理,以及存储池的配置与管理等相关知识与技能。 3.1项目陈述 随着社会对信息存储需求的不断加速,存储容量飞速增长。网络存储作为一种广泛的服务,用户除了对其要求提供海量存储容量外,还对包括数据访问性能、数据传输性能、数据管理能力、存储扩展能力、数据安全性等多方面提出要求。存储技术的水平逐渐成为一种可量化的,影响系统和网络性能的关键因素,它的优劣直接影响到整个系统能否正常运行。因此,近年来,存储行业逐渐成为IT业界最热门的领域之一。本章讲解DAS技术基础知识、RAID、RAID数据保护LUN虚拟化,以及磁盘及磁盘分区等相关理论知识,项目实践部分讲解基本磁盘的配置与管理、动态磁盘的配置与管理,以及存储池的配置与管理等相关知识与技能。 3.2必备知识 3.2.1DAS技术基础知识 存储是一种为数据提供稳定、非易失、可靠的保存数据的基础设施的总称。而网络存储技术,就是以互联网为载体实现数据的传输与存储,它采用面向网络的存储体系结构,使数据处理和数据存储分离。它通过网络连接服务器和存储资源,消除了不同存储设备和服务器之间的连接障碍; 提高了数据的共享性、可用性、可扩展性和管理性。 目前网络存储架构中,普遍使用的有直连式存储(Direct Attached Storage,DAS)、网络附属存储(Network Attached Storage,NAS)、存储区域网络(Storage Area Network,SAN)和因特网小型计算机系统接口(Internet Small Computer System Interface,iSCSI),又称为IPSAN,是一种基于因特网及SCSI3协议的存储技术。 1. 直连式存储DAS DAS技术是最早被采用的存储技术,如同PC的结构,是把外部的数据存储设备都直接挂在服务器内部的并行总线或串行总线上,数据存储设备是服务器结构的一部分,它依赖于服务器,其本身是硬件的堆叠,不带有任何存储操作系统,如图3.1所示。但由于这种存储技术是把设备直接挂在服务器上,随着需求的不断增大,越来越多的设备添加到网络环境中,导致服务器和存储独立数量较多,资源利用率低下,使得数据共享受到严重的限制,因此适用在一些小型网络应用中。 图3.1DAS连接模式 DAS存储更多地依赖服务器主机操作系统进行数据的I/O读写和存储维护管理,数据备份和恢复要求占用服务器主机资源(包括CPU、系统I/O等),数据流需要回流主机再到服务器连接着的磁带机(库),数据备份通常占用服务器主机资源的20%~30%,因此许多企业用户的日常数据备份常常在深夜或业务系统不繁忙时进行,以免影响正常业务系统的运行。直连式存储的数据量越大,备份和恢复的时间就越长,对服务器硬件的依赖性和影响就越大。 直连式存储与服务器主机之间的连接通道通常采用SCSI连接,随着服务器CPU的处理能力越来越强,存储硬盘空间越来越大,阵列的硬盘数量越来越多,SCSI通道将会成为I/O瓶颈; 服务器主机SCSI ID资源有限,能够建立的SCSI通道连接有限。 DAS存储体系结构是以服务器为中心,各种存储设备通过总线与服务器连接,终端对数据进行访问时,必须经过服务器才能与存储设备通信,因此,服务器就是一个数据转发器。 无论是直连式存储还是服务器主机的扩展,从一台服务器扩展为多台服务器组成的群集(Cluster),或存储阵列容量的扩展,都会造成业务系统的停机,从而给企业带来经济损失,对于银行、电信、传媒等行业7×24h服务的关键业务系统,这是不可接受的。并且直连式存储或服务器主机的升级扩展,只能由原设备厂商提供,往往受原设备厂商限制。 直连式存储是指服务器主机与网络存储之间通过通信线缆直连,实现数据存取。直连式存储部署方式分为内置存储和外置存储。 (1) 内置存储。 图3.2超融合服务器 内置存储就是将存储设备(通常是磁盘)与服务器其他硬件直接安装在同一个机箱内,且该存储设备被服务器独占使用,服务器内部连接硬盘的形式,如图3.2所示。当前被广泛使用的超融合云一体机就是典型的内置存储方式,它将服务器虚拟化、网络虚拟化、存储虚拟化纳入管理平台统一管理,实现企业私有云的超融合基础架构的交付。内置DAS存储设备通过服务器的并行总线或串行总线与服务器相连接,内置DAS的管理主要是通过主机和主机操作系统来实现,也有使用第三方软件来进行管理,主机主要实现存储设备硬盘/卷的分区创建及分区管理,以及操作系统支持的文件系统布局。 (2) 外置存储。 外置存储就是将存储设备从服务器中独立出来,存储设备通过电缆或光缆直接连接到服务器,输入/输出(Input/Output,I/O)请求直接发送到存储设备,DAS 依靠服务器进行工作,其本身只是硬件的堆叠,而没有操作系统。 外置存储必须依赖服务器主机操作系统进行数据的I/O读写和存储维护管理,所以数据备份和恢复都会占用服务器主机资源(包括CPU、系统I/O等),外置存储与服务器主机之间的连接通道通常采用小型计算机系统接口(Small Computer System Interface,SCSI)连接,当前最高带宽为640MB/s。当终端连接数量增加时,总线会成为数据传输的瓶颈,严重影响整个系统的正常工作。因此,这种存储方式不能适应较高的存储要求。 相比内置DAS,外围DAS克服了内部DAS对连接设备的距离和数量的限制,可以提供更远距离、更多设备数量的连接,增强了存储扩展性。另外,外部DAS还可以提供存储设备集中化管理,使操作维护更加方便。但是,外置DAS对设备连接距离和数量依然存在限制,也存在资源共享不便的问题。 相对于内置DAS的管理,外置DAS管理的一个关键点是主机操作系统不再直接负责一些基础资源的管理,而是采用基于阵列的管理方式,如LUN的创建、文件系统的布局以及数据的寻址等。如果主机的内部DAS是来自多个厂商的存储设备,如硬盘,则需要对这些存储设备分别进行管理。但是,如果将这些存储设备统一放到某个厂商的存储阵列中,则可以由阵列的管理软件进行集中化统一管理。这种操作方式避免了主机操作系统对每种设备的单独管理,维护管理更加便捷。 外置DAS包含两种存储形态: 外部硬盘阵列和智能硬盘阵列。 2. DAS的优点 DAS 适用于对存储容量要求不高、服务器数量很少的中小型局域网,其主要优点在于存储容量扩展的操作非常简单,投入的成本少。 (1) DAS能实现大容量存储。它可以将多个磁盘合并成一个大容量的逻辑磁盘,满足海量存储的需求。 (2) 实现了应用数据和操作系统的分离。操作系统一般存放在主机硬盘中,而应用数据放置于存储的磁盘阵列中。 (3) 提高存取性能。通过磁盘阵列,同时可以有多个物理磁盘在并行工作,I/O速度远高于单个磁盘的运行速度,可以较好地响应高I/O服务业务的需求。 (4) 实施简单。DAS无须专业人员操作和维护,节省用户投资。 (5) 本地数据供给优势明显,系统可靠性高,针对小型环境部署简单。 (6) 系统复杂度较低,成本少而见效快,系统效益高。 3. DAS的缺点 DAS存储方式实现了机内存储到存储子系统的跨越,但也存在很多局限性。 (1) 扩展性差。随着服务器CPU的处理能力越来越强,存储硬盘空间越来越大,阵列的硬盘数量越来越多,SCSI通道已成为I/O瓶颈。 ① 规模扩展性。服务器主机SCSI的ID资源有限,能够建立的SCSI通道连接有限。服务器与存储设备之间采用 SCSI 线缆直接连接的方式,提供的有效用户接口数量通常较少,导致了主机数目和可以连接的存储上双向受限,当整个系统新增应用服务器时,必须为新增服务器单独配置存储设备,造成用户投资的浪费和重复。 ② 性能扩展性。DAS设备的带宽有限,这也导致了其处理I/O的能力有限,当与DAS设备相连的主机对I/O性能的需求较大,很快就达到DAS设备的I/O处理能力上限。 (2) 浪费资源。存储空间无法充分利用,存在浪费,因为DAS共享前端主机端口的能力有限,也导致了DAS的资源利用率比较低。DAS 系统容易出现存储资源孤岛现象,即有些DAS系统资源过剩,而有些DAS系统资源紧张,原因在于系统很难将剩余未用的存储资源重新进行分配,从而阻碍了DAS设备之间的资源共享。数据中心的多台服务器都在使用DAS时,冗余的存储空间不能在服务器之间动态分配,造成存储资源浪费。 (3) 管理分散。DAS方式的数据存储依然是分散的,不同的应用各有一套存储设备,难以对所有存储设备进行集中统一管理。 (4) 异构化严重。DAS 方式使得企业在不同阶段采购了不同厂商不同型号的存储设备,设备之间异构化现象严重,导致维护成本居高不下。面对不同操作系统的服务器的DAS,网络管理员在数据共享和数据备份等应用中操作复杂,导致维护成本较高。 (5) 数据备份问题。DAS方式与主机直接连接,在对重要的数据进行备份时,将会极大地占用主机网络的带宽。 (6) 当服务器发生故障时,数据不可访问,维护内置DAS时,系统需要停机断电处理。 4. DAS的适用环境 无论是直连式存储还是服务器主机从一台扩展为多台服务器组成的群集(Cluster),又或者是存储阵列容量的扩展,都存在业务系统停机的可能,从而给企业带来经济损失的风险,这对于银行、电信等行业的7×24h服务的关键业务系统,这是不可接受的。因此,DAS常应用于以下环境。 (1) 企业仅有若干台服务器,且数据中心投资较少的非关键业务系统。 (2) 存储系统必须被直接连接到应用服务器上时。 (3) 服务器在地理分布上很分散,通过SAN(存储区域网络)或NAS(网络直接存储)在它们之间进行互连非常困难时。 3.2.2RAID RAID(Redundant Array of Independent Disks,磁盘阵列)最初是美国加利福尼亚大学伯克利分校于1987年提出的。简单地说,RAID是由多个独立的高性能磁盘驱动器组成的磁盘子系统,提供了比单个磁盘更高的存储性能和数据冗余技术。 在传统的计算机存储系统中,存储工作通常是由计算机内置的磁盘来完成的,采用这种内置存储方式容易引起性能、容量扩展性、可靠性等方面的问题。 (1) 不利于扩容。一方面,由于机箱空间有限,硬盘数量的扩展受到了限制,导致存储容量受到限制; 另一方面,机箱满载的情况下需要扩容,只能通过添购服务器的方式实现,扩容成本高。 (2) 不利于资源共享。数据存在于不同服务器挂接的磁盘上,不利于共享和备份。 (3) 影响业务连续性。当需要更换硬盘(如硬盘失效)或增加硬盘(如扩容)时,需要切断主机电源,主机上业务系统只能中断。 (4) 可靠性低。机箱内部的硬盘相互独立,多个磁盘上的数据没有采用相关的数据保护措施,坏盘情况下数据丢失的风险大。 (5) 存储空间利用率低。一台主机内置一块或几块容量较大的硬盘,而自身业务在只需很小存储空间的情况下,其他主机也无法利用这些闲置的空间,造成了存储资源的浪费。 (6) 内置存储直接通过总线与内存相连,占用总线资源,影响主机性能。 随着大型计算、海量数据存储的发展,应用对计算能力、数据存储资源方面都有了更高的要求,计算机内置存储已经无法满足各类应用对存储性能、容量、可靠性的需求。为了克服内置存储存在的扩容性差这一问题,人们把磁盘从机箱里面挪到了机箱外面,通过SCSI总线将主机与外置磁盘连接起来,进而通过扩展磁盘数量获得足够大的存储容量,这也是RAID技术的设计初衷。后来随着磁盘技术的不断发展,单个磁盘容量不断增大,构建RAID的目的已不限于构建一个大容量磁盘,而是利用并行访问技术和数据编码方案来分别提高磁盘的读写性能和数据安全性。 磁盘阵列的全称是独立冗余磁盘阵列,最初是由美国加利福尼亚大学伯克利分校于1987年提出的,它将两个或两个以上单独的物理磁盘以不同的方式组合成一个逻辑盘组。 RAID 技术的优势主要体现在三方面。 (1) 将多个磁盘组合成一个逻辑盘组,以提供更大容量的存储。 (2) 将数据分割成数据块,由多个磁盘同时进行数据块的写入/读出,以提高访问速度。 (3) 通过数据镜像或奇偶校验提供数据冗余保护,以提高数据安全性。 实现RAID主要有两种方式: 软件RAID和硬件 RAID。 (1) 基于软件的RAID技术。 通过在主机操作系统上安装相关软件实现,在操作系统底层运行 RAID程序,将识别到的多个物理磁盘按一定的RAID策略虚拟成逻辑磁盘; 然后将这个逻辑磁盘映射给磁盘管理器,由磁盘管理器对其进行格式化。上层应用可以透明地访问格式化后的逻辑磁盘,察觉不到逻辑磁盘是由多个物理磁盘构成的。上述所有操作都是依赖于主机处理器实现的,软件RAID会占用主机CPU资源和内存空间,因此,低速CPU可能无法实施,软件RAID通常用于企业级服务器。但是,软件RAID具有成本低、配置灵活、管理方便等优势。 (2) 基于硬件的RAID技术。 通过独立硬件来实现RAID功能,包括采用集成RAID芯片的SCSI适配卡(即 RAID卡)或集成RAID芯片的磁盘控制器(即RAID控制器)。RAID 适配卡和 RAID 控制器都拥有自己独立的控制处理器、I/O处理芯片、存储器和RAID芯片。硬件 RAID采用专门的RAID芯片来实现RAID功能,不再依赖于主机CPU和内存。相比软件RAID,硬件RAID不但释放了主机CPU压力,提高了性能,而且操作系统也可以安装在RAID虚拟磁盘之上,能够进行相应的冗余保护。 1. RAID中的关键技术 RAID技术除了可以提供大容量的存储空间,还可以提高存储性能和数据安全性。那么它如何能在提高读写性能的同时保证数据安全性呢?主要原因在于RAID采用了数据条带化这一高效数据组织方式以及奇偶校验这一数据冗余策略。 (1) 镜像。 镜像是一种冗余技术,为磁盘提供了保护功能,以防止磁盘发生故障而造成数据丢失。对于RAID而言,采用镜像技术将会同时在阵列中产生两个完全相同的数据副本,分布在两个不同的磁盘驱动器组中。镜像提供了完全的数据冗余能力,当一个数据副本失效不可用时,外部系统仍可正常访问另一个副本,不会对应用系统的运行和性能产生影响。此外,镜像不需要额外的计算和校验,用于修复故障非常快,直接复制即可。镜像技术可以从多个副本并发读取数据,提供了更高的读取性能,但不能并行写数据,写多个副本时会导致一定的 I/O 性能降低。 (2) 数据条带。 RAID引入了条带的概念,如图3.3所示。条带单元(Stripe Unit)是指磁盘中单个或者多个连续的扇区的集合,是单块磁盘上进行一次数据读写的最小单元。条带(Stripe)是同一磁盘阵列中多个磁盘驱动器上相同“位置”的条带单元的集合,条带单元是组成条带的元素。条带宽度是指在一个条带中数据成员盘的个数,条带深度则是指一个条带单元的容量大小。 图3.3数据组织方式 通过对磁盘上的数据进行条带化,实现对数据成块存取,可以增强访问连续性,有效减少磁盘的机械寻道时间,提高数据存取速度。此外,通过对磁盘上的数据进行条带化,将连续的数据分散到多个磁盘上存取,实现同一阵列中多块磁盘同时进行存取数据,提高了数据存取效率(即访问并行性)。并行操作可以充分利用总线的带宽,显著提高磁盘整体存取性能。 因为采用了数据条带化组织方式,使得RAID 组中多个物理磁盘可以并行或并发地响应主机的I/O请求,进而达到提升性能的目的。这里的I/O是输入(Input)和输出(Output)的缩写,输入和输出分别对应数据的写和读操作。并行是指多个物理磁盘同时响应一个I/O请求的执行方式,而并发则是指多个物理磁盘一对一同时响应多个I/O请求的执行方式。 磁盘存储的性能瓶颈在于磁头寻道定位,它是一种慢速机械运动,无法与高速的CPU匹配。再者,单个磁盘驱动器性能存在物理极限,I/O性能非常有限。RAID由多块磁盘组成,数据条带技术将数据以块的方式分布存储在多个磁盘中,从而可以对数据进行并发处理。这样写入和读取数据即可在多个磁盘中同时进行,并发产生非常高的聚合I/O,有效地提高整体I/O性能,且具有良好的线性扩展性。这在对大容量数据进行处理时效果尤其显著,如果不分块,则数据只能先按顺序存储在磁盘阵列的磁盘中,需要时再按顺序读取。而通过条带技术,可获得数倍于顺序访问的性能提升。 (3) 数据校验。 RAID通过镜像和奇偶校验的方式对磁盘数据进行冗余保护。镜像是指利用冗余的磁盘保存数据的副本,一个数据盘对应一个镜像备份盘; 奇偶校验则是指用户数据通过奇偶校验算法计算出奇偶校验码,并将其保存于额外的存储空间。奇偶校验采用的是异或运算(运算符为+)算法。奇偶校验具体过程如图3.4所示,00=0,01=1,10=1,11=0,即运算符两边数据相同则为假(等于0),相异则为真(等于1)。 图3.4数据奇偶校验 通过镜像或奇偶校验方式,可以实现对数据的冗余保护。当RAID 中某个磁盘数据失效时,可以利用镜像盘或奇偶校验信息对该磁盘上的数据进行修复,从而提高了数据的可靠性。 镜像具有安全性高、读取性能高的特点,但冗余开销太大。数据条带通过并发性大幅提高了性能,但未考虑数据安全性、可靠性。数据校验是一种冗余技术,它以校验数据提供数据的安全性,可以检测数据错误,并在能力允许的前提下进行数据重构。相对于镜像,数据校验大幅缩减了冗余开销,用较小的代价换取了极佳的数据完整性和可靠性。数据条带技术提供了性能,数据校验提供了数据安全性,不同等级的RAID往往同时结合使用这两种技术。 采用数据校验时,RAID要在写入数据的同时进行校验计算,并将得到的校验数据存储在RAID成员磁盘中。校验数据可以集中保存在某个磁盘或分散存储在多个磁盘中,校验数据也可以分块,不同RAID等级的实现各不相同。当其中一部分数据出错时,就可以对剩余数据和校验数据进行反校验计算以重建丢失的数据。相对于镜像技术而言,校验技术节省了大量开销,但由于每次数据读写都要进行大量的校验运算,因此对计算机的运算速度要求很高,必须使用硬件RAID控制器。在数据重建恢复方面,校验技术比镜像技术复杂得多且速度慢得多。 图3.5RAID0技术结构示意图 2. 常见的RAID类型 (1) RAID0。 RAID0会把连续的数据分散到多个磁盘中进行存取,系统有数据请求时可以被多个磁盘并行执行,每个磁盘执行属于自己的那一部分数据请求。如果要做RAID0,则一台服务器至少需要两块硬盘,其读写速度是一块硬盘的两倍。如果有N块硬盘,则其读写速度是一块硬盘的N倍。虽然RAID0的读写速度可以提高,但是由于没有数据备份功能,因此安全性会低很多。如图3.5所示,为RAID0技术结构示意图。 RAID0技术的优缺点分别如下。 优点: 读写性能好,存储数据被分割成N(成员盘数)部分,分别存储在N个磁盘上,理论上逻辑磁盘的读写性能是单块磁盘的N倍,实际容量等于阵列中最小磁盘容量的N倍; 充分利用I/O总线性能,使其带宽翻倍,读写速度翻倍; 充分利用磁盘空间,利用率为100%。 缺点: 安全性低,任何一块磁盘发生故障,数据都无法恢复,甚至可能导致整个RAID上的数据丢失; 不提供数据冗余; 无数据校验,无法保证数据的正确性; 存在单点故障。 应用场景: 对数据完整性要求不高的场景,如日志存储、个人娱乐; 对读写效率要求高,而对安全性能要求不高的场景,如图像工作站。 图3.6RAID1技术结构示意图 (2) RAID1。 RAID1会通过磁盘数据镜像实现数据冗余,在成对的独立磁盘中产生互为备份的数据。当原始数据繁忙时,可直接从镜像副本中读取数据。同样地,要做RAID1至少需要两块硬盘,当读取数据时,其中一块硬盘会被读取,另一块硬盘会被用作备份。其数据安全性较高,但是磁盘空间利用率较低,只有50%。如图3.6所示,为RAID1技术结构示意图。 RAID1技术的优缺点如下。 优点: 安全性很高,数据双倍存储,N-1个磁盘作为镜像盘,允许N-1个磁盘故障,当一个磁盘受损时,换上一个新磁盘替代原磁盘即可自动恢复数据和继续使用; 提供了良好的读取性能。 缺点: 磁盘读写性能一般且空间利用率低,存储速度与单块磁盘相同,阵列实际容量等于N个磁盘中最小磁盘的容量,成本高; 无数据校验。 应用场景: 比较适用于安全性要求高的应用,存放重要数据的场景,如服务器、数据存储领域。 (3) RAID3。 RAID3是把数据分成多个“块”,按照一定的容错算法,存放在N+1个硬盘上,实际数据占用的有效空间为N个硬盘的空间总和,而第N+1个硬盘上存储的数据是校验容错信息,当这N+1个硬盘中的其中一个硬盘出现故障时,从其他N个硬盘中的数据也可以恢复原始数据,这样,仅使用这N个硬盘也可以带伤继续工作(如采集和回放素材),当更换一个新硬盘后,系统可以重新恢复完整的校验容错信息。由于在一个硬盘阵列中,多于一个硬盘同时出现故障率的概率很小,所以一般情况下,使用RAID3,安全性是可以得到保障的,如图3.7所示。RAID3存在的最大的一个不足,同时也是导致RAID3很少被采用的原因就是校验盘很容易成为整个系统的瓶颈。RAID3会把数据写入操作分散到多个硬盘上进行,然而不管是向哪一个数据盘写入数据,都需要同时重写校验盘中的相关信息。因此,对于那些经常需要执行大量写入操作的应用来说,校验盘的负载将会很大,无法满足程序的运行速度,从而导致整个RAID系统性能的下降。鉴于这种原因,RAID3更加适合应用于那些写入操作较少,读取操作较多的应用环境,如数据库和Web服务器等。 图3.7RAID3技术结构示意图 RAID3技术的优缺点如下。 优点: 读性能非常好且安全性较高,和RAID0一样从多个磁盘条带并行读取数据,N块盘的RAID3读性能与N-1块盘的RAID0的不相上下,由于RAID3有校验数据,当N个磁盘中的其中一个磁盘出现故障时,可以根据其他N-1个磁盘中的数据恢复出故障盘上的数据,且具有容错能力; 并行I/O传输,顺序读性能较高。 缺点: 写性能不好,RAID3支持顺序业务的并行写操作,却不支持随机业务的并发写操作,因为校验数据统一存放在检验盘上,写性能受到校验盘的限制,校验盘成为性能瓶颈; 每次读写牵动整个组,每次只能完成一次I/O 传输。 应用场景: 比较适用于连续数据写、安全性要求高的应用场景,如视频编辑、图像编辑、流媒体服务器、大型数据库等。 (4) RAID5。 RAID5应该是目前最常见的RAID等级,具备很好的扩展性。当阵列磁盘数量增加时,并行操作的能力随之增加,可支持更多的磁盘,从而拥有更高的容量及更高的性能。RAID5的磁盘可同时存储数据和校验数据,数据块和对应的校验信息保存在不同的磁盘中,当一个数据盘损坏时,系统可以根据同一条带的其他数据块和对应的校验数据来重建损坏的数据。与其他RAID等级一样,重建数据时,RAID5 的性能会受到较大的影响。 RAID5兼顾了存储性能、数据安全和存储成本等各方面因素,基本上可以满足大部分的存储应用需求,数据中心大多采用它作为应用数据的保护方案。RAID0大幅提升了设备的读写性能,但不具备容错能力; RAID1虽然十分注重数据安全,但是磁盘利用率太低。RAID5可以理解为RAID0和RAID1的折中方案,是目前综合性能最好的数据保护解决方案,一般而言,中小企业会采用RAID5,大企业会采用RAID10。如图3.8所示,为RAID5技术结构示意图。 图3.8RAID5技术结构示意图 RAID5技术的优缺点如下。 优点: 存储性能较好、数据安全性高,是目前综合性能最佳的数据保护解决方案。RAID5把校验数据分散在了不同的数据盘上,避免了RAID3中写性能受到校验盘限制的问题,4盘或以上的RAID5支持数据的并行/并发读写操作; 有校验机制; 磁盘空间利用率高。 缺点: 写消耗太大,一次写操作包含写数据块、读取同条带的数据块、计算校验值、写入校验值等多个操作,对写性能有一定的影响; 磁盘越多,安全性能越差。 应用场景: 适用于随机数据存储、安全性要求高的应用场景,如金融、数据库、存储、邮件服务器、文件服务器等。 (5) RAID6。 RAID6技术是在RAID5基础上,为了进一步加强数据保护而设计的一种RAID方式,实际上是一种扩展RAID5等级。与RAID5的不同之处是除了每个硬盘上都有同级数据XOR校验区外,还有一个针对每个数据块的XOR校验区。当然,当前盘数据块的校验数据不可能存在当前盘而是交错存储的,如图3.9所示。这样一来,等于每个数据块有了两个校验保护屏障(一个是分层校验,一个是总体校验),因此RAID6的数据冗余性能相当好。但是,由于增加了一个校验,所以写入的效率较RAID5差,而且控制系统的设计也更为复杂,第二块的校验区也减少了有效存储空间。 图3.9RAID6技术结构示意图 RAID6技术的优缺点如下。 优点: RAID6是在RAID5的基础上为了加强数据保护而设计的,可允许损坏两块硬盘,安全性非常高,同时读写性能较好。当两个磁盘同时失效时,RAID6阵列仍能够继续工作,并通过求解二元方程来重建两个磁盘上的数据。RAID6继承了RAID3/RAID5的读写特性,读性能非常好,有更高的容错能力。 缺点: 它有两个校验数据,写操作消耗比RAID3/RAID5更大,并且设计和实施相对复杂,性能提升方面不明显,写入速度很慢,成本更高。 应用场景: 对数据安全性要求高、性能要求不高的场景,如视频点播业务、视频监控业务等。 (6) RAID01。 RAID01是先做条带化再做镜像,本质是对物理磁盘实现镜像; 而RAID10是先做镜像再做条带化,本质是对虚拟磁盘实现镜像。在相同的配置下,RAID01比RAID10具有更好的容错能力。 RAID01的数据将同时写入两个磁盘阵列中,如果其中一个阵列损坏,则其仍可继续工作,在保证数据安全性的同时提高了性能。RAID01和RAID10内部都含有RAID1模式,因此整体磁盘利用率仅为50%。如图3.10所示,为RAID01技术结构示意图。 图3.10RAID01技术结构示意图 RAID01技术的优缺点如下。 优点: 具有与RAID1一样的容错能力,与RAID0一样的高I/O宽带,提供了较高的I/O性能; 有数据冗余; 无单点故障。 缺点: 重构粒度太大,存储空间利用率低。RAID01对一个RAID0子组进行整体的镜像备份,子组内一块盘失效,将引起整个子组磁盘进行重构; 此外,RAID01内部都采用RAID1模式,因此整体磁盘利用率均仅为50%,成本稍高; 安全性能比RAID10差。 应用场景: 特别适用于既有大量数据需要存取,又对数据安全性要求严格的领域,如银行、金融、商业超市、仓储库房、档案管理等。 (7) RAID10。 如图3.11所示,为RAID10技术结构示意图。 图3.11RAID10技术结构示意图 RAID10技术的优缺点如下。 优点: 和RAID01一样,具有与RAID1一样的容错能力,与RAID0一样也具有较高的I/O宽带; 此外,RAID10利用多个RAID1子组作RAID0,子组内一块磁盘失效,可以利用其子组内镜像盘进行单盘快速重构; RAID10的读取性能优于RAID01; 提供了较高的I/O性能; 有数据冗余; 无单点故障; 安全性能高。 缺点: 磁盘利用率只有50%,成本稍高。 应用场景: 特别适用于既有大量数据需要存取,又对数据安全性要求严格的领域,如银行、金融、商业超市、仓储库房、档案管理等。 (8) RAID50。 RAID50具有RAID5和RAID0的共同特性。它由两组RAID5磁盘组成(其中,每组最少有3个磁盘),每一组都使用了分布式奇偶位; 而两组RAID5磁盘再组建成RAID0,实现跨磁盘数据读取。RAID50提供了可靠的数据存储和优秀的整体性能,并支持更大的卷尺寸。即使两个物理磁盘(每个阵列中的一个)发生故障,数据也可以顺利恢复。RAID50最少需要6个磁盘,其适用于高可靠性存储、高读取速度、高数据传输性能的应用场景,包括事务处理和有许多用户存取小文件的办公应用程序。如图3.12所示为RAID50技术结构示意图。 图3.12RAID50技术结构示意图 RAID50技术的优缺点如下。 优点: 可靠的数据存储和优秀的整体性能,即使两个位于不同子组的物理磁盘发生故障,数据也可以顺利恢复过来。此外,相对于同数量盘的RAID5而言,由于RAID50校验数据位于RAID5子磁盘组上,重建速度也有很大提高。特别是各RAID5子磁盘组采用条带化方式进行存储,写操作消耗更小,具备更快的数据读取速率。 缺点: 磁盘故障时影响阵列整体性能,故障后重建信息的时间也比镜像配置情况下要长。 应用场景: 适用于随机数据存储、安全性要求高、并发能力要求高的应用场景,如邮件服务器、WWW服务器等。 3. RAID容量计算 RAID0: N块盘组成,逻辑容量为N块盘容量之和。 RAID1: 2N块盘组成,逻辑容量为N块盘容量。 RAID3: N块盘组成,逻辑容量为N-1块盘容量。 RAID5: N块盘组成,逻辑容量为N-1块盘容量之和。 RAID6: N块盘组成,逻辑容量为N-2块盘容量之和。 RAID10: 2N块盘组成,逻辑容量为N块盘容量之和。 RAID50: 假设每个RAID5由N块盘组成,共有M个RAID5组成该RAID50,则逻辑容量为(N-1)×M块盘容量之和。 4. 常用RAID级别的比较 理想的RAID类型,或者是满足用户所有需求的RAID类型并不存在。用户选择RAID类型时,应根据实际应用需求,综合读写速度、安全性和成本进行考虑。值得注意的是,从理论上而言,磁盘阵列中(RAID1除外)成员盘越多性能越好。但在实际应用中,随着RAID组磁盘数变多,磁盘失效次数也会相应增加。因此,每个RAID组中不建议包含太多数量的物理磁盘,常用RAID级别的技术特点比较如表3.1所示。 表3.1常用RAID级别的技术特点比较 RAID级别对比项RAID0RAID1RAID3RAID5RAID6RAID10/01RAID50 容错性无有有有有有有 冗余类型无镜像有奇偶校验有奇偶校验有奇偶校验镜像有奇偶校验 热备盘选项无有有有有有有 读性能高中高高高中高 随机写性能高低低最低 低中中 连续写性能高低中中低中中 最小磁盘数2块2块3块3块4块4块6块 3.2.3RAID数据保护 RAID 通过使用多磁盘并行存取数据来大幅提高数据吞吐率; 另外,通过数据校验,RAID可以提供容错功能,提高存储数据的可用性。目前,RAID已成为保障存储性能和数据安全性的一项基本技术。 1. 热备盘 热备(Hot Spare)是指当RAID组中某个磁盘失效时,在不干扰当前RAID系统正常工作的情况下,用一个正常的备用磁盘顶替失效磁盘。 热备需要通过配置热备盘来实现,热备盘是指一个正常的、可以用来顶替 RAID组失效磁盘的备用磁盘,可分为全局热备盘和局部热备盘。全局热备盘是指可以被不同RAID组共用的热备盘,可以代替任何磁盘组中的任何失效磁盘; 局部热备盘是指仅被某一特定的RAID组使用的热备盘,这个特定组以外的其他RAID组里出现磁盘失效,局部热备盘不会被投入使用。管理员如何配置热备磁盘?热备盘需要几块磁盘?这些问题是根据具体情况而定的。假设目前有4个不同的RAID组,正常情况下,每个RAID组都应该配置一个自己的局部热备盘,当一个磁盘失效时,各自都有一个备用磁盘可用。但在磁盘数量不足的情况下,可以为4个不同的RAID组配置一个全局热备盘,如果同一时间只有一个磁盘发生故障,对4个RAID组来说,一块全局热备盘也能有效地防止数据丢失。 通常来说,在创建 RAID组时要求尽量使用同一厂商的同一型号磁盘,保持磁盘的容量、接口、速率等一致,这样有助于避免短板效应,否则RAID组工作时,各个成员磁盘的可用容量、读写性能、接口速率均以最低配置的磁盘为准,造成性能和容量的无谓浪费。因此,选择热备盘时,要求热备盘的容量大于或等于失效磁盘的容量,建议热备盘类型与失效RAID组中的磁盘类型相同。 2. 预拷贝 预拷贝是指系统通过监控发现 RAID 组中某成员盘即将发生故障时,将即将故障成员盘中的数据提前拷贝到热备盘中。预拷贝是磁盘阵列的一种数据保护方式,能有效降低数据丢失风险,大大减少重构事件发生的概率,提高系统的可靠性。 如图3.13所示,预拷贝过程主要包括以下三个步骤。 (1) 正常状态时,实时监控磁盘状态。 (2) 当某个磁盘疑似出现故障时,将该盘上的数据拷贝到热备盘上。 (3) 拷贝完成后,若有新盘替换故障盘时,再将数据迁移回新盘上。 图3.13磁盘预拷贝技术 预拷贝技术的应用前提是系统能检测到即将故障的磁盘,并且系统中配置有热备盘。对于存储设备来说,预拷贝非常有效。大多数企业级磁盘设备都配有一个名为SMART的工具,负责磁盘自我监测、分析和报告。具体地,SMART 工具不断从磁盘上的各个传感器收集信息,并把信息保存在磁盘的系统保留区。利用这个工具可以监视磁盘的健康状况,包括检查磁盘的旋转速度、温度、通电次数、通电数据累计、写错误率等,因此,配有SMART工具的磁盘也被称为智能磁盘。系统会实时从智能磁盘的SMART 信息中读取磁盘的状态信息,当发现磁盘错误统计超过设定的阈值后,立即将数据从疑似故障的磁盘中拷贝到热备盘中,同时向管理人员报警,提醒更换疑似故障的磁盘。 3. 失效重构 重构是指当RAID组中某个磁盘发生故障时,根据RAID中的奇偶校验算法或镜像策略,利用其他正常成员盘的数据,重新生成故障磁盘数据的过程。重构内容包括用户数据和校验数据,最终将这些数据写入热备盘或者替换的新磁盘上。 假设磁盘0、磁盘1和磁盘2组成了一个RAID3,其中,磁盘2为检验盘,磁盘3为热备盘,如图3.14所示。如果磁盘0由于某种原因导致盘发生故障,数据块D0、D2、D4丢失,那么磁盘控制器就可以利用磁盘1上的用户数据和磁盘2上的检验数据进行异或运算,重新构造出磁盘0中的数据块D0、D2、D4,并写入热备盘中,待新盘替换故障盘之后,再将热备盘中的数据复制回新盘。当然,如果系统没有设置热备盘,则可以用新盘替换故障盘,直接将重构好的数据写入新盘中。 图3.14数据重构 在正常工作情况下,RAID组中出现成员磁盘失效时就会进入降级状态并触发重构。成功触发重构需要具备如下三个前提。 (1) 阵列中有成员盘故障或数据失效。 (2) 阵列中配置有热备盘且没有被其他RAID组占用,或者新盘替换了故障盘。 (3) RAID级别应配置成RAID1、RAID3、RIAD5、RAID6、RAID10或RAID50等冗余阵列。 如果要保证阵列可以继续工作,不中断上层业务,那么重构过程不能影响 RAID 组进行读写操作,否则需要暂停业务。 磁盘预拷贝技术和失效重构存在一些差异。最大的区别在于: 预拷贝是在数据失效之前将其备份到热备盘里,而重构是在数据失效之后利用相应算法进行数据恢复,前者动作在磁盘故障之前,后者动作在磁盘故障之后。通常情况下,重构需要更长的时间和更多的计算资源,相比而言,磁盘预拷贝技术具备低风险、高效率等优势。然而,不是所有的磁盘故障都能事先检测到的,所以不是任何情况下都可以使用预拷贝技术,在这种情况下,数据重构技术就显得非常重要。 如图3.15所示,磁盘预拷贝技术只是两个磁盘之间单纯的数据拷贝过程,速度快且不涉及各种校验计算,也无须用到其他正常成员盘中的数据,上次业务不会中断。而重构过程中要涉及RAID中的多个成员盘,大量数据读写易导致磁盘损坏且占用后端带宽,各种校验计算需要时间较长,影响系统性能,可能会导致业务中断。 图3.15磁盘预拷贝技术和重构的差异 磁盘预拷贝技术可以充分利用从检测到磁盘即将失效至磁盘真正失效的这段时间,将数据拷贝到热备盘中,从而降低数据丢失的风险。在整个预拷贝过程中,RAID组处于正常状态,所有成员盘均处于可用状态,而且RAID组的用户数据和检验数据都是完整的,用户数据无丢失的风险,可以正常地响应主机的I/O请求。而在重构过程中,RAID组处于降级状态,RAID组的用户数据或校验数据是不完整的,用户数据处于高风险状态。虽然重构过程中也可以响应主机下发的I/O请求,但由于故障盘之外的成员盘也需参与重构,响应性能将大大降低。如果重构期间再次出现其他磁盘故障,对于RAID3、RAID5等单重冗余保护阵列,用户数据就会丢失,即使是RAID6和使用镜像技术的多盘RAID1这样的拥有多重冗余保护的阵列,一旦故障磁盘数超过冗余磁盘数,用户数据同样会丢失。 4. RAID状态 RAID技术将多个物理磁盘组合在一起形成一个RAID组,RAID组需要维护自身的状态,如图3.16所示,RAID组存在创建、正常工作、降级和失效4种状态。 图3.16RAID状态 首先系统按用户配置将若干物理磁盘组建成RAID组,当RAID组创建成功后,所有磁盘都正常工作时,RAID组就进入了正常工作状态。正常工作状态下如有一定数量的磁盘掉线或者故障,但整个RAID组仍然能够保证数据是可用的,RAID组就进入了降级状态。在降级状态下,对故障的磁盘进行更换或者使用系统中的热备盘,然后再触发数据重构,通过重构将数据恢复到新盘或热备盘中,成功恢复丢失数据之后,RAID组将重新进入正常工作状态。但如果在重构过程中发生新的磁盘故障,且故障磁盘数超过该RAID类型所支持的冗余磁盘数,就会造成数据永久丢失,此时整个RAID组失效。降级状态下 RAID组能否完成数据重构,取决于使用的RAID类型、磁盘故障的数量和替换的磁盘的可用性。 3.2.4LUN虚拟化 RAID 技术的设计初衷是将几块小容量廉价的磁盘组合成一个大的逻辑磁盘给大型计算机使用。随着磁盘技术的不断发展,单个磁盘的容量不断增大,组建RAID的目的就不限于构建一个大容量的磁盘,而是利用并行访问技术和数据编码方案来分别提高磁盘的读写性能和数据安全性。目前,单个磁盘容量已经较大,多个磁盘组建的RAID磁盘组容量则更大,此时,大容量的一个磁盘阵列,是映射给一台主机使用还是共享给多台主机?如果把整个 RAID 组作为一个逻辑单元映射给一台主机使用,就有可能造成存储资源的浪费,因为不是所有的主机都需要如此大的存储空间。如果通过增减阵列成员磁盘的方式适应主机存储空间的需求,那么会造成以下两种消极影响。 (1) 影响阵列整体的存储性能,因为磁盘数目过少性能将得不到很好的提升,磁盘数目过多故障率会提高,失效重构会影响用户响应性能。 (2) 影响存储空间的利用率,增减磁盘意味着存储容量调整粒度是单个磁盘容量,主机可能只使用一小部分空间,造成存储空间的闲置和浪费。 为了更好地提高阵列存储性能和存储空间利用率,设计者提出了一种 RAID组进行细粒度切分管理方案,即LUN虚拟化。具体地,将一个RAID组划分成多个逻辑单元,并分别映射给多台主机使用; 同时,一个主机也可以使用多个逻辑单元。 逻辑单元号(Logical Unit Number,LUN)本身用于标记逻辑单元,后来人们系统地用LUN来指代逻辑单元。如图3.17所示,多个硬盘既可以构成一个LUN,也可以创建出多个LUN。 图3.17RAID和LUN的关系 若干磁盘组成一个RAID组,从逻辑的角度,多个磁盘组成了一个大物理卷,物理卷按照指定容量创建一个或多个LUN,LUN可以灵活地映射给主机使用。 设定好相关映射之后,主机可以看到分配给它的磁盘,即RAID组中划分出的LUN。此时主机便可以进行分区、格式化等常规磁盘的操作。在主机看来,这个LUN和一个普通的物理磁盘没有什么区别,即LUN对主机是透明的,主机无须知道这个LUN是来自一块普通的物理磁盘还是一个磁盘阵列,也无须知道磁盘阵列的具体配置(如磁盘数量、RAID级别)。 为了更好地使用LUN,操作系统通常采用卷管理器来管理存储空间。为了更好地理解逻辑卷,这里先解释几个相关概念。 逻辑卷管理器(Logical Volume Manager,LVM): 位于操作系统和存储设备之间,是将操作系统识别到的磁盘进行组合再分配的软件。LVM 屏蔽了存储设备映射给主机的物理磁盘或逻辑磁盘的复杂性,通过将这些磁盘做成卷,以逻辑卷的方式灵活地呈现给操作系统磁盘管理器。 物理卷(Physical Volume,PV): 存储设备映射给主机使用的LUN或物理磁盘,都将被操作系统识别为一个物理磁盘,这个物理磁盘在卷管理器层面上被称为物理卷。创建PV时,可以把整个磁盘当成一个PV,也可以将磁盘的一部分创建为一个PV。 卷组(Volume Group,VG): 多个PV首尾相连,组成了一个逻辑上连续编址的卷组,VG的形成相当于屏蔽了底层多个物理磁盘的差异,向上可以提供一个统一管理的磁盘资源池,实现存储空间的动态分配。 逻辑卷(Logical Volume,LV): 是逻辑卷管理器对存储映射给主机的LUN、物理磁盘或物理磁盘分区进行整合,再划分出来的一个虚拟磁盘分区。LV是在VG中创建的最终可供操作系统使用的卷。 如图3.18所示,若干磁盘组成了一个RAID组,在RAID组中按照指定容量创建一个或多个LUN映射给主机使用,LUN在LVM上被称为PV,多个物理卷逻辑上连续编址形成了一个VG,在这个卷组上再划分出了一个个LV。逻辑卷将被提供给操作系统的磁盘管理器进行分区、格式化等。 图3.18RAID组与逻辑卷的关系 对于操作系统而言,逻辑卷就像一个物理磁盘,可以像操作本地磁盘分区一样来管理逻辑卷,比如在逻辑卷之上创建一个文件系统,逻辑卷的实际组成对操作系统是透明的。逻辑卷可以由不连续的物理分区组成,也可以跨越多个物理卷。相对于将LUN映射给主机直接安装文件系统进行使用,在逻辑卷上建立文件系统对存储空间进行管理具有以下三方面优势。 (1) 存储容量。逻辑卷可以跨越物理磁盘甚至是RAID卡,可随意扩容,而LUN划分好之后就无法增减容量,除非删除所有数据进行重新划分,过程复杂且成本高。 (2) 访问性能。逻辑卷可以通过配置来为应用程序提供优化的性能。 (3) 数据安全性。逻辑卷可以通过配置内部镜像来提高数据的安全性。 3.2.5磁盘及磁盘分区 磁盘根据使用方式可以分为两类: 基本磁盘和动态磁盘。按照磁盘的分区机制可分为 MBR磁盘和GPT磁盘。 1. 基本磁盘 基本磁盘只允许将同一硬盘上的连续空间划分为一个分区。人们平时使用的磁盘类型一般都是基本磁盘。在基本磁盘上最多只能建立4个分区,并且扩展分区数量最多也只能1个,因此1个硬盘最多可以有4个主分区或者3个主分区加1个扩展分区。如果想在一个硬盘上建立更多的分区,需要创建扩展分区,然后在扩展分区上划分逻辑分区。 2. 动态磁盘 动态磁盘上没有分区的概念,它以“卷”命名。卷和分区差别很大: 同一分区只能存在于一个物理磁盘上,而同一个卷却可以跨越多达32个物理磁盘。基于此,服务器可以拥有大容量存储的卷(跨区卷),这在服务器上是非常实用的功能。卷还可以提供多种卷集(Volume),卷集分为简单卷、跨区卷、带区卷、镜像卷、RAID5卷。基本磁盘和动态磁盘相比,有以下区别。 (1) 卷集或分区的数量。动态磁盘在一个硬盘上可创建的卷集个数没有限制。而基本磁盘在一个硬盘上最多只能分4个主分区。 (2) 磁盘空间管理。动态磁盘可以把不同磁盘的分区创建成一个卷集,并且这些分区可以是非邻接的,这样,磁盘空间就是几个磁盘分区空间的总和。基本磁盘则不能跨硬盘分区,并且要求分区必须是连续的空间,因此,每个分区的容量最大只能是单个硬盘的最大容量,存取速度与单个硬盘相比没有提升。 (3) 磁盘容量大小管理。动态磁盘允许在不重新启动机器的情况下调整动态磁盘大小,而且不会丢失和损坏已有的数据。而基本磁盘的分区一旦创建,就无法更改容量大小,除非借助于第三方磁盘工具软件,如PQ Magic。 (4) 磁盘配置信息管理和容错。动态磁盘将磁盘配置信息存放在磁盘中,如果是RAID容错系统,这些信息将会被复制到其他动态磁盘上,如果某个硬盘损坏,系统将自动调用另一个硬盘的数据,确保数据的有效性。而基本磁盘将配置信息存放在引导区,没有容错功能。 基本磁盘转换为动态磁盘可以直接进行,但是该过程是不可逆的。若要转回基本磁盘,只有将数据全部拷出,然后删除硬盘所有分区后才能实现动态磁盘转为基本磁盘。 3. MBR磁盘 主引导记录(Master Boot Record,MBR),又称为主引导扇区,仅包含一个64B的硬盘分区表。由于每个分区信息需要16B,所以对于采用MBR 型分区结构的硬盘,最多只能识别4个主要分区(Primary Partition)。也就是说,要想在一个采用此种分区结构的硬盘上得到4个以上的主要分区是不可能的。如果要得到4个以上的分区,就需要采用前面所提的扩展分区了。扩展分区也是主要分区的一种,但它与主分区的不同在于理论上扩展区可以划分无数个逻辑分区。另外,最关键的是MBR分区方案无法支持超过2TB容量的磁盘。因为MBR分区用4B存储分区的总扇区数,最大能表示2的32次方的扇区个数,按每扇区512B计算,所以每个分区最大不能超过2TB。如果磁盘容量超过2TB,分区的起始位置就无法表示了。 4. GPT磁盘 GUID分区表类型的磁盘,这种磁盘通常称为GPT磁盘,GPT全称为Globally Unique Identifier Partition Table Format,是一种基于Itanium 计算机中的可扩展固件接口(Extensible Firmware Interface,EFI)使用的磁盘分区架构。与MBR磁盘相比,GPT具有更多的优点,具体如下。 (1) 支持2TB以上的大硬盘。 (2) 每个磁盘的分区数量可以达到128个。 (3) 分区大小支持18PB。 (4) 分区表自带备份。在磁盘的首尾分别保存了一份相同的分区表。其中一份被破坏后,可以通过另一份恢复。 (5) 每个分区可以有一个名称(不同于卷标)。 5. 磁盘分区格式 (1) FAT32。 FAT32是 Windows系统硬盘分区格式的一种,这种格式采用32位的文件分配表,突破了FAT16对每一个分区容量只有2GB的限制,使其对磁盘的管理能力大大增强。由于硬盘生产成本下降,硬盘容量也越来越大,运用FAT32的分区格式后,可以将1个大硬盘定义成1个分区而不必分为几个分区使用,大大方便了对磁盘的管理。但由于FAT32分区内无法存放大于4GB的单个文件,且性能不佳,易产生磁盘碎片。目前已被性能更优异的NTFS分区格式所取代。 (2) NTFS。 NTFS(New Technology File System)是一种能够提供各种FAT版本所不具备的性能,以及安全性、可靠性与先进特性的高级文件系统。例如,NTFS可通过标准事务日志功能与恢复技术确保卷的一致性。即如果系统出现故障,NTFS能够使用日志文件与检查点信息来恢复文件系统的一致性。 (3) ReFS。 ReFS(Resilient File System)称为弹性文件系统,是在Windows 8.1和Server 2012 中新引入的一个文件系统。目前只能应用于存储数据,还不能引导系统,并且在移动媒介上也无法使用。 ReFS与NTFS大部分是兼容的,其主要目的是为了保持较高的稳定性,可以自动验证数据是否损坏,并尽力恢复数据。如果和引入的 Storage Spaces(存储空间)联合使用则可以提供更佳的数据防护,同时对于上亿级别大小文件的处理性能也有所提升。 3.3项目实施 3.3.1基本磁盘的配置与管理 本案例使用在VMware虚拟机上安装的Windows Server 2019操作系统。 视频讲解 1. 磁盘的安装与初始化 (1) 选择相应的虚拟机操作系统,单击右键,在弹出的快捷菜单中选择“设置”选项,弹出“虚拟机设置”对话框,单击“添加”按钮,添加三块60GB磁盘,如图3.19所示。 图3.19“虚拟机设置”对话框 (2) 在Windows Server 2019操作系统中,打开服务器管理器,选择“工具”→“计算机管理”选项,弹出“计算机管理”窗口,选择“存储”→“磁盘管理”选项,如图3.20所示。 图3.20“磁盘管理”选项窗口 (3) 以磁盘0 为例,选择磁盘0,单击鼠标右键,在弹出的快捷菜单中,选择“联机”选项,如图3.21所示。 图3.21“联机”选项 (4) 完成联机设置后,再单击鼠标右键,在弹出的快捷菜单中,选择“初始化磁盘”选项,如图3.22所示,弹出“初始化磁盘”对话框,如图3.23所示,在“初始化磁盘”对话框中,单击“确定”按钮,完成初始化磁盘工作任务,如图3.24所示。 图3.22“初始化磁盘”选项 视频讲解 2. 新建主分区和逻辑分区 在容量为60GB的磁盘0上创建主分区30GB,其余空间划入扩展分区,并分别创建逻辑分区 图3.23“初始化磁盘”对话框 图3.24完成“初始化磁盘” 20GB和10GB,操作过程如下。 (1) 选择磁盘0,单击右键,弹出快捷菜单,如图3.25所示,选择“新建简单卷”选项,弹出“新建简单卷向导”对话框,如图3.26所示,单击“下一步”按钮,弹出“指定卷大小”对话框,如图3.27所示。 图3.25右键属性菜单 图3.26“新建简单卷向导”对话框 图3.27“指定卷大小”对话框 (2) 在“指定卷大小”对话框中,输入简单卷大小,单击“下一步”按钮,弹出“分配驱动器号和路径”对话框,如图3.28所示,单击“下一步”按钮,弹出“格式化分区”对话框,如图3.29所示。 图3.28“分配驱动器号和路径”对话框 图3.29“格式化分区”对话框 (3) 在“格式化分区”对话框中,选择“按下列设置格式化这个卷”单选按钮,单击“下一步”按钮,弹出“正在完成新建简单卷向导”对话框,如图3.30所示,单击“完成”按钮,返回“磁盘管理”窗口,完成磁盘创建主分区和格式化,如图3.31所示。 图3.30“正在完成新建简单卷向导”对话框 图3.31完成磁盘创建主分区和格式化 (4) 创建扩展分区。在Windows Server 2019操作系统图形化页面,是不能直接创建扩展分区的,必须通过命令行窗口去创建,可以使用Diskpart命令来进行管理分区管理。 Diskpart命令是Windows环境下的一个命令,利用Diskpart可实现对硬盘的分区管理,包括创建分区、删除分区、合并(扩展)分区,完全可取代分区魔术师等第三方工具软件,它还有分区魔术师无法实现的功能,如设置动态磁盘、镜像卷等,而且设置分区后不用重启计算机也能生效。这些命令的使用方法可以在Diskpart命令提示符下输入“Help”或者通过网络查询,如果不清楚命令的使用方法,可以使用Help命令进行查看。 建立分区使用的命令顺序及操作解释如下。 List Disk:显示本机的所有磁盘,以便正确操作目标磁盘 Select Disk 0:选择0号磁盘 Clean:清除0号磁盘上的所有分区 Create:Partition Primary Size=512000 创建主分区,容量为:512000MB Active:激活主分区 Format Quick:快速格式化当前分区 Create Partition Extended:创建扩展分区 Create Partition Logical Size=512000:创建逻辑分区一,容量为:512000MB Format Quick:快速格式化当前分区 Create Partition Logical Size=512000:创建逻辑分区二,容量为:512000MB Format Quick:快速格式化当前分区 Create Partition Logical:创建逻辑分区三,大小为剩余的容量 Format Quick:快速格式化当前分区 Exit:退出Diskpart命令环境 Exit:退出命令窗口 打开“命令行提示符”窗口,将磁盘0的剩余空间创建扩展分区,执行命令如下。 C:\Users\Administrator> diskpart DISKPART> select disk 0 DISKPART> create partition extended DISKPART> exit 执行命令结果,如图3.32所示,查看创建扩展分区结果,如图3.33所示。 图3.32命令行“创建扩展分区” 图3.33完成磁盘创建扩展分区 (5) 创建逻辑分区。在扩展分区上,创建逻辑分区,执行命令如下。 DISKPART>list disk DISKPART> select partition logical size=20480 DISKPART> format quick DISKPART> select partition logical size=10240 DISKPART> format quick DISKPART> exit 执行命令结果,如图3.34所示,查看创建逻辑分区结果,如图3.35所示。 图3.34命令行“创建逻辑分区” 图3.35完成磁盘创建逻辑分区 3.3.2动态磁盘的配置与管理 RAID技术产生的初衷主要是为大型服务器提供高端的存储功能和冗余的数据安全。在系统中,RAID被看作是由多个硬盘组成的(最少两块)一个逻辑分区,它通过在多个硬盘上同时存储和读取数据来大幅提高存储系统的数据吞吐量,由于在很多RAID模式中都有较为完备的相互校验/恢复的措施,甚至是直接相互的镜像备份,因此大大提高了RAID系统的容错度,同时也提高了系统的稳定冗余性。RAID与卷的性能比较,如表3.2所示。 表3.2RAID与卷的性能比较 卷种类磁盘数/块可用来存储数据的容量性能(与单一磁盘比较)排错 简单卷1全部不变无 跨区卷2~32全部不变无 带区卷(RAID0)2~32全部读、写都提升许多无 镜像卷(RAID1)2一半不变有 RAID5卷3~32磁盘数-1读提升多、写下降稍多有 视频讲解 1. 简单卷的建立与扩展 将3块60GB磁盘全部安装到存储服务器并进行初始化磁盘。 (1) 将新磁盘进行“联机”和“初始化”,如图3.36所示。 图3.36联机和初始化新磁盘 (2) 将新磁盘转换为“动态磁盘”,在新磁盘的最左边磁盘信息栏,单击鼠标右键,在弹出的快捷菜单中,选择“转换到动态磁盘”选项,如图3.37所示,弹出“转换为动态磁盘”对话框,如图3.38所示。 图3.37“转换到动态磁盘”选项 图3.38“转换为动态磁盘”对话框 (3) 在“转换为动态磁盘”对话框中,选择要转换的磁盘,单击“确定”按钮,完成动态磁盘的创建,选择磁盘0,单击鼠标右键,在弹出的快捷菜单中,选择“新建简单卷”选项,弹出“新建卷向导”对话框,单击“下一步”按钮,输入新建卷的大小,分配一个驱动器号(如E盘),勾选“执行快速格式化”,单击“完成”按钮,完成简单卷的创建。 (4) 简单卷扩展30GB容量。在磁盘0的简单卷中,单击鼠标右键,在弹出的快捷菜单中,选择“扩展卷”选项,如图3.39所示,弹出“扩展卷向导”对话框,如图3.40所示。 图3.39“扩展卷”选项 图3.40“扩展卷向导”对话框 (5) 在“扩展卷向导”对话框中,单击“下一步”按钮,弹出“选择磁盘”对话框,如图3.41所示,在左侧“可用”区域中选择磁盘1,单击“添加”按钮,将磁盘1添加到右侧的“已选的”区域,输入磁盘的大小,单击“下一步”按钮,弹出“完成扩展卷向导”对话框,如图3.42所示。 图3.41“选择磁盘”对话框 图3.42“完成扩展卷向导”对话框 (6) 查看扩展后的磁盘,如图3.43所示,此时打开“文件资源管理器”窗口,可以看到新加卷(E盘),磁盘容量扩展为90GB,如图3.44所示。 图3.43查看扩展容量后的磁盘 图3.44查看磁盘管理器 视频讲解 2. 跨区卷的创建 将3块60GB磁盘全部安装到存储服务器并进行初始化磁盘,将新磁盘进行“联机”和“初始化”,并将磁盘转换为动态磁盘。 (1) 在3块磁盘之间新建150GB的跨区卷。选择磁盘0,单击鼠标右键,在弹出的快捷菜单中,选择“新建跨区卷”选项,弹出“新建跨区卷”对话框,如图3.45所示,单击“下一步”按钮,弹出“选择磁盘”对话框,在左侧“可用”区域中选择磁盘1和磁盘2,单击“添加”按钮,将磁盘1和磁盘2添加到右侧的“已选的”区域,在“选择空间量(MB)”区域中输入“30720”,如图3.46所示。 图3.45“新建跨区卷”对话框 图3.46“选择磁盘”对话框 (2) 在“选择磁盘”对话框中,单击“下一步”按钮,选择分配驱动器号和路径,勾选“执行快速格式化”复选框,单击“完成”按钮,完成跨区卷创建,如图3.47所示,查看跨区卷创建情况,如图3.48所示。 图3.47“正在完成新建跨区卷向导”对话框 图3.48查看跨区卷磁盘 视频讲解 3. 带区卷(RAID0)的创建 将3块60GB磁盘全部安装到存储服务器并进行初始化磁盘,将新磁盘进行“联机”和“初始化”,并将磁盘转换为动态磁盘。 图3.49“新建带区卷”对话框 (1) 分别取3块磁盘的30GB空间创建一个90GB大小的带区卷。选择磁盘0,单击鼠标右键,在弹出的快捷菜单中,选择“新建带区卷”选项,弹出“新建带区卷”对话框,如图3.49所示,单击“下一步”按钮,弹出“选择磁盘”对话框,在左侧“可用”区域中选择磁盘1和磁盘2,单击“添加”按钮,将磁盘1和磁盘2添加到右侧的“已选的”区域,在“选择空间量(MB)”区域中输入“30720”,如图3.50所示。 图3.50“选择磁盘”对话框 (2) 在“选择磁盘”对话框中,单击“下一步”按钮,选择分配驱动器号和路径,勾选“执行快速格式化”复选框,单击“完成”按钮,完成带区卷创建,如图3.51所示,查看带区卷创建情况,如图3.52所示。 图3.51“正在完成新建带区卷向导”对话框 图3.52查看带区卷磁盘 视频讲解 4. 镜像卷(RAID1)的创建 将3块60GB磁盘全部安装到存储服务器并进行初始化磁盘,将新磁盘进行“联机”和“初始化”,并将磁盘转换为动态磁盘。 (1) 分别取两块磁盘的30GB空间创建一个30GB大小的镜像卷。选择磁盘0,单击鼠标右键,在弹出的快捷菜单中选择“新建镜像卷”选项,弹出“新建镜像卷”对话框,如图3.53所示,单击“下一步”按钮,弹出“选择磁盘”对话框,在左侧“可用”区域中选择磁盘1,单击“添加”按钮,将磁盘1添加到右侧的“已选的”区域,在“选择空间量(MB)”区域中输入“30720”,如图3.54所示。 图3.53“新建镜像卷”对话框 图3.54“选择磁盘”对话框 (2) 在“选择磁盘”对话框中,单击“下一步”按钮,选择分配驱动器号和路径,勾选“执行快速格式化”复选框,单击“完成”按钮,完成镜像卷创建,如图3.55所示,查看镜像卷创建情况,如图3.56所示。 图3.55“正在完成新建镜像卷向导”对话框 图3.56查看镜像卷磁盘 视频讲解 5. RAID5卷的创建 将3块60GB磁盘全部安装到存储服务器并进行初始化磁盘,将新磁盘进行“联机”和“初始化”,并将磁盘转换为动态磁盘。 (1) 分别取3块磁盘的30GB空间创建一个60GB大小的RAID5卷。选择磁盘0,单击鼠标右键,在弹出的快捷菜单中,选择“新建RAID5卷”选项,弹出“新建RAID5卷”对话框,如图3.57所示,单击“下一步”按钮,弹出“选择磁盘”对话框,在左侧“可用”区域中选择磁盘1和磁盘2,单击“添加”按钮,将磁盘1和磁盘2添加到右侧的“已选的”区域,在“选择空间量(MB)”区域中输入“30720”,如图3.58所示。 图3.57“新建RAID5卷”对话框 图3.58“选择磁盘”对话框 (2) 在“选择磁盘”对话框中,单击“下一步”按钮,选择分配驱动器号和路径,勾选“执行快速格式化”复选框,单击“完成”按钮,完成RAID5卷创建,如图3.59所示,查看镜像卷创建情况,如图3.60所示。 图3.59“正在完成新建RAID5卷向导”对话框 图3.60查看RAID5卷磁盘 视频讲解 6. RAID5卷的故障修复 为了模拟磁盘故障效果,将磁盘进行移除,操作过程如下。 (1) 现将磁盘2进行移除操作,选择磁盘2,单击鼠标右键,在弹出的快捷菜单中,选择“脱机”选项,此时,RAID5卷中的磁盘所有数据并未丢失,但需要尽快使用新磁盘进行修复,添加一块100GB的磁盘,如图3.61所示。 图3.61RAID5卷的故障 (2) 选择磁盘0,单击鼠标右键,在弹出的快捷菜单中,选择“修复卷”选项,如图3.62所示,弹出“修复RAID5卷”对话框,如图3.63所示,选择磁盘4,单击“确定”按钮,完成RAID5卷的修复,如图3.64所示。 图3.62选择“修复卷”选项 图3.63修复RAID5卷 图3.64RAID5卷修复成功 3.3.3存储池的配置与管理 在服务器上创建存储池,将3块60GB磁盘全部安装到存储服务器并进行初始化磁盘,将新磁盘进行“联机”和“初始化”,并将磁盘设置为基本磁盘。 1. 存储服务器磁盘的池化配置与管理 (1) 打开服务器管理器,选择“文件和存储服务”→“服务器”→“存储池”选项,单击鼠标右键,弹出快捷菜单,如图3.65所示,选择“新建存储池”选项,弹出“新建存储池向导”对话框,如图3.66所示。 (2) 在“新建存储池向导”对话框中,单击“下一步”按钮,弹出“指定存储池名称和子系统”窗口, 图3.65“新建存储池”选项 图3.66“新建存储池向导”对话框 如图3.67所示,输入存储池名称“storagepool01”,单击“下一步”按钮,弹出“选择存储池的物理磁盘”窗口,如图3.68所示。 图3.67“指定存储池名称和子系统”窗口 图3.68“选择存储池的物理磁盘”窗口 (3) 在“选择存储池的物理磁盘”窗口中,单击“下一步”按钮,弹出“确认选择”窗口,如图3.69所示。单击“创建”按钮,弹出“查看结果”窗口,如图3.70所示,单击“关闭”按钮,返回“存储池”列表窗口,如图3.71所示。 图3.69“确认选择”窗口 图3.70“查看结果”窗口 图3.71“存储池”列表窗口 2. 创建简单逻辑磁盘 (1) 在“存储池”列表窗口中,选择相应的存储池,单击鼠标右键,弹出快捷菜单,如图3.72所示,选择“新建虚拟磁盘”选项,弹出“选择存储池”窗口,如图3.73所示。 图3.72“新建虚拟磁盘”选项 图3.73“选择存储池”窗口 (2) 在“选择存储池”窗口中,选择相应的存储池,单击“确定”按钮,弹出“开始之前”窗口,如图3.74所示,单击“下一步”按钮,弹出“指定虚拟磁盘名称”窗口,如图3.75所示。 图3.74“开始之前”窗口 图3.75“指定虚拟磁盘名称”窗口 (3) 在“指定虚拟磁盘名称”窗口中,输入虚拟磁盘名称“simple01”,单击“下一步”按钮,弹出“指定机箱复原”窗口,如图3.76所示,单击“下一步”按钮,弹出“选择存储数据布局”窗口,如图3.77所示。 图3.76“指定机箱复原”窗口 图3.77“选择存储数据布局”窗口 (4) 在“选择存储数据布局”窗口中,在布局区域中,选择Simple选项,单击“下一步”按钮,弹出“指定设置类型”窗口,如图3.78所示,选择“固定”单选按钮,单击“下一步”按钮,弹出“指定虚拟磁盘大小”窗口,如图3.79所示。 图3.78“指定设置类型”窗口 图3.79“指定虚拟磁盘大小”窗口 (5) 在“指定虚拟磁盘大小”窗口中,选择“指定大小”单选按钮,输入虚拟磁盘大小“10GB”,单击“下一步”按钮,弹出“确认选择”窗口,如图3.80所示,单击“创建”按钮,弹出“查看结果”窗口,如图3.81所示。 图3.80“确认选择”窗口 图3.81“查看结果”窗口 (6) 在“查看结果”窗口中,单击“关闭”按钮,弹出“开始之前”窗口,如图3.82所示,单击“下一步”按钮,弹出“选择服务器和磁盘”窗口,如图3.83所示, 图3.82“开始之前”窗口 图3.83“选择服务器和磁盘”窗口 (7) 在“选择服务器和磁盘”窗口中,单击“下一步”按钮,弹出“指定卷大小”窗口,如图3.84所示,单击“下一步”按钮,弹出“分配到驱动器号或文件夹”窗口,如图3.85所示。 图3.84“指定卷大小”窗口 图3.85“分配到驱动器号或文件夹”窗口 (8) 在“分配到驱动器号或文件夹”窗口中,选择相应的驱动器号,单击“下一步”按钮,弹出“选择文件系统设置”窗口,如图3.86所示,单击“下一步”按钮,弹出“确认选择”窗口,如图3.87所示。 图3.86“选择文件系统设置”窗口 图3.87“确认选择”窗口 (9) 在“确认选择”窗口中,单击“创建”按钮,弹出“完成”窗口,如图3.88所示,查看磁盘创建情况,如图3.89所示。 图3.88“完成”窗口 图3.89查看磁盘创建情况 3. 创建镜像逻辑磁盘 在“存储池”列表窗口中,选择相应的存储池,单击鼠标右键,弹出快捷菜单,选择“新建虚拟磁盘”选项,指定虚拟磁盘名称为“mirror01”,选择存储数据布局Mirror,选择“固定”选项,大小为20GB,确认无误后,单击“创建”按钮,如图3.90所示,虚拟镜像逻辑磁盘创建成功之后,查看虚拟镜像磁盘创建情况,如图3.91所示,查看存储池中虚拟磁盘情况,如图3.92所示。 图3.90创建虚拟镜像逻辑磁盘 图3.91查看虚拟镜像磁盘创建情况 图3.92查看存储池中虚拟磁盘情况 4. 逻辑磁盘扩容 当某个虚拟磁盘的空间不足时,可以直接进行在线扩容。 (1) 选择“存储池”窗口中的虚拟磁盘,在需要扩容的虚拟磁盘上单击鼠标右键,在弹出的快捷菜单中,选择“扩展虚拟磁盘”选项,如图3.93所示,弹出“扩展虚拟磁盘”对话框,如图3.94所示。 图3.93“扩展虚拟磁盘”选项 图3.94“扩展虚拟磁盘”对话框 (2) 在“扩展虚拟磁盘”对话框中,单击“确定”按钮,返回“存储池”窗口,选择刚扩容的虚拟磁盘,单击鼠标右键,在弹出的快捷菜单中,选择“属性”选项,弹出“mirror01属性”窗口,可以查看相关属性信息,如图3.95所示,在“磁盘管理”窗口中,可以查看刚扩展的磁盘容量,如图3.96所示。 图3.95“mirror01属性”窗口 图3.96“磁盘管理”窗口 (3) 在“磁盘管理”窗口中,选择磁盘5,执行扩展卷操作,操作成功后,如图3.97所示。 图3.97查看扩容后的磁盘情况 5. RAID10磁盘的创建 添加3块60GB和3块100GB磁盘,创建存储池storagepool01和storagepool02,创建虚拟磁盘mirror01和mirror02,容量大小为30GB,将两个磁盘创建成带区卷。 (1) 创建存储池storagepool01,选择3块60GB的磁盘; 创建存储池storagepool02,选择3块100GB的磁盘,完成存储池创建,如图3.98所示,选择存储池storagepool01,创建虚拟磁盘mirror01,选择Mirror类型,容量大小为30GB,如图3.99所示。 图3.98完成存储池创建 图3.99“确认选择”窗口 (2) 选择存储池storagepool02,新建虚拟磁盘mirror02,选择Mirror类型,容量大小为30GB,如图3.100所示,虚拟磁盘mirror02创建完成,如图3.101所示。 图3.100新建虚拟磁盘mirror02 图3.101创建完成虚拟磁盘mirror02 (3) 虚拟磁盘创建成功之后,在磁盘管理器中,查看刚创建的虚拟磁盘7和磁盘8,如图3.102所示,选择磁盘7和磁盘8,将磁盘转换到动态磁盘,完成动态磁盘的转换,如图3.103所示。 图3.102新建虚拟磁盘7和磁盘8 图3.103转换为动态磁盘 课后习题 1. 选择题 (1) 有4块磁盘,每块容量为500GB,创建RAID5阵列,实际有效容量为()。 A. 2.0TB B. 1.50TB C. 1.0TB D. 500GB (2) 有4块磁盘,每块容量为500GB,创建RAID6阵列,实际有效容量为()。 A. 2.0TB B. 1.50TB C. 1.0TB D. 500GB (3) 有4块磁盘,每块容量为500GB,创建RAID0阵列,实际有效容量为()。 A. 2.0TB B. 1.50TB C. 1.0TB D. 500GB (4) 有4块磁盘,每块容量为500GB,创建RAID10阵列,实际有效容量为()。 A. 2.0TB B. 1.50TB C. 1.0TB D. 500GB (5) 有4块磁盘,每块容量为500GB,创建RAID3阵列,实际有效容量为()。 A. 2.0TB B. 1.50TB C. 1.0TB D. 500GB (6) 创建RAID5至少需要几块磁盘?() A. 2 B. 3 C. 4 D. 5 (7) 创建RAID6至少需要几块磁盘?() A. 2 B. 3 C. 4 D. 5 (8) 创建RAID0至少需要几块磁盘?() A. 2 B. 3 C. 4 D. 5 (9) 创建RAID1至少需要几块磁盘?() A. 2 B. 3 C. 4 D. 5 (10) 创建RAID3至少需要几块磁盘?() A. 2 B. 3 C. 4 D. 5 (11) 创建RAID10至少需要几块磁盘?() A. 2 B. 3 C. 4 D. 5 (12) 创建RAID50至少需要几块磁盘?() A. 3 B. 4 C. 5 D. 6 (13) 直连式存储简称为()。 A. DAS B. NAS C. SAN D. IPSAN (14) 【多选】DAS的优点有()。 A. DAS能实现大容量存储 B. 提高存取性能 C. 实现了应用数据和操作系统的分离 D. 实施简单 (15) 【多选】RAID技术的优势有()。 A. 将多个磁盘组合成一个逻辑盘组,以提供更大容量的存储 B. 将数据分割成数据块,由多个磁盘同时进行数据块的写入/读出,以提高访问速度 C. 存储空间利用率低 D. 通过数据镜像或奇偶校验提供数据冗余保护,以提高数据安全性 (16) 【多选】RAID中的关键技术包括()。 A. 镜像 B. 克隆 C. 数据条带 D. 数据校验 2. 简答题 (1) 简述直连式存储DAS的优缺点以及适用环境。 (2) 简述RAID中的关键技术。 (3) 简述常见的RAID类型以及特点。 (4) 简述RAID数据保护。 (5) 简述LUN虚拟化。 (6) 简述磁盘及磁盘分区。