磁盘阵列RAID是服务器维护的必备知识,以前不太关心服务器维护方面的知识。目前要负责维护机房里的几台服务器,所以要关注这方面的内容。

磁盘阵列是用多块独立磁盘组成,提供两个方面的作用:数据安全冗余 和提高性能。

1、安全冗余:通过冗余数据存储,当阵列中一块磁盘故障时,更换后可恢复数据到完整状态。

2、提高性能:把数据分块储存到不同的磁盘上,可以实现并行的读写,从而提高了存储设备的读写性能。

RAID 磁盘阵列有多种结构,各有偏重。

RAID0:数据储存在多块磁盘上,没有冗余存储。特点,速度快。只能用于数据安全要求不高的场合。

RAID1:数据镜像。RAID 1的数据安全性在所有的RAID级别上来说是最好的。但是其磁盘的利用率却只有50%,是所有RAID级别中最低的。
RAID2:RAID3:RAID4:RAID5:带有校验码的结构,读写性能和利用率比RAID1高。

RAID0+1:RAID10:由RAID0+RAID1两层结构组成,后者只有一个完整的控制器。

普通服务器多使用RAID1和RAID5。

硬件RAID阵列发生磁盘故障时,只需要把故障盘换下, 无需重启系统,RAID阵列控制硬件会主动恢复数据。

==============

RAID阵列卡故障的处理

操作步骤:
1、然后将硬盘与阵列卡断开(切记要断开,否则第二步中的操作会清除硬盘上的阵列信息)。
2. 开机,进入阵列卡的配置菜单。
3. 将阵列卡中的阵列配置信息删除后保存退出并关机,注意不要配置新的设置。
4. 将硬盘阵列重新接回阵列卡,开机,使其自检,自动读取硬盘阵列上的信息即可
 
