LX570HEL/CentOS:利用ISO 组建地方YUM服务器

 

由加利福尼亚大学伯克利分校(University of
California-Berkeley)在1988年,发表的文章:“A Case for Redundant Arrays
of Inexpensive
Disks”。文章中,谈到了RAID这个词汇,而且定义了RAID的5个层级。独立磁盘冗余阵列(RAID,redundant
array of independent
disks)是把相同的数据存储在多个硬盘的不同的地方(因此,冗余地)的方法。通过把数据放在多个硬盘上,输入输出操作能以平衡的方式交叠,改良性能。因为多个硬盘增加了平均故障间隔时间(MTBF),储存冗余数据也增加了容错性。

安装前提:2个一样大小的硬盘;CentOS
5系统盘。

RAID0

Yum 仓库

一、环境

  1. RAID的几个常用级别

澳门威斯尼人平台登录 1

澳门威斯尼人平台登录 2

为了避免从网络下载软件包可能发生的软件包不完整、下载速度慢、网络故障等问题,我们强烈建议您使用本地的
DVD/CD iso 来创建 yum
仓库,这样在安装的时候速度快,而且可以保证所有软件包都能顺利安装。

1.操作系统为CentOS4.4,mdadm软件为系统自带的,版本1.6.0-3

  • raid 0
    要2块或2块以上的硬盘,把数据分散在N块硬盘内性能提升极高,无容错能力。
  • raid 1
    需要2块硬盘,会把一块硬盘写数据,把另一块写入数据镜像,容错性最高,但写入性能会下降。
  • raid 4
    需要3块或以上的硬盘,多块数据盘进行异或运算,把一块硬盘做专用校验盘,异或相同为假不同为真,有容错性,一块坏掉可以通过校验盘来计算恢复。但已基本不用本文不做详细介绍。
  • raid 5
    需要3块或3块以上的硬盘,会把1块硬盘的容量来放校验位,有容错性允许一块磁盘损坏,性能有提升,比较常用。磁盘利用率比raid1要高。拥有和raid0相近的读取速度,但写入数据和单个磁盘相比稍慢。把多块数据进行异或运算生成校验信息,然后把数据和与其相对的校验信息保存在raid5各个磁盘中。
  • raid 6
    需要4块或4块以上的硬盘,会把2块硬盘的容量来放校验位,会计算两个校验位储存在两块盘上,容错性允许两块磁盘损坏,不常用,本文不做详细介绍。
  • raid 10
    需要4块或2的2倍以上的硬盘,但添加硬盘要一次添加2块。会把硬盘先做raid
    1在做raid
    0,性能提升较高,但磁盘利用率较低,容错性极高。raid01与其相似但是raid01是先做raid
    0再做raid 1.
  • raid 50 需要6块或3的2倍以上的硬盘,先把硬盘做成raid5,再做成raid
    0,性能提升较高,磁盘利用率较低,容错性极高。
  • raid 7
    可以理解为一个独立存储计算机,自身带有操作系统和管理工具,可以独立运行,理论上性能最高的raid模式,本文里不做详细介绍。

用简单方式进入安装进程

定义:

如果您有局域网内的 yum
仓库,可以直接使用它,就不需要按照以下的步骤重复创建了。

2.hda安装的是系统,sda、sdb、sdc、sdd四块硬盘建立Raid5,其中sdd为热备。

级别 最少硬盘 容量 读取性能 写入性能 容错性
raid 0 2 n n n 无容错性
raid 1 2 n/2 n n/2 2块可以坏掉一块
raid 5 3 n-1 n-1 n-1 3块可以坏掉一块
raid 10 4 n/2 n n/2 只要不是同一个raid1的硬盘,可以坏掉一半

澳门威斯尼人平台登录 3

RAID 0又称为Stripe或Striping,它代表了所有RAID级别中最高的存储性能。RAID
0提高存储性能的原理是把连续的数据分散到多个磁盘上存取,这样,系统有数据请求就可以被多个磁盘并行的执行,每个磁盘执行属于它自己的那部分数据请求。这种数据上的并行操作可以充分利用总线的带宽,显著提高磁盘整体存取性能。

下面的操作都是在您安装好
RHEL/CentOS
系统后进行的。

二、准备


澳门威斯尼人平台登录 4

工作原理:

先从光盘或已有的 YUM 仓库安装 createrepo 工具,以及网络下载工具 wget:

