`
chengyue2007
  • 浏览: 1490443 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

Linux实现最常用的磁盘阵列--RAID5

 
阅读更多
(一)RAID简介:
独立磁盘冗余数组(RAID, Redundant Array of Independent Disks),旧称廉价磁盘冗余数组(RAID,Redundant Array of Inexpensive Disks),简称硬盘阵列。其基本思想就是把多个相对便宜的硬盘组合起来,成为一个硬盘阵列组,使性能达到甚至超过一个价格昂贵、容量巨大的硬盘。根据选择的版本不同,RAID比单颗硬盘有以下一个或多个方面的好处:增强数据集成度,增强容错功能,增加处理量或容量。另外,磁盘阵列对于电脑来说, 看起来就像一个单独的硬盘或逻辑存储单元。分为RAID-0,RAID-1,RAID-1E,RAID-5,RAID-6,RAID-7,RAID-10,RAID-50。
  www.2cto.com  
简单来说,RAID把多个硬盘组合成为一个逻辑扇区,因此,操作系统只会把它当作一个硬盘。RAID常被用在服务器电脑上,并且常使用完全相同的硬盘作为组合。由于硬盘价格的不断下降与RAID功能更加有效地与主板集成,它也成为了玩家的一个选择,特别是需要大容量存储空间的工作,如:视频与音频制作。
最初的RAID分成了不同的等级,每种等级都有其理论上的优缺点,不同的等级在两个目标间取得平衡,分别是增加数据可靠性以及增加存储器(群)读写性能。这些年来,出现了对于RAID观念不同的应用。
  www.2cto.com  
 
 
(二)linux实现软RAID5:
1、准备硬盘(至少需要3块硬盘,此处使用一块硬盘的5个分区实现,但是在实际生产中一块硬盘做RAID没有意义):
[root@localhost ~]# fdisk -cul /dev/sdb #创建分区如下
Disk /dev/sdb: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders, total 41943040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x466fc1b6
Device Boot Start End Blocks Id System
/dev/sdb1 2048 10487807 5242880 83 Linux
/dev/sdb2 10487808 41943039 15727616 5 Extended
/dev/sdb5 10489856 16781311 3145728 83 Linux
/dev/sdb6 16783360 23074815 3145728 83 Linux
/dev/sdb7 23076864 29368319 3145728 83 Linux
/dev/sdb8 29370368 35661823 3145728 83 Linux
/dev/sdb9 35663872 41943039 3139584 83 Linux
[root@localhost ~]# partx -a /dev/sdb #重新读取分区表
[root@localhost ~]# rpm -qa |grep mdadm #查看创建raid软件是否安装
mdadm-3.2.3-9.el6.i686
2、创建RAID5:
[root@localhost ~]# mdadm -C /dev/md0 -a yes -l 5 -n 4 -x 1 /dev/sdb{5..9} ####-C:创建/dev/md0设备,-a:是否自动检测这里为yes,-l:raid的级别这里为raid5,-n:几块硬盘做为RUN,-x:几块硬盘作为备用
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.
[root@localhost ~]# mdadm --detail /dev/md0 #查看/dev/md0的详细信息
/dev/md0:
Version : 1.2
Creation Time : Mon Jan 14 19:36:37 2013
Raid Level : raid5
Array Size : 9414144 (8.98 GiB 9.64 GB)
Used Dev Size : 3138048 (2.99 GiB 3.21 GB)
Raid Devices : 4
Total Devices : 5
Persistence : Superblock is persistent
Update Time : Mon Jan 14 19:37:27 2013
State : clean
Active Devices : 4
Working Devices : 5
Failed Devices : 0
Spare Devices : 1
Layout : left-symmetric
Chunk Size : 512K
Name : localhost.localdomain:0 (local to host localhost.localdomain)
UUID : f16324c8:0f2a0be2:04c57c07:5f44f53e
Events : 18
Number Major Minor RaidDevice State
0 8 21 0 active sync /dev/sdb5
1 8 22 1 active sync /dev/sdb6
2 8 23 2 active sync /dev/sdb7
5 8 24 3 active sync /dev/sdb8
4 8 25 - spare /dev/sdb9
3、格式化、挂载、使用/dev/md0:
[root@localhost ~]# mkfs.ext4 /dev/md0 #将/dev/md0格式化
[root@localhost ~]# mkdir /raid5 ##创建挂载目录
[root@localhost ~]# mount /dev/md0 /raid5/ #挂载/dev/md0到/raid5目录下
[root@localhost ~]# cd /raid5/
[root@localhost raid5]# touch raid5.file
[root@localhost raid5]# ls
lost+found raid5.file
4、设置开机启动RAID5:
[root@localhost ~]# mdadm --detail --scan #查看raid简要信息
ARRAY /dev/md0 metadata=1.2 spares=1 name=localhost.localdomain:0 UUID=f16324c8:0f2a0be2:04c57c07:5f44f53e
[root@localhost ~]# mdadm --detail --scan >/etc/mdadm.conf #创建软raid的配置文件!注意:此文件如果不创建下次开机重启后/dev/md0将会被系统自动识别为其他非/dev/md0名称的设备,对于实现开机挂载和使用都不方便。
[root@localhost ~]# vim /etc/fstab #编辑fstab文件添加如下行
/dev/md0 /raid5 ext4 defaults 0 0
4、管理RAID5:
查看raid的状态:
[root@localhost ~]# cat /proc/mdstat #查看raid的状态
Personalities : [raid6] [raid5] [raid4]
md0 : active raid5 sdb8[5] sdb9[4](S) sdb7[2] sdb6[1] sdb5[0]
9414144 blocks super 1.2 level 5, 512k chunk, algorithm 2 [4/4] [UUUU]
unused devices: <none>
查看特定raid设备的详细信息:
[root@localhost ~]# mdadm --detail /dev/md0
……………………………………………省略………………………………………………..
Number Major Minor RaidDevice State
0 8 21 0 active sync /dev/sdb5
1 8 22 1 active sync /dev/sdb6
2 8 23 2 active sync /dev/sdb7
5 8 24 3 active sync /dev/sdb8
4 8 25 - spare /dev/sdb9
模拟硬盘损坏:
[root@localhost ~]# mdadm /dev/md0 --fail /dev/sdb5 #模拟硬盘损坏
[root@localhost ~]# mdadm –detail #验证
……………………………………………省略………………………………………………..
Name : localhost.localdomain:0 (local to host localhost.localdomain)
UUID : f16324c8:0f2a0be2:04c57c07:5f44f53e
Events : 25
Number Major Minor RaidDevice State
4 8 25 0 spare rebuilding /dev/sdb9
1 8 22 1 active sync /dev/sdb6
2 8 23 2 active sync /dev/sdb7
5 8 24 3 active sync /dev/sdb8
0 8 21 - faulty spare /dev/sdb5
####/dev/sdb5的状态变成了faulty,/dev/sdb9则立即变成active
模拟拔出硬盘:
[root@localhost ~]# mdadm /dev/md0 --remove /dev/sdb5 #模拟拔出硬盘
mdadm: hot removed /dev/sdb5 from /dev/md0
[root@localhost ~]# mdadm –detail #验证
……………………………………………省略………………………………………………..
Name : localhost.localdomain:0 (local to host localhost.localdomain)
UUID : f16324c8:0f2a0be2:04c57c07:5f44f53e
Events : 4
Number Major Minor RaidDevice State
4 8 25 0 active sync /dev/sdb9
1 8 22 1 active sync /dev/sdb6
2 8 23 2 active sync /dev/sdb7
5 8 24 3 active sync /dev/sdb8
####/dev/sdb5已经从/dev/md0中消失了:
模拟往raid中添加硬盘:
[root@localhost ~]# mdadm --zero-superblock --force /dev/sdb5 #修复硬盘
[root@localhost ~]# mdadm /dev/md0 --add /dev/sdb5#模拟往raid中添加硬盘
mdadm: added /dev/sdb5
[root@localhost ~]# mdadm --detail /dev/md0 #验证
/dev/md0:
Version : 1.2
Creation Time : Mon Jan 14 19:36:37 2013
Raid Level : raid5
Array Size : 9414144 (8.98 GiB 9.64 GB)
Used Dev Size : 3138048 (2.99 GiB 3.21 GB)
Raid Devices : 4
Total Devices : 5
Persistence : Superblock is persistent
Update Time : Mon Jan 14 20:17:02 2013
State : clean
Active Devices : 4
Working Devices : 5
Failed Devices : 0
Spare Devices : 1
Layout : left-symmetric
Chunk Size : 512K
Name : localhost.localdomain:0 (local to host localhost.localdomain)
UUID : f16324c8:0f2a0be2:04c57c07:5f44f53e
Events : 41
Number Major Minor RaidDevice State
4 8 25 0 active sync /dev/sdb9
1 8 22 1 active sync /dev/sdb6
2 8 23 2 active sync /dev/sdb7
5 8 24 3 active sync /dev/sdb8
6 8 21 - spare /dev/sdb5
####/dev/sdb5已经成功添加到了/dev/md0中并且做为备用设备等待使用。
分享到:
评论

相关推荐

    18-1-RHEL7-Linux+RAID+0磁盘阵列原理与搭建

    -l 或 --level:设定磁盘阵列的级别(0、1、4、5、6等)。 -n 或 --raid-devices:指定阵列成员的数量。 -D 或 --detail:打印阵列设备的详细信息。 -s 或 --scan:扫描配置文件。 -f 或 --add:将设备添加到阵列中...

    RAID磁盘阵列 for Linux

    2. **软件RAID**:指利用操作系统内部的功能实现磁盘阵列,如Linux下的mdadm工具。这种方式的优势在于无需额外的硬件支持,成本较低,但在性能和稳定性方面可能不如硬件RAID。 3. **外置RAID**:通常指磁盘阵列柜或...

    18-2-RHEL7-Linux+RAID+1磁盘阵列原理与搭建

    RHEL7 Linux系统中配置RAID 1磁盘阵列的原理与搭建过程涉及一系列步骤,包括硬件准备、分区创建、RAID配置和系统设置。下面详细解释这些步骤背后的知识点: 1. RAID 1的定义和作用: RAID 1,也被称作磁盘镜像,是...

    RAID磁盘阵列高级教学课件

    RAID(Redundant Array of Independent Disks,独立冗余磁盘阵列)是一种通过将多个物理硬盘组合在一起,提供数据存储性能提升、容错能力增强的技术。在本"RAID磁盘阵列高级教学课件"中,我们将深入探讨RAID的各种...

    磁盘阵列模拟工具--适合Linux初学者学习

    在Linux系统中,磁盘阵列(也称为RAID,Redundant Array of Independent Disks)是通过软件实现的,这使得Linux用户可以充分利用硬件资源,而无需额外的硬件支持。对于Linux初学者来说,理解并掌握磁盘阵列的概念和...

    linux-x86-64-a320raid

    在Linux系统中,RAID(Redundant Array of Independent Disks,独立磁盘冗余阵列)是一种通过组合多个硬盘来提高数据存储性能、可靠性和/或容量的技术。A320 RAID控制器是一种硬件设备,它负责管理这些硬盘并执行...

    服务器常用磁盘阵列RAID原理、种类及性能优缺点对比

    磁盘阵列的主要类型包括RAID 0、RAID 1、RAID 4、RAID 5、RAID 6和RAID 10等,不同类型的RAID具有各自的特点、性能优缺点以及适用场景。 RAID 0通过将数据分片后存储到两个或多个硬盘上,大大提高了数据的读写速度...

    Linux阵列 RAID详解

    RAID-5 - **描述**: 需要至少三块磁盘,采用奇偶校验机制。 - **特点**: 提供容错能力,能够在一块磁盘故障时继续工作。 - **适用场景**: 性能与数据安全性都比较重要的场景。 #### 七、RAID-0 和 RAID-1 的结合 ...

    HP B110I SATA RAID 磁盘阵列驱动

    标题中的“HP B110I SATA RAID 磁盘阵列驱动”指的是惠普(HP)B110I SATA控制器的RAID(独立磁盘冗余阵列)驱动程序。这个驱动程序是用于管理和优化连接到该控制器的SATA硬盘的软件组件,它在操作系统和硬件之间...

    Linux操作系统内存管理RAID磁盘阵列与配置.pdf

    "Linux操作系统内存管理RAID磁盘阵列与配置" Linux操作系统内存管理RAID磁盘阵列与配置是 Linux 操作系统中的一种磁盘管理技术。RAID(独立冗余磁盘阵列)是一种将多块独立的物理硬盘按不同的方式组合起来形成一个...

    linux操作系统教程 linux系统操作教程 linux培训资料PPT课件 第11章 创建磁盘阵列 共17页.ppt

    此外,RAID-5 磁盘阵列存储方式是利用同位校验码的方式来达到数据容错的目的。具体是 RAID-5 将数据分成大小相同的区块,并分别存储到不同的硬盘中,会保留硬盘的一部分来存储同位校验码。 磁盘阵列技术可以提高...

    linux 磁盘阵列

    在 Linux 操作系统下,RAID 技术可以通过软件或硬件来实现,软件 RAID 是通过操作系统来实现的,而硬件 RAID 是通过专门的磁盘阵列卡来实现的。_HARDWARE RAID 卡可以主动的复制一份数据,而不使用系统的 I/O 总线,...

    Linux-中软件-RAID-的使用.docx

    Linux系统中目前以MD(Multiple Devices)虚拟块设备的方式实现软件RAID,利用多个底层的块设备虚拟出一个新的虚拟块设备,并口利用条带化(stripping)技术将数据块均匀分布到多个磁盘上来提高虚拟设备的读写性能...

    RedHat Linux下磁盘阵列技术实现探讨.pdf

    本文主要探讨在Red Hat Linux环境下如何实现磁盘阵列技术,以提升磁盘存储效率。 磁盘阵列技术的原理是利用数组方式组织磁盘,通过数据分散排列设计,提高数据安全性。它通常由多个较小、稳定、速度较慢的磁盘组成...

    DELL服务器做RAID5磁盘阵列图文教程.doc

    本文档主要介绍了DELL服务器的RAID5磁盘阵列配置教程,涵盖了磁盘阵列的基本概念、RAID的种类、软件RAID和硬件RAID的区别、外置RAID的概念、配置RAID磁盘阵列的步骤等知识点。 一、磁盘阵列的概念 磁盘阵列是一种...

    行业分类-设备装置-一种RAID5级别磁盘阵列的写性能优化方法.zip

    RAID(Redundant Array of Independent Disks,独立冗余磁盘阵列)是一种通过将多个硬盘组合起来形成一个逻辑单元的技术,旨在提高数据存储的可靠性和性能。在本话题中,我们关注的是RAID5级别,这是一种广泛使用的...

    第14章-RAID磁盘阵列的原理与搭建.docx

    - **主要类型**:在企业环境中,最常用的RAID类型包括RAID 1(镜像)、RAID 5(分布式奇偶校验)以及RAID 10(结合了镜像和条带)。 #### 14.1.1 RAID几种常见的类型 - **RAID 0 (条带)**:提供高速数据访问但无...

Global site tag (gtag.js) - Google Analytics