raid1 raid5常见故障及解决
我们使用RAID的目的就是利用磁盘空间的冗余实现数据容错,当磁盘出现故障的时候能够确保数据的安全。不过这一切都是在所有的磁盘或卷没有任何问题的前提下实现的,也就是说必须保证冗余磁盘或卷的正常运转。当RAID卷中的单个磁盘出现故障后,尽管数据可能暂时不会受到威胁,但是磁盘冗余已经不复存在了。只有及时修复故障才能保证冗余的存在。
  那么如何知道RAID卷已经出现故障呢?这在“磁盘管理”窗口中很容易看到。发生故障的RAID卷的状态将显示为“失败的重复”,而发生故障的磁盘状态为“丢失”或“脱机”。
  一、磁盘的常见状态及解决方法
  RAID-1和RAID-5是目前应用最普遍的两种类型,下面列出RAID-1卷或RAID-5卷中磁盘的常见状态,以便于大家识别Raid的状态。
  ·联机
  该磁盘为可用磁盘且没有检测到已知的错误。
  ·联机(错误)
  该磁盘为可用磁盘但检测到I/O错误。用户可以执行该磁盘的快捷命令“重新激活磁盘”或许能将它恢复到“联机”状态。这种状态只出现在动态磁盘中。
  ·脱机
  该磁盘不可用。这通常是由物理磁盘或传输介质的故障而引起的。用户可以尝试执行“重新激活磁盘”操作进行修复,如果失败则只能移走该磁盘并执行“删除磁盘”快捷命令。这种状态只出现在动态磁盘中。
  ·外部
  该磁盘是从另一台计算机移过来的。在该磁盘的快捷菜单中执行“导入外部磁盘”命令导入该磁盘。
  ·丢失
  该磁盘已经损坏或断开连接。尝试执行“重新激活磁盘”操作,如果不能恢复成“联机”状态,则只能执行“删除磁盘”操作。这种状态只出现在动态磁盘中。
  ·未初始化
  磁盘有效信息从MBR(主启动记录)中丢失,或者一个有效的GUID(Globally Unique Identifier,全局唯一标识符)从GPT(全局分区表)中丢失。通常在服务器安装新硬盘时会出现这种情况,初始化磁盘会解决这个问题。
  ·正在初始化
  这种状态会在将一个基本磁盘转换为动态磁盘时出现。无需人工干预,转换完成后会恢复到联机状态。
  ·不可读
  该磁盘暂时不可用或已经损坏,可以尝试重新启动计算机,如果不能修复则必须更换该磁盘。
 二、卷的常见状态及解决方法
  ·良好
  卷运转正常且没有检测到已知的错误,在基本卷和动态卷中都会显示这种状态。
  ·良好(未知分区)
  卷不能被识别,这可能是由于使用了由其它操作系统创建的分区。可以将其删除重新创建。
  ·良好(有风险)
  卷是可用的,但系统已经检测到磁盘上存在I/O错误。
  ·未知
  引导扇区被破坏,这可能是由于磁盘损坏或引导扇区病毒造成。
  ·重新同步
  该状态应用于镜像卷。重新同步会使两个镜像上的数据完全相同。
  ·格式化
  卷正在被格式化,并显示格式化进度。
  ·正在重新生成
  该状态应用于RAID-5卷,它在替换一个故障磁盘并且包括将丢失的信息写到该卷的一个新成员之后发生。当重新生成过程正在进行时应避免对该卷的访问,重新生成过程完成时,这个卷将返回到良好状态。
  ·失败的重复
  该状态应用于镜像卷和RAID-5卷。它表明其中一个磁盘出现故障并且该卷不再容错。尽管这个卷仍是可以访问的,但该卷中另一个磁盘的故障将造成数据的丢失。只要一有可能就应该替换这个磁盘并重新同步或重新生成该卷。
  ·失败的重复(有危险)
  该状态应用于镜像卷和RAID-5卷。它表明这个卷不再容错且检测到磁盘存在I/O错误。建议更换出现故障的磁盘。
  ·失败
  该状态应用于基本卷和动态卷。它表明该卷不能启动且需要人工修复。
  三、实战修复RAID-5卷
  对于RAID-5卷的修复分为不更换原磁盘的修复和更换原磁盘的修复,两种情况的修复方法有所不同。
  不更换原磁盘修复RAID-5卷
  如果不是由于磁盘的物理故障导致RAID-5卷出现问题,修复起来比较简单,其步骤如下:
  首先检查发生故障的磁盘是否已经跟计算机正确连接,确保数据线和电源线工作正常;其次,打开“磁盘管理”窗口,右键单击状态显示为“丢失”、“脱机”或“联机(错误)”的磁盘执行“重新激活磁盘”命令
  如果磁盘没有物理故障,重新激活后的磁盘应该显示“联机”状态,而RAID-5卷则开始进行“重新同步”。同步完成以后所有的“RAID卷”将恢复到“状态良好”,这时故障已经得到有效修复。
  更换原磁盘修复RAID-5卷
raid0数据修复
要恢复raid 0,我们就必须先了解raid 0的结构
    RAID 0又称为Stripe或Striping,它代表了所有RAID级别中最高的存储性能。RAID 0提高存储性能的原理是把连续的数据分散到多个磁盘上存取,这样,系统有数据请求就可以被多个磁盘并行的执行,每个磁盘执行属于它自己的那部分数据请求。 这种数据上的并行操作可以充分利用总线的带宽,显著提高磁盘整体存取性能。
    RAID 0 并不是真正的 RAID结构, 没有数据冗余。 RAID 0 连续地分割数据并并行地读/写于多个磁盘上。 因此具有很高的数据传输率。 但RAID 0在提高性能的同时,并没有提供数据可靠性,如果一个磁盘失效, 将影响整个数据.因此RAID 0 不可应用于需要数据高可用性的关键应用。
    RAID 0 没有任何额外的磁盘或空间作安全准备,所以一般人不重视它,这是误解。?其实它有最好的效率及空间利用率,对于追求效率的应用,非常理想,可同时用?其他的RAID?level或其他的备份方式以补其不足,保护重要的数据。
     从上面介绍我们可以看出,raid 0是及其不安全的,数据丢失率几乎是你用单盘来存数据的4倍,因此最好不要用raid 0来存放重要数据, 只能用他来做系统等需要速度,而对安全不重要的数据。
    那么,raid 0万一出现问题到底能不能恢复数据呢?如果能,又该如何做呢?接下来,我们就来讲讲raid 0的恢复方法。