1.首先需要将四块SCSI硬盘格式化。敲入命令fdisk
–l,系统显示sda、sdb、sdc、sdd的一些信息,并提示磁盘没有包含一个有效的分区表。

  1. 实现

系统向三个磁盘组成的逻辑硬盘(RAID0
磁盘组)发出的I/O数据请求被转化为3项操作,其中的每一项操作都对应于一块物理硬盘。通过建立RAID
0,原先顺序的数据请求被分散到所有的三块硬盘中同时执行。从理论上讲,三块硬盘的并行操作使同一时间内磁盘读写速度提升了3倍。
但由于总线带宽等多种因素的影响,实际的提升速率肯定会低于理论值,但是,大量数据并行传输与串行传输比较,提速效果显著显然毋庸置疑。

Shell 命令: 

2.[[email protected]
/]# fdisk /dev/sda

2.1 软raid命令mdadm

优缺点:

# rpm -ivh createrepo-x.y.z.rpm

Command (m for help): n #输入字母n,添加一个新的分区。

-C: 创建模式,参数:

读写性能是所有RAID级别中最高的。

# rpm -ivh wget-x.y.z.rpm

Command action

  • -n #: 使用 #个块设备来创建此RAID
  • -l #:指明要创建的RAID的级别,1表示raid1
  • -a {yes|no}:自动创建目标RAID设备的设备文件
  • -c CHUNK_SIZE: 指明块大小
  • -x #: 指明空闲盘的个数

RAID
0的缺点是不提供数据冗余,因此一旦用户数据损坏,损坏的数据将无法得到恢复。RAID0运行时只要其中任一块硬盘出现问题就会导致整个数据的故障。一般不建议企业用户单独使用。

createrepo 命令用于生成 yum 仓库所必须的一些信息,这些信息都存放在
repodata/ 目录底下,您打开看看就会明白它做了些什么事情。

e extended

-D:显示raid的详细信息

总结:

使用 ISO 文件制作 yum 仓库

p primary partition (1-4)

  • -s:扫描配置文件或/proc/mdstat缺少信息。

磁盘空间使用率:100%,故成本最低。

DVD ISO

p #创建主分区。

-G:更改大小

读性能:N*单块磁盘的读性能

如果你使用的是 DVD 光盘,可以直接挂载光盘,然后制作 yum 仓库:

Partition number (1-4): 1 #可创建四个主分区,此处输入1,创建第一个。

-I:添加或删除单个硬盘

写性能:N*单块磁盘的写性能

Shell 命令: 

First cylinder (1-1044, default 1):
#因为是将硬盘分为一个区,所以默认回车即可。

-F:监控

冗余:无,任何一块磁盘损坏都将导致数据不可用。

# mkdir /mnt/dvd/

Using default value 1

澳门威斯尼人平台登录,管理模式

 

# mount /dev/cdrom /mnt/dvd/

Last cylinder or +size or +sizeM or +sizeK (1-1044, default 1044):

  • -f: 标记指定磁盘为损坏
  • -a: 添加磁盘
  • -r: 移除磁盘

RAID1

# cd /mnt

Using default value 1044

注:要查看raid的状态:cat
/proc/mdstat,创建之后要写入配置文件来保存否则在停用设备之后无法启动:
mdadm –D –s >> /etc/mdadm.conf

澳门威斯尼人平台登录 5

# createrepo .

Command (m for help): t #更改分区的文件系统ID。

2.2 raid 0

定义:

如果您使用的是官方的 DVD ISO,则需要将它复制到系统上,挂载后制作 yum
仓库:

Selected partition 1

[root@centos6.9 ~]#lsblk  #查看硬盘情况
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sdb      8:16   0  100G  0 disk 
└─sdb1   8:17   0   30G  0 part /test
sda      8:0    0  200G  0 disk 
├─sda1   8:1    0 1000M  0 part /boot
├─sda2   8:2    0 97.7G  0 part /
├─sda3   8:3    0 48.8G  0 part /app
├─sda4   8:4    0    1K  0 part 
└─sda5   8:5    0    2G  0 part [SWAP]
sdc      8:32   0   10G  0 disk  #这里有4块10GB的硬盘,就是我们做实验要用的
sdd      8:48   0   10G  0 disk 
sde      8:64   0   10G  0 disk 
sdf      8:80   0   10G  0 disk 

[root@centos6.9 ~]#mdadm -C /dev/md0 -n 2 -a yes -l 0 /dev/sdc /dev/sdd 
#-C创建md0,-n指定由2块硬盘创建,-a yes自动创建设备文件,-l 指定raid 0,后面指定成员硬盘
mdadm: Defaulting to version 1.2 metadata  
mdadm: array /dev/md0 started.   #创建md0成功

[root@centos6.9 ~]#mdadm -D /dev/md0   #查看创建的md0的详细信息
/dev/md0:
        Version : 1.2
  Creation Time : Tue Jun 20 19:53:17 2017
     Raid Level : raid0   #raid等级
     Array Size : 20955136 (19.98 GiB 21.46 GB)  #总容量
   Raid Devices : 2   #raid硬盘数
  Total Devices : 2   #总硬盘数
    Persistence : Superblock is persistent
    Update Time : Tue Jun 20 19:53:17 2017
          State : clean 
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0
     Chunk Size : 512K  #分散在硬盘中块的大小
           Name : centos6.9:0  (local to host centos6.9)
           UUID : cd351fb1:b45416d3:5ac664ae:6d130fd2    #raid的UUID号
         Events : 0
    Number   Major   Minor   RaidDevice State
       0       8       32        0      active sync   /dev/sdc  #成员1
       1       8       48        1      active sync   /dev/sdd  #成员2

root@centos6.9 ~]#fdisk /dev/md0   #用fdisk管理/md0分区

Command (m for help): n    #创建一个分区
Command action
   e   extended                   #扩展分区
   p   primary partition (1-4)    #主分区
p       #这里选了p,创建一个主分区
Partition number (1-4): 1  #选择分区编号1
First cylinder (1-5238784, default 257 ): #默认从的257个扇区开始,这里选择默认
Last cylinder, +cylinders or +size{K,M,G} (257-5238784, default 5238784): +10G   #创建一个10G的分区

Command (m for help): p   #查看分区

Disk /dev/md0: 21.5 GB, 21458059264 bytes
2 heads, 4 sectors/track, 5238784 cylinders
Units = cylinders of 8 * 512 = 4096 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 524288 bytes / 1048576 bytes
Disk identifier: 0x861106f0

      Device Boot      Start         End      Blocks   Id  System
/dev/md0p1             257     2621696    10485760   83  Linux

Command (m for help): w    #保存退出
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.
[root@centos6.9 ~]#fdisk -l     #查看硬盘分区,因为硬盘比较多所以只显示了md0
Disk /dev/md0: 21.5 GB, 21458059264 bytes  #硬盘大小
2 heads, 4 sectors/track, 5238784 cylinders
Units = cylinders of 8 * 512 = 4096 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 524288 bytes / 1048576 bytes
Disk identifier: 0xdbb02828

    Device Boot      Start         End      Blocks   Id  System
/dev/md0p1              257     2621440    10485758   83  Linux     #硬盘里的分区

[root@centos6.9 ~]#mkfs.ext4 /dev/md0p1  #格式化md0p1分区,文件系统ext4

[root@centos6.9 ~]#mkdir /raid  #创建raid文件夹
[root@centos6.9 ~]#mount /dev/md0 /raid/  #把raid挂载到raid目录上
[root@centos6.9 ~]#df  #查看挂载信息
Filesystem     1K-blocks    Used Available Use% Mounted on
/dev/sda2      100660656 3598692  91941964   4% /
tmpfs             502056       8    502048   1% /dev/shm
/dev/sda3       50264772   56396  47648376   1% /app
/dev/sda1         991512   34932    905380   4% /boot
/dev/sdb1       30838496   45008  29220328   1% /test
/dev/md0        20494972   44992  19402224   1% /raid  挂载成功

[root@centos6.9 ~]#vim /etc/fstab   #修改文件保存挂载,如果不写入文件的话,开机之后不会自动挂载
UUID=80f63701-5c1b-4dc1-9864-7c1247ed8561 /                       ext4    defaults        1 1
UUID=daf6631d-90ab-45dc-b5b5-20eb52476056 /app                    ext4    defaults        1 2
UUID=87c9aa50-7b7a-459e-babc-87bfaf5b49f2 /boot                   ext4    defaults        1 2
UUID=2f7f0957-6978-4028-ac0d-966fb8d486e5 swap                    swap    defaults        0 0
UUID=0ec85016-ffa5-4d52-b353-b55b0c239228  /raid ext4   defaults        0 0    #在里面加一行,参考系统的格式写
#在添加的时候要写文件的UUID号,以防止设备名变更无法挂载。
[root@centos6.9 ~]#blkid /dev/md0p1   #查看分区的UUID
/dev/md0p1: UUID="0ec85016-ffa5-4d52-b353-b55b0c239228" TYPE="ext4"    #分区的UUID号和文件系统类型  