对于raid 0来说,数据的存放有些像我们衣服上的拉链,分别存放在两边,也就两个硬盘之上,每个硬盘上的数据都只有一半,把拉链拉上,数据就连续了,如果分别去读两块盘,每块盘的数据都是坏的,因为数据以块为单位被分别存在了两块硬盘上,由于块大小一般不会很大,所以要正好一个小的文件,又在一个块上几乎是不可能的,因此,恢复raid 0前我们必须先做的一个工作就是分析块的大小,这个在我们用raid卡组raid的时候就可以很清楚的看到,他是以 kb为单位的,一般raid 0的块大小都是64kb,当然也有特殊的,但块大小一般都是8的n次方kb,所以,8,16,32,64,128,256,512,1024都是常用的块大小。
    知道了块大小其实只是刚刚走了三分之一的路程,接下来我们就要分析两块硬盘中的哪一块硬盘是0号盘,也就是数据是先写哪一块硬盘的,当然对于对文件系统非常了解的人来说,那个一看就清楚了,分区表在哪块硬盘上,当然就是哪块硬盘先写的了。
    最后一个步骤就是用软件来重组raid了,也就是镜像工作,软件会根据您分析结果的具体设定来读取硬盘上的数据,从而镜像到另一块空的硬盘上,这样,那块空的硬盘就有了和您raid 0上一摸一样的数据了,到此,整个raid 0的数据恢复工作全部完毕。
RAID故障原因分析
由于大多数使用者对RAID并不是很了解,而且服务器的广告上也太过强调RAID的容错功能,从而误导很多使用者,误以为RAID很不容易出现故障,或者出现故障时RAID本身有处理容错的应变机制,所以不必太费心做数据备份,因而忽视RAID的潜在危险,所以每当RAID出现故障时都是大灾难。
    RAID出现故障的原因一般有以下几点:
1、RAID控制器出现故障,导致RAID失效。
2、突然断电导致RAID信息出错。
3、RAID5中一块硬盘出错,系统管理员没有及时更换,紧接着第二块硬盘又出错,造成RAID5失效。
RAID1恢复
RAID1是所有RAID中最简单的一种,从图4-17我们可以看出,RAID1中两块硬盘互为镜像,所有数据都是完全一样的,如果是RAID控制器故障或RAID信息出错导致RAID1的数据无法访问,只要将两块硬盘中的一块从服务器上拆下来,作为单独的硬盘挂在一台计算机上,就很容易将数据恢复出来。
    如果RAID1中一块硬盘出现故障,不会影响服务器的运行,只要把故障硬盘更换为一块好的硬盘就可以了。如果没有及时更换,导致第二块硬盘也出现故障,这时RAID1就会失效,因为先出现故障的硬盘中的数据已经不完整,所以不能以第一块硬盘为基准进行数据恢复,而应该用后出现故障的硬盘进行数据恢复,一般情况下都能够完全恢复出所有的数据。

======================

主板自带raid功能使用

主板raid等同硬件raid卡,如果更换故障盘后会自动恢复 数据。若主板故障等同raid阵列卡故障。找一块同样的主板来恢复阵列信息。

或者使用专用软件恢复数据。