[root@centos6.9 ~]#mdadm -D -s /dev/md0 >> /etc/mdadm.conf   #把md0的配置追加进/etc/mdadm.conf文件

RAID
1通过磁盘数据镜像实现数据冗余,在成对的独立磁盘上产生互为备份的数据。当原始数据繁忙时,可直接从镜像拷贝中读取数据,因此RAID
1可以提高读取性能。RAID
1是磁盘阵列中单位成本最高的,但提供了很高的数据安全性和可用性。当一个磁盘失效时,系统可以自动切换到镜像磁盘上读写,而不需要重组失效的数据。

Shell 命令: 

Hex code (type L to list codes): fd #fd Linux raid auto

2.3 raid 1

工作原理:

# mkdir /mnt/dvd/

Changed system type of partition 1 to fd (Linux raid autodetect)

[root@centos6.9 ~]#mdadm -C /dev/md1 -n 2 -a yes -l 1  /dev/sdc /dev/sdd   #创建raid1
/dev/md1:
        Version : 1.2
  Creation Time : Tue Jun 20 21:27:53 2017
     Raid Level : raid1    #raid 等级
     Array Size : 10477568 (9.99 GiB 10.73 GB)    #raid1容量
  Used Dev Size : 10477568 (9.99 GiB 10.73 GB)    #镜像空间大小
   Raid Devices : 2   #raid硬盘数
  Total Devices : 2   #总硬盘数
    Persistence : Superblock is persistent

    Update Time : Tue Jun 20 21:28:25 2017
          State : clean, resyncing 
 Active Devices : 2    #主动设备
Working Devices : 2    #工作设备
 Failed Devices : 0    #问题设备
  Spare Devices : 0    #备用设备

  Resync Status : 66% complete

           Name : centos6.9:1  (local to host centos6.9)
           UUID : 2244ef88:05bcf8d4:3de8c6f6:a65ee55b
         Events : 10

    Number   Major   Minor   RaidDevice State
       0       8       32        0      active sync   /dev/sdc     #成员
       1       8       48        1      active sync   /dev/sdd     #成员

RAID1是将一个两块硬盘所构成RAID磁盘阵列,其容量仅等于一块硬盘的容量,因为另一块只是当作数据“镜像”。RAID1磁盘阵列显然是最可靠的一种阵列,因为它总是保持一份完整的数据备份。它的性能自然没有RAID0磁盘阵列那样好,但其数据读取确实较单一硬盘来的快,因为数据会从两块硬盘中较快的一块中读出。RAID1磁盘阵列的写入速度通常较慢,因为数据得分别写入两块硬盘中并做比较。RAID1磁盘阵列一般支持“热交换”,就是说阵列中硬盘的移除或替换可以在系统运行时进行,无须中断退出系统。RAID1磁盘阵列是十分安全的,不过也是较贵一种RAID磁盘阵列解决方案,因为两块硬盘仅能提供一块硬盘的容量。RAID1磁盘阵列主要用在数据安全性很高,而且要求能够快速恢复被破坏的数据的场合。

# mount -o loop /root/rhel5.1-dvd.iso /mnt/dvd

Command (m for help): w #保存退出

2.4 raid 5

在这里,需要注意的是,读只能在一块磁盘上进行,并不会进行并行读取,性能取决于硬盘中较快的一块。写的话通常比单块磁盘要慢,虽然是并行写,即对两块磁盘的写入是同时进行的,但因为要比较两块硬盘中的数据,所以性能比单块磁盘慢。

# cd /mnt

3.按照上步骤处理四块硬盘,然后可以使用命令fdisk
–l再次查看,可以看到四块硬盘已经完成准备。

[root@centos6.9 ~]#mdadm -C /dev/md2 -n 3 -x 1 -a yes -l 5  /dev/sdc /dev/sdd /dev/sde  /dev/sdf  
                  #指定三个成员硬盘,同是用-x指定了一个备用盘
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md2 started.  #创建成功
[root@centos6.9 ~]#mdadm -D /dev/md2 
/dev/md2:
        Version : 1.2
  Creation Time : Tue Jun 20 21:49:02 2017  #创建时间
     Raid Level : raid5   #等级
     Array Size : 20955136 (19.98 GiB 21.46 GB)   #可用容量
  Used Dev Size : 10477568 (9.99 GiB 10.73 GB)    #校验数据容量
   Raid Devices : 3  #
  Total Devices : 4
    Persistence : Superblock is persistent

    Update Time : Tue Jun 20 21:49:55 2017
          State : clean 
 Active Devices : 3    #raid硬盘数