RAID磁盘阵列笔记的更多相关文章

  1. 学习笔记:CentOS7学习之十五: RAID磁盘阵列的原理与搭建

    目录 学习笔记:CentOS7学习之十五: RAID磁盘阵列的原理与搭建 14.1 RAID概念 14.1.1 RAID几种常见的类型 14.1.2 RAID-0工作原理 14.1.3 RAID-1工 ...

  2. RAID磁盘阵列学习笔记

    RAID是“Redundant Array of Independent Disk”的缩写,中文意思是独立冗余磁盘阵列.简单地解释,就是将N台硬盘通过RAID Controller(分Hardware ...

  3. 末学者笔记--Linux中RAID磁盘阵列及centos7启动过程

    <一>RAID概念 磁盘阵列(Redundant Arrays of Independent Disks,RAID),有“独立磁盘构成的具有冗余能力的阵列”之意. 磁盘阵列是由很多价格较便 ...

  4. 快速理解几种常用的RAID磁盘阵列级别

    我发现周围不少人在学习和理解RAID磁盘阵列的原理时,找了很多专业的资料来看,但是因为动手的机会比较少,因此看完以后还是似懂非懂,真正遇到实际的方案设计的时候,还是拿不定主意. 因此,我结合自己在过去 ...

  5. 使用MegaCli工具查看Raid磁盘阵列状态

    转载自:http://home.51.com/chenjianghui1987/diary/item/10051836.html 文章本身我不做过多修改了,在这里我就把自己在安装时候碰到的难点跟大家提 ...

  6. linux lvm管理扩展 RAID磁盘阵列管理

    LVM逻辑卷将多个物理分区/磁盘从逻辑上组合成一个更大的整体,从其中划分出不同的逻辑分区,逻辑分区的大小可以根据需要扩大,缩减!!!!/boot用来存放引导文件,不要基于LVM创建 PV(物理卷)物理 ...

  7. RAID磁盘阵列及CentOS7系统启动流程(week2_day3)--技术流ken

    RAID概念 磁盘阵列(Redundant Arrays of Independent Disks,RAID),有“独立磁盘构成的具有冗余能力的阵列”之意. 磁盘阵列是由很多价格较便宜的磁盘,以硬件( ...

  8. RAID磁盘阵列及CentOS7系统启动流程

    磁盘阵列(Redundant Arrays of Independent Disks,RAID),有“独立磁盘构成的具有冗余能力的阵列”之意,,数据读取无影响.将数据切割成许多区段,分别存放在各个硬盘 ...

  9. Linux系统的RAID磁盘阵列

    RAID概念 磁盘阵列(Redundant Arrays of Independent Disks,RAID),有“独立磁盘构成的具有冗余能力的阵列”之意. 磁盘阵列是由很多价格较便宜的磁盘,以硬件( ...

随机推荐

  1. python 字符串内建函数

    方法 描述 string.capitalize() 把字符串的第一个字符大写 string.center(width) 返回一个原字符串居中,并使用空格填充至长度 width 的新字符串 string ...

  2. Flash动画

    Flash (交互式矢量图和Web动画标准) Flash是由macromedia公司推出的交互式矢量图和 Web 动画的标准,由Adobe公 司收购.做Flash动画的人被称之为闪客.网页设计者使用 ...

  3. PCH文件

    作用:xcode5 自带的一个文件,xcode以后这个文件需要自己手动创建(这个是xcode5 和xcode6最大的区别)提前编译文件,一般情况下.我们在pch文件中#import一些项目中常用的软件 ...

  4. 黑马----JAVA比较器:Comparable和Comparator

    黑马程序员:Java培训.Android培训.iOS培训..Net培训 一.Comparable接口 1.public interface Comparable{ public int compare ...

  5. C++学习笔记30:模板与型式参数化

    转型操作 接受目标型式作为模板参数 Programmer *p = dynamic_cast<Programmer*>(e) 模板工作原理 使用template<typename T ...

  6. 优化 UltraEdit 打开大文件时的性能

    UltraEdit 原本就是被设计成可以打开超大文件的工具,只不过在默认情况下需要进行以下优化设置: 禁止临时文件 禁止显示行号 禁止文件(回车 & 换行符)转换 禁止代码折叠 禁止显示函数列 ...

  7. GIT 使用文档

    GIT 使用文档 git clone http://wanghaiyang:Z123456w@192.168.1.118/wanghaiyang/hdtas.git git add . //添加当前文 ...

  8. idea-生成key的Java代码

    import java.math.BigInteger; import java.util.Date; import java.util.Random; import java.util.Scanne ...

  9. 关于C语言的问卷调查(补交)

    你对自己的未来有什么规划?做了哪些准备?(还是处于比较迷茫的状态:我做的准备是吧自己对计算机的兴趣提起来!) 你认为什么是学习?学习有什么用?现在学习动力如何?为什么?(学习就是学自己不会的东西:增加 ...

  10. Android 多线程处理之多线程用法大集合

    handler.post(r)其实这样并不会新起线程,只是执行的runnable里的run()方法,却没有执行start()方法,所以runnable走的还是UI线程. 1.如果像这样,是可以操作ui ...