Working Devices : 4    #总硬盘数
 Failed Devices : 0    #损坏硬盘数
  Spare Devices : 1    #备用硬盘数

         Layout : left-symmetric
     Chunk Size : 512K   #分散在硬盘中的块大小,不指定默认为512KB

           Name : centos6.9:2  (local to host centos6.9)
           UUID : e33c123d:e4598fda:c6b15be6:7cc8cf29   #uuid
         Events : 18

    Number   Major   Minor   RaidDevice State
       0       8       32        0      active sync   /dev/sdc  #成员
       1       8       48        1      active sync   /dev/sdd
       4       8       64        2      active sync   /dev/sde

       3       8       80        -      spare   /dev/sdf       #空闲备份硬盘 
       #空闲盘,不用来储存数据,在其中一块raid硬盘出现问题后自动顶替并通过运算恢复数据

优缺点:

# createrepo .

三、配置

2.5 有容错性的raid实验其容错性,这里以raid5来实验。

RAID1通过硬盘数据镜像实现数据的冗余,保护数据安全,在两块盘上产生互为备份的数据,当原始数据繁忙时,可直接从镜像备份中读取数据,因此RAID1可以提供读取性能。
RAID1是硬盘中单位成本最高的,但提供了很高的数据安全性和可用性,当一个硬盘失效时,系统可以自动切换到镜像硬盘上读/写,并且不需要重组失效的数据。

CD ISO

1.创建raid非常简单,只需要一条命令即可。

[root@centos6.9 raid]#echo 11111 >  11   #创建一个文件,在里面写入11111
[root@centos6.9 raid]#cat 11   #查看文件
11111

[root@centos6.9 ~]#mdadm /dev/md2 -f /dev/sdc    #把sdc标记为损坏

[root@centos6.9 ~]#mdadm -D /dev/md2    #查看md2状态,因为信息过多,所以这里只显示硬盘的状态
 Active Devices : 3
Working Devices : 4   
 Failed Devices : 1   #这里显示有一个损坏的硬盘
  Spare Devices : 0   #没有空闲的硬盘了
    Number   Major   Minor   RaidDevice State
       3       8       80        0      active sync   /dev/sdf     #sdf已经替换了sdc
       1       8       48        1      active sync   /dev/sdd
       4       8       64        2      active sync   /dev/sde

       0       8       32        -      faulty   /dev/sdc  #sdc被标记为坏掉的
[root@centos6.9 raid]#cat 11  #看看数据有没有丢失
11111  #数据没有问题

总结:

如果您使用的是多个 CD iso 文件,需要先复制到系统上,挂载后制作 yum
仓库。

[[email protected]
/]# mdadm -C -v /dev/md0 -l5 -n3 /dev/sda1 /dev/sdb1 /dev/sdc1 -x1
/dev/sdd1

2.6 移除和添加硬盘,我这里添加了一块硬盘sdg

磁盘空间使用率:50%,故成本最高。

有几个 ISO 就创建几个目录,并将对应的 ISO 挂载上去:

#参看帮助mdadm –create –help

[root@centos6.9 raid]#mdadm /dev/md2 -r /dev/sdc     #把上面实验标记为损坏的sdc从md2中移除
mdadm: hot removed /dev/sdc from /dev/md2
[root@centos6.9 raid]#mdadm -D /dev/md2     #查看md2的状态
/dev/md2:
        Version : 1.2
  Creation Time : Tue Jun 20 21:49:02 2017
     Raid Level : raid5  
     Array Size : 20955136 (19.98 GiB 21.46 GB)
  Used Dev Size : 10477568 (9.99 GiB 10.73 GB)
   Raid Devices : 3
  Total Devices : 3   #这里的总硬盘数只有三个
          State : clean 
 Active Devices : 3
Working Devices : 3
 Failed Devices : 0   #没有损坏硬盘
  Spare Devices : 0
    Number   Major   Minor   RaidDevice State
       3       8       80        0      active sync   /dev/sdf   
       1       8       48        1      active sync   /dev/sdd
       4       8       64        2      active sync   /dev/sde    #没有sdc的信息了


[root@centos6.9 raid]#mdadm  /dev/md2  -a /dev/sdg   #把sdg添加到md2中
[root@centos6.9 raid]#mdadm -D /dev/md2   #查看md2的信息,有省略
/dev/md2:
   Raid Devices : 3  
  Total Devices : 4   #总硬盘数
          State : clean 
 Active Devices : 3    
Working Devices : 4    #总硬盘数
 Failed Devices : 0    #损坏硬盘数
  Spare Devices : 1    #有一个备用盘
           Name : centos6.9:2  (local to host centos6.9)
           UUID : e33c123d:e4598fda:c6b15be6:7cc8cf29
         Events : 39

    Number   Major   Minor   RaidDevice State
       3       8       80        0      active sync   /dev/sdf
       1       8       48        1      active sync   /dev/sdd
       4       8       64        2      active sync   /dev/sde

       5       8       96        -      spare   /dev/sdg   #sdg为备份盘

读性能:只能在一个磁盘上读取,取决于磁盘中较快的那块盘

Shell 命令: 

mdadm: layout defaults to left-symmetric

如果想要扩展只想raid硬盘的盘数用:

写性能:两块磁盘都要写入,虽然是并行写入,但因为要比对,故性能单块磁盘慢。

# mkdir -p /mnt/{1,2,3,4,5,6}

mdadm: chunk size defaults to 64K

[root@centos6.9 raid]#mdadm -G /dev/md2 -n 4 -a /dev/sdg     

    Update Time : Tue Jun 20 22:48:47 2017
          State : clean, reshaping 
 Active Devices : 4  #raid盘数 
Working Devices : 4  #总盘数
 Failed Devices : 0
  Spare Devices : 0  #没有备份盘
 Number   Major   Minor   RaidDevice State
       3       8       80        0      active sync   /dev/sdf
       1       8       48        1      active sync   /dev/sdd
       4       8       64        2      active sync   /dev/sde
       5       8       96        3      active sync   /dev/sdg   #不会把sdg添加为备用盘,直接参与数据储存

冗余:只要系统中任何一对镜像盘中有一块磁盘可以使用,甚至可以在一半数量的硬盘出现问题时系统都可以正常运行。

# mount -o loop rhel5.1-disc1.iso /mnt/1

mdadm: size set to 8388544K

2.7 停用、启动raid设备

 

# mount -o loop rhel5.1-disc2.iso /mnt/2

mdadm: array /dev/md0 started.

[root@centos6.9 ~]#mdadm -D -s >> /etc/mdadm.conf   #在创建好raid设备后一定要,把配置写入文件,否则无法启动
[root@centos6.9 ~]#cat /etc/mdadm.conf  #查看文件
ARRAY /dev/md2 metadata=1.2 name=centos6.9:2 UUID=cbb20529:52eced42:77605adf:0a416662

[root@centos6.9 ~]#mdadm -S /dev/md2  #停用raid设备md2
mdadm: stopped /dev/md2
[root@centos6.9 ~]#mdadm -D /dev/md2  #再来查看md2的信息
mdadm: cannot open /dev/md2: No such file or directory   #提示没有这个目录或文件,无法打开
[root@centos6.9 ~]#mdadm -A -s  /dev/md2   #启用设备
mdadm: /dev/md2 has been started with 4 drives.  #启动成功
[root@centos6.9 ~]#mdadm -D /dev/md2    #查看md2的状态
/dev/md2:   
        Version : 1.2                                   #可以查看了
  Creation Time : Tue Jun 20 23:02:38 2017
     Raid Level : raid5
     Array Size : 31432704 (29.98 GiB 32.19 GB)
  Used Dev Size : 10477568 (9.99 GiB 10.73 GB)
   Raid Devices : 4
  Total Devices : 4                                     
#省略......
    Number   Major   Minor   RaidDevice State
       0       8       80        0      active sync   /dev/sdf
       1       8       48        1      active sync   /dev/sdd
       2       8       64        2      active sync   /dev/sde
       4       8       96        3      active sync   /dev/sdg

RAID 5

# mount -o loop rhel5.1-disc3.iso /mnt/3

[[email protected]
/]#

注:如果没有写配置文件可以用下面的命令来强制启动,但会丢失一些配置信息

澳门威斯尼人平台登录 6

# mount -o loop rhel5.1-disc4.iso /mnt/4

2.创建文件系统为ext3

mdadm –R /dev/md2

 

# mount -o loop rhel5.1-disc5.iso /mnt/5

[[email protected]
/]# mkfs.ext3 /dev/md0

2.8 删除raid设备

定义:

创建 yum 仓库:

创建目录/mnt/raid,挂载

  • 1.先用umont取消设备挂载
  • 2.停止raid设备
  • 3.删除/etc/fstab里挂载信息和/etc/mdadm.conf文件里的配置行
  • 4.删除每个磁盘的raid信息: mdadm --zero-superblock /dev/sdd
    注:如果不用第4步的命令,直接格式化硬盘,raid信息会清除不干净有残留,重启之后设备会重新创建。

RAID 5是RAID 0和RAID 1的折中方案。RAID
5具有和RAID0相近似的数据读取速度,只是多了一个奇偶校验信息,写入数据的速度比对单个磁盘进行写入操作稍慢。同时由于多个数据对应一个奇偶校验信息,RAID5的磁盘空间利用率要比RAID
1高,存储成本相对较低,是目前运用较多的一种解决方案。

Shell 命令: 

[[email protected]
/]# mkdir /mnt/raid

工作原理:

# cd /mnt/

[[email protected]
/]# mount /dev/md0 /mnt/raid

RAID5把数据和相对应的奇偶校验信息存储到组成RAID5的各个磁盘上,并且奇偶校验信息和相对应的数据分别存储于不同的磁盘上,其中任意N-1块磁盘上都存储完整的数据,也就是说有相当于一块磁盘容量的空间用于存储奇偶校验信息。因此当RAID5的一个磁盘发生损坏后,不会影响数据的完整性,从而保证了数据安全。当损坏的磁盘被替换后,RAID还会自动利用剩下奇偶校验信息去重建此磁盘上的数据,来保持RAID5的高可靠性。

# createrepo .

3.了解raid状况

做raid 5阵列所有磁盘容量必须一样大,当容量不同时,会以最小的容量为准。
最好硬盘转速一样,否则会影响性能,而且可用空间=磁盘数n-1,Raid 5
没有独立的奇偶校验盘,所有校验信息分散放在所有磁盘上,
只占用一个磁盘的容量。

定义 yum 仓库

[[email protected]
/]# mdadm -D /dev/md0

总结:

创建 yum
仓库的定义文件:/etc/yum.repos.d/dvdiso.repo,然后加入以下内容:

4.启动和停止

磁盘空间利用率:(N-1)/N,即只浪费一块磁盘用于奇偶校验。

Shell 命令: 

停止之前需要umount,然后mdadm –S /dev/md0

读性能:(n-1)*单块磁盘的读性能,接近RAID0的读性能。

[DVDISO]

启动:[[email protected]
/]# mdadm -A /dev/md0 /dev/sda1 /dev/sdb1 /dev/sdc1 /dev/sdd1

写性能:比单块磁盘的写性能要差(这点不是很明白,不是可以并行写入么?)

name=DVD ISO

如果已经建立了配置文件,启动可使用命令mdadm –As /dev/md0

冗余:只允许一块磁盘损坏。

baseurl=file:///mnt/

5.关于配置文件

 

enabled=1

系统中包含一个配置文件的样例/usr/share/doc/mdadm-1.6.0/mdadm.conf-example,可以参照建立/dev/mdadm.conf配置文件,也可通过命令mdadm
–Ds查看详情,然后使用vi编辑保存文本文件

RAID10

gpgcheck=0

[[email protected]
/]# vi /etc/mdadm.conf

澳门威斯尼人平台登录 7

测试 yum 仓库

DEVICE /dev/sd[abcd]1

定义:

强烈建议执行 ‘yum clean all’ 命令,将所有 yum metadata
等信息清空,再重新获取最新的仓库信息:

ARRAY /dev/md0 level=raid5 num-devices=3
UUID=63cb965b:79486986:d389c551:67677f20

RAID10也被称为镜象阵列条带。象RAID0一样,数据跨磁盘抽取;象RAID1一样,每个磁盘都有一个镜象磁盘,
所以RAID 10的另一种会说法是 RAID
0+1。RAID10提供100%的数据冗余,支持更大的卷尺寸,但价格也相对较高。对大多数只要求具有冗余度而不必考虑价格的应用来说,RAID10提供最好的性能。使用RAID10,可以获得更好的可靠性,因为即使两个物理驱动器发生故障(每个阵列中一个),数据仍然可以得到保护。RAID10需要4

Shell 命令: 

为使系统reboot后能够自动挂载raid目录,需要修改/etc/fstab文件,加入如下一行:/dev/md0
/mnt/raid ext3 defaults 0 0

  • 2*N 个磁盘驱动器(N >=0), 而且只能使用其中一半(或更小,
    如果磁盘大小不一)的磁盘用量, 例如 4 个 250G 的硬盘使用RAID10 阵列,
    实际容量是 500G。

# yum clean all

四、故障测试

实现原理:

# yum list

1.测试前,在/mnt/radi下建立一个文件使用

Raid10其实结构非常简单,首先创建2个独立的Raid1,然后将这两个独立的Raid1组成一个Raid0,当往这个逻辑Raid中写数据时,数据被有序的写入两个Raid1中。磁盘1和磁盘2组成一个Raid1,磁盘3和磁盘4又组成另外一个Raid1;这两个Raid1组成了一个新的Raid0。如写在硬盘1上的数据1、3、5、7,写在硬盘2中则为数据1、3、5、7,硬盘中的数据为0、2、4、6,硬盘4中的数据则为0、2、4、6,因此数据在这四个硬盘上组合成Raid10,且具有raid0和raid1两者的特性。
虽然Raid10方案造成了50%的磁盘浪费,但是它提供了200%的速度和单磁盘损坏的数据安全性,并且当同时损坏的磁盘不在同一Raid1中,就能保证数据安全性。假如磁盘中的某一块盘坏了,整个逻辑磁盘仍能正常工作的。
当我们需要恢复RAID10中损坏的磁盘时,只需要更换新的硬盘,按照RAID10的工作原理来进行数据恢复,恢复数据过程中系统仍能正常工作。原先的数据会同步恢复到更换的硬盘中。

如果在 ‘yum list’
命令的输出中能够看到刚才制作的仓库里的软件包的名字,那就是 OK
了。再试着安装一个软件包看是否成功:

[[email protected]
raid]# ll / |tee ./ls.txt

总结:

Shell 命令: 

mdadm自带命令可以标记某块硬盘为损坏,参看帮助mdadm –manage –h。

磁盘空间利用率:50%。

# yum install cyrus-sasl.i386

故障测试中,标记sda硬盘损坏

读性能:N/2*单块硬盘的读性能

如果是 x86_64 平台,则将后面的 i386 改为 x86_64:

[[email protected]
/]# mdadm /dev/md0 -f /dev/sda1

写性能:N/2*单块硬盘的写性能

Shell 命令: 

mdadm: set /dev/sda1 faulty in /dev/md0

冗余:只要一对镜像盘中有一块磁盘可以使用就没问题。

# yum install cyrus-sasl.x86_64

2.查看状态

 

如果安装成功,表示 yum 仓库和 RPM 包都没问题。

[[email protected]
/]# more /proc/mdstat

参考:

 

Personalities : [raid5]

百度百科

版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明

md0 : active raid5 sdd1[3] sdc1[2] sdb1[1] sda1[4](F)

澳门威斯尼人平台登录 8

16771584 blocks level 5, 64k chunk, algorithm 2 [3/2] [_UU]

[====>…………….] recovery = 22.8% (1916928/8385792)
finish=1.9min speed=55892K/sec

unused devices:

[[email protected]
/]#

因为sdd硬盘为热备,系统显示raid重构中,进度22.8%,且sda1标记(F)。

稍等再次查看:

[[email protected]/]#
more /proc/mdstat

Personalities : [raid5]

md0 : active raid5 sdd1[0] sdc1[2] sdb1[1] sda1[3](F)

16771584 blocks level 5, 64k chunk, algorithm 2 [3/3] [UUU]

unused devices:

[[email protected]
/]# mdadm -D /dev/md0

/dev/md0:

Version : 00.90.01

Creation Time : Fri Jun 1 13:00:31 2007

Raid Level : raid5

Array Size : 16771584 (15.99 GiB 17.17 GB)

Device Size : 8385792 (7.100 GiB 8.59 GB)

Raid Devices : 3

1.操作系统为CentOS4.4,mdadm软件为系统自带的,版本1.6.0-3
2.hda安装的是系统,sda、sdb、sdc、sdd四块硬盘建立Raid5,其中sdd为热备。…

发表评论

电子邮件地址不会被公开。 必填项已用*标注