溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

理論+實(shí)驗(yàn) 服務(wù)器硬件即RAID配置實(shí)戰(zhàn)

發(fā)布時(shí)間:2020-07-07 18:48:34 來(lái)源:網(wǎng)絡(luò) 閱讀:264 作者:wx5d8b05ec4cbc3 欄目:系統(tǒng)運(yùn)維

[TOC]

前言:

磁盤(pán)陣列(Redundant Arrays of Independent Drives,RAID),有“獨(dú)立磁盤(pán)構(gòu)成的具有冗余能力的陣列”之意。
磁盤(pán)陣列是由很多塊獨(dú)立的磁盤(pán),組合成一個(gè)容量巨大的磁盤(pán)組,利用個(gè)別磁盤(pán)提供數(shù)據(jù)所產(chǎn)生加成效果提升整個(gè)磁盤(pán)系統(tǒng)效能。利用這項(xiàng)技術(shù),將數(shù)據(jù)切割成許多區(qū)段,分別存放在各個(gè)硬盤(pán)上。
磁盤(pán)陣列還能利用同位檢查(Parity Check)的觀念,在數(shù)組中任意一個(gè)硬盤(pán)故障時(shí),仍可讀出數(shù)據(jù),在數(shù)據(jù)重構(gòu)時(shí),將數(shù)據(jù)經(jīng)計(jì)算后重新置入新硬盤(pán)中

一:服務(wù)器硬件

常見(jiàn)的服務(wù)器硬件有:cpu,內(nèi)存,網(wǎng)卡,硬盤(pán),遠(yuǎn)程管理口,陣列卡,電源,主板
cpu一般是雙芯的,即安裝兩個(gè)cpu

內(nèi)存:支持內(nèi)存容量很高,基本上都在4TB

硬盤(pán):通常都會(huì)對(duì)硬盤(pán)做raid,來(lái)保證數(shù)據(jù)的高效傳輸和數(shù)據(jù)安全可靠

二:RAID磁盤(pán)陣列詳解

1)RAID磁盤(pán)陣列介紹

  • RAID是英文Redundant Array of Independent Disks的縮寫(xiě),中文簡(jiǎn)稱(chēng)為獨(dú)立冗余磁盤(pán)陣列
  • RAID是吧多塊獨(dú)立的物理硬盤(pán)按不同的方式組合起來(lái)形成一個(gè)硬盤(pán)組(邏輯硬盤(pán)),從而提供比單個(gè)硬盤(pán)更高的存儲(chǔ)性能額和提供數(shù)據(jù)備份技術(shù)
  • 組成磁盤(pán)陣列的不同方式稱(chēng)為RAID級(jí)別(RAID Levels),常用的RAID級(jí)別有以下幾種:RAID0,RAID1,RAID5,RAID6,RAID1+0等

2) RAID 0磁盤(pán)陣列介紹

  • RAID 0連續(xù)以位或字節(jié)為單位分個(gè)數(shù)據(jù),并行同時(shí)讀/寫(xiě)于多個(gè)磁盤(pán)上,因此具有很高的數(shù)據(jù)傳輸率,但他沒(méi)有數(shù)據(jù)冗余(即沒(méi)有備份),因此并不能算是真正的RAID結(jié)構(gòu)

  • RAID 0只是單純地提高性能,并沒(méi)有為數(shù)據(jù)的可靠性提供保證,可靠性低而且其中的一個(gè)磁盤(pán)失效將影響到所有數(shù)據(jù)

  • RAID 0不能應(yīng)用于數(shù)據(jù)安全性要求高的場(chǎng)合,常應(yīng)用于多讀寫(xiě)的場(chǎng)景

  • RAID 0 在windows中叫做帶區(qū)卷(linux叫條帶券),

    容量總和是兩個(gè)磁盤(pán)相加

理論+實(shí)驗(yàn) 服務(wù)器硬件即RAID配置實(shí)戰(zhàn)

?

3)RAID 1磁盤(pán)陣列介紹

  • 通過(guò)磁盤(pán)數(shù)據(jù)鏡像實(shí)現(xiàn)數(shù)據(jù)冗余(即備份),在成堆的獨(dú)立磁盤(pán)上產(chǎn)生互為備份的數(shù)據(jù)
  • 在原始數(shù)據(jù)繁忙時(shí),可直接從鏡像拷貝中讀取數(shù)據(jù),因此RAID 1可以提高讀取性能;寫(xiě)入速度不變,容量只有磁盤(pán)(偶數(shù))總?cè)萘康亩种?,因此成本最高,另外一半用?lái)備份數(shù)據(jù),可靠性高
  • RAID 1是磁盤(pán)陣列中單位成本最高的,但提供了很高的數(shù)據(jù)安全性和可用性。當(dāng)一個(gè)磁盤(pán)失效時(shí),系統(tǒng)可以自動(dòng)切換到鏡像磁盤(pán)上讀寫(xiě),而不需要重組失效的數(shù)據(jù)

理論+實(shí)驗(yàn) 服務(wù)器硬件即RAID配置實(shí)戰(zhàn)

4)RAID 5磁盤(pán)陣列介紹

  • N(N>=3)塊盤(pán)組成陣列,一份數(shù)據(jù)產(chǎn)生N-1個(gè)條帶,同時(shí)還有一份校驗(yàn)數(shù)據(jù),共N份數(shù)據(jù)在N塊盤(pán)上循環(huán)均衡存儲(chǔ)
  • N塊盤(pán)同時(shí)讀寫(xiě),讀性能很高,但由于有校驗(yàn)機(jī)制的問(wèn)題,即校驗(yàn)數(shù)據(jù)的存在,寫(xiě)性能相對(duì)不高
  • 容量為(N-1)/N*總磁盤(pán)容量
  • 可靠性高,允許壞1塊盤(pán),不影響所有數(shù)據(jù),把壞的磁盤(pán)換下來(lái),可以利用校驗(yàn)數(shù)據(jù)來(lái)恢復(fù)丟失數(shù)據(jù)

理論+實(shí)驗(yàn) 服務(wù)器硬件即RAID配置實(shí)戰(zhàn)

5)RAID 6磁盤(pán)陣列介紹

  • N(N>=4)塊盤(pán)組成陣列,容量為(N-2)/N*磁盤(pán)總?cè)萘?/li>
  • 與RAID 5相比,RAID 6增加了第二個(gè)獨(dú)立的奇偶校驗(yàn)信息塊。兩個(gè)獨(dú)立的奇偶系統(tǒng)使用不同的算法(相當(dāng)于二元一次方程),即時(shí)兩塊磁盤(pán)同時(shí)失效也不會(huì)影響數(shù)據(jù)的使用
  • 相對(duì)于RAID 5有更大的寫(xiě)損失,因此寫(xiě)性能相對(duì)較差
  • 線網(wǎng)上面用RAID 6 的比較多

理論+實(shí)驗(yàn) 服務(wù)器硬件即RAID配置實(shí)戰(zhàn)

6) RAID 1+0磁盤(pán)陣列介紹

  • N(偶數(shù),N>=4)塊盤(pán)兩兩鏡像后,再組合成一個(gè)RAID 0

  • 容量為N/2容量
  • N/2塊盤(pán)同時(shí)寫(xiě)入,N塊盤(pán)同時(shí)讀取
  • 性能高,可靠性高
  • 也是線網(wǎng)中常用的一種磁盤(pán)陣列

理論+實(shí)驗(yàn) 服務(wù)器硬件即RAID配置實(shí)戰(zhàn)

三:RAID陣列卡介紹

3.1陣列卡

陣列卡就是用來(lái)實(shí)現(xiàn)RAID功能的板卡,通常是由I/O(imput輸入/output輸出)處理器、硬盤(pán)控制器、硬盤(pán)連接器和緩存等一系列零組件構(gòu)成的

不同的RAID卡支持的RAID功能不同,例如支持RAID0、RAID1、RAID5、RAID10等

RAID卡的接口類(lèi)型

IDE接口、SCSI接口、SATA接口和SAS接口

3.2 陣列卡的緩存

緩存(Csche)是RAID卡與外部總線交換數(shù)據(jù)的場(chǎng)所,RAID卡先將數(shù)據(jù)傳送到緩存,在由緩存和外邊數(shù)據(jù)總線交換數(shù)據(jù)

緩存的大小與速度是直接關(guān)系到RAID卡的實(shí)際傳輸速度的重要因素

不同的RAID卡出廠時(shí)配備的內(nèi)存容量不同,一半為幾兆到數(shù)百兆容量不等

四:構(gòu)建軟RAID磁盤(pán)陣列

案例:構(gòu)建軟RAID磁盤(pán)陣列

需求描述:

  • 為L(zhǎng)inux服務(wù)器添加4塊SCSI硬盤(pán)
  • 使用mdadm軟件包,構(gòu)建RAID磁盤(pán)陣列,提高磁盤(pán)存儲(chǔ)的性能和可靠性

思路:

  • 安裝mdadm
  • 準(zhǔn)備用于RAID陣列的分區(qū)
    • 為L(zhǎng)inux服務(wù)器添加4塊SCSI硬盤(pán),并使用fdisk工具各劃分出一塊2GB的分區(qū),依次為/dev/sdb1、/dev/sdc1、/dev/sdd1、/dev/sde1
    • 將其類(lèi)型ID更改為“fd'”,對(duì)應(yīng)為“Linux raid autodetect” ,表示支持用于RAID磁盤(pán)陣列
  • 創(chuàng)建RAID設(shè)備并建立文件系統(tǒng)
  • 掛載并使用文件系統(tǒng)
[root@localhost ~]# rpm -q mdadm    查看madadam工具是否已安裝
mdadm-4.0-5.el7.x86_64  顯示安裝

接下來(lái)開(kāi)始配置硬盤(pán)

理論+實(shí)驗(yàn) 服務(wù)器硬件即RAID配置實(shí)戰(zhàn)

當(dāng)前磁盤(pán)情況

[root@localhost ~]# fdisk -l    查看所有磁盤(pán)信息

磁盤(pán) /dev/sda:42.9 GB, 42949672960 字節(jié),83886080 個(gè)扇區(qū)
Units = 扇區(qū) of 1 * 512 = 512 bytes
扇區(qū)大小(邏輯/物理):512 字節(jié) / 512 字節(jié)
I/O 大小(最小/最佳):512 字節(jié) / 512 字節(jié)
磁盤(pán)標(biāo)簽類(lèi)型:dos
磁盤(pán)標(biāo)識(shí)符:0x000a55e9

   設(shè)備 Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048    12584959     6291456   83  Linux
/dev/sda2        12584960    79710207    33562624   8e  Linux LVM

磁盤(pán) /dev/mapper/centos-root:21.5 GB, 21474836480 字節(jié),41943040 個(gè)扇區(qū)
Units = 扇區(qū) of 1 * 512 = 512 bytes
扇區(qū)大小(邏輯/物理):512 字節(jié) / 512 字節(jié)
I/O 大小(最小/最佳):512 字節(jié) / 512 字節(jié)

磁盤(pán) /dev/mapper/centos-swap:2147 MB, 2147483648 字節(jié),4194304 個(gè)扇區(qū)
Units = 扇區(qū) of 1 * 512 = 512 bytes
扇區(qū)大小(邏輯/物理):512 字節(jié) / 512 字節(jié)
I/O 大小(最小/最佳):512 字節(jié) / 512 字節(jié)

磁盤(pán) /dev/mapper/centos-home:10.7 GB, 10737418240 字節(jié),20971520 個(gè)扇區(qū)
Units = 扇區(qū) of 1 * 512 = 512 bytes
扇區(qū)大小(邏輯/物理):512 字節(jié) / 512 字節(jié)
I/O 大小(最小/最佳):512 字節(jié) / 512 字節(jié)
[root@localhost ~]# init 6  重啟系統(tǒng)
[root@localhost ~]# fdisk -l    重新查看所有磁盤(pán)信息,發(fā)現(xiàn)新增的四塊磁盤(pán)

磁盤(pán) /dev/sdb:21.5 GB, 21474836480 字節(jié),41943040 個(gè)扇區(qū)
Units = 扇區(qū) of 1 * 512 = 512 bytes
扇區(qū)大小(邏輯/物理):512 字節(jié) / 512 字節(jié)
I/O 大小(最小/最佳):512 字節(jié) / 512 字節(jié)

磁盤(pán) /dev/sdc:21.5 GB, 21474836480 字節(jié),41943040 個(gè)扇區(qū)
Units = 扇區(qū) of 1 * 512 = 512 bytes
扇區(qū)大小(邏輯/物理):512 字節(jié) / 512 字節(jié)
I/O 大小(最小/最佳):512 字節(jié) / 512 字節(jié)

磁盤(pán) /dev/sdd:21.5 GB, 21474836480 字節(jié),41943040 個(gè)扇區(qū)
Units = 扇區(qū) of 1 * 512 = 512 bytes
扇區(qū)大小(邏輯/物理):512 字節(jié) / 512 字節(jié)
I/O 大小(最小/最佳):512 字節(jié) / 512 字節(jié)

磁盤(pán) /dev/sde:21.5 GB, 21474836480 字節(jié),41943040 個(gè)扇區(qū)
Units = 扇區(qū) of 1 * 512 = 512 bytes
扇區(qū)大小(邏輯/物理):512 字節(jié) / 512 字節(jié)
I/O 大小(最小/最佳):512 字節(jié) / 512 字節(jié)

開(kāi)始依次給每塊磁盤(pán)進(jìn)行分區(qū)

[root@localhost ~]# fdisk /dev/sdb  創(chuàng)建分區(qū),
歡迎使用 fdisk (util-linux 2.23.2)。

更改將停留在內(nèi)存中,直到您決定將更改寫(xiě)入磁盤(pán)。
使用寫(xiě)入命令前請(qǐng)三思。

Device does not contain a recognized partition table
使用磁盤(pán)標(biāo)識(shí)符 0x2ed1de1d 創(chuàng)建新的 DOS 磁盤(pán)標(biāo)簽。

命令(輸入 m 獲取幫助):n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): 
Using default response p
分區(qū)號(hào) (1-4,默認(rèn) 1):
起始 扇區(qū) (2048-41943039,默認(rèn)為 2048):
將使用默認(rèn)值 2048
Last 扇區(qū), +扇區(qū) or +size{K,M,G} (2048-41943039,默認(rèn)為 41943039):
將使用默認(rèn)值 41943039
分區(qū) 1 已設(shè)置為 Linux 類(lèi)型,大小設(shè)為 20 GiB

命令(輸入 m 獲取幫助):t
已選擇分區(qū) 1
Hex 代碼(輸入 L 列出所有代碼):l

 0  空              24  NEC DOS         81  Minix / 舊 Linu bf  Solaris        
 1  FAT12           27  隱藏的 NTFS Win 82  Linux 交換 / So c1  DRDOS/sec (FAT-
 2  XENIX root      39  Plan 9          83  Linux           c4  DRDOS/sec (FAT-
 3  XENIX usr       3c  PartitionMagic  84  OS/2 隱藏的 C:  c6  DRDOS/sec (FAT-
 4  FAT16 <32M      40  Venix 80286     85  Linux 擴(kuò)展      c7  Syrinx         
 5  擴(kuò)展            41  PPC PReP Boot   86  NTFS 卷集       da  非文件系統(tǒng)數(shù)據(jù) 
 6  FAT16           42  SFS             87  NTFS 卷集       db  CP/M / CTOS / .
 7  HPFS/NTFS/exFAT 4d  QNX4.x          88  Linux 純文本    de  Dell 工具      
 8  AIX             4e  QNX4.x 第2部分  8e  Linux LVM       df  BootIt         
 9  AIX 可啟動(dòng)      4f  QNX4.x 第3部分  93  Amoeba          e1  DOS 訪問(wèn)       
 a  OS/2 啟動(dòng)管理器 50  OnTrack DM      94  Amoeba BBT      e3  DOS R/O        
 b  W95 FAT32       51  OnTrack DM6 Aux 9f  BSD/OS          e4  SpeedStor      
 c  W95 FAT32 (LBA) 52  CP/M            a0  IBM Thinkpad 休 eb  BeOS fs        
 e  W95 FAT16 (LBA) 53  OnTrack DM6 Aux a5  FreeBSD         ee  GPT            
 f  W95 擴(kuò)展 (LBA)  54  OnTrackDM6      a6  OpenBSD         ef  EFI (FAT-12/16/
10  OPUS            55  EZ-Drive        a7  NeXTSTEP        f0  Linux/PA-RISC  
11  隱藏的 FAT12    56  Golden Bow      a8  Darwin UFS      f1  SpeedStor      
12  Compaq 診斷     5c  Priam Edisk     a9  NetBSD          f4  SpeedStor      
14  隱藏的 FAT16 <3 61  SpeedStor       ab  Darwin 啟動(dòng)     f2  DOS 次要       
16  隱藏的 FAT16    63  GNU HURD or Sys af  HFS / HFS+      fb  VMware VMFS    
17  隱藏的 HPFS/NTF 64  Novell Netware  b7  BSDI fs         fc  VMware VMKCORE 
18  AST 智能睡眠    65  Novell Netware  b8  BSDI swap       fd  Linux raid 自動(dòng)
1b  隱藏的 W95 FAT3 70  DiskSecure 多啟 bb  Boot Wizard 隱  fe  LANstep        
1c  隱藏的 W95 FAT3 75  PC/IX           be  Solaris 啟動(dòng)    ff  BBT            
1e  隱藏的 W95 FAT1 80  舊 Minix       
Hex 代碼(輸入 L 列出所有代碼):fd
已將分區(qū)“Linux”的類(lèi)型更改為“Linux raid autodetect”

命令(輸入 m 獲取幫助):p

磁盤(pán) /dev/sdb:21.5 GB, 21474836480 字節(jié),41943040 個(gè)扇區(qū)
Units = 扇區(qū) of 1 * 512 = 512 bytes
扇區(qū)大小(邏輯/物理):512 字節(jié) / 512 字節(jié)
I/O 大小(最小/最佳):512 字節(jié) / 512 字節(jié)
磁盤(pán)標(biāo)簽類(lèi)型:dos
磁盤(pán)標(biāo)識(shí)符:0x2ed1de1d

   設(shè)備 Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048    41943039    20970496   fd  Linux raid autodetect

命令(輸入 m 獲取幫助):w
The partition table has been altered!

Calling ioctl() to re-read partition table.
正在同步磁盤(pán)。

用fdisk /dev/sdc,fidsk /dev/sdd,fdisk /dev/sde命令去配置另外三塊磁盤(pán),

   設(shè)備 Boot      Start         End      Blocks   Id  System
/dev/sdc1            2048    41943039    20970496   fd  Linux raid autodetect

   設(shè)備 Boot      Start         End      Blocks   Id  System
/dev/sdd1            2048    41943039    20970496   fd  Linux raid autodetect
   設(shè)備 Boot      Start         End      Blocks   Id  System
/dev/sde1            2048    41943039    20970496   fd  Linux raid autodetect

接下來(lái)就可以以這四塊磁盤(pán)為素材,去配置raid,先配置個(gè)raid

可以先試一下raid0條帶卷,也叫做跨區(qū)卷

[root@localhost ~]# mdadm -C -v /dev/md0 -l0 -n2 /dev/sd[b-c]1  
#/dev/md0就是raid0名字,-C 創(chuàng)建,-v顯示過(guò)程 -l確定raid等級(jí),-n確定幾塊盤(pán),
還有一個(gè)備用選項(xiàng)-x
mdadm: chunk size defaults to 512K
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.
[root@localhost ~]# mdadm -D /dev/md0   #mdadm -D 顯示raid信息
/dev/md0:
           Version : 1.2
     Creation Time : Mon Nov  4 12:49:59 2019
        Raid Level : raid0
        Array Size : 41908224 (39.97 GiB 42.91 GB)
      Raid Devices : 2
     Total Devices : 2
       Persistence : Superblock is persistent

       Update Time : Mon Nov  4 12:49:59 2019
             State : clean 
    Active Devices : 2
   Working Devices : 2
    Failed Devices : 0
     Spare Devices : 0

        Chunk Size : 512K

Consistency Policy : none

              Name : localhost.localdomain:0  (local to host localhost.localdomain)
              UUID : d531230c:c4e71b72:00f695a1:f9ce404c
            Events : 0

    Number   Major   Minor   RaidDevice State
       0       8       17        0      active sync   /dev/sdb1
       1       8       33        1      active sync   /dev/sdc1
 [root@localhost ~]# cat /proc/mdstat   #還可以從/proc硬件信息目錄中查看
 raid對(duì)應(yīng)的文件/proc/mdstat
Personalities : [raid0] 
md0 : active raid0 sdc1[1] sdb1[0]
      41908224 blocks super 1.2 512k chunks

raid0 卷制作完畢,接下來(lái)格式化之后就可以掛載使用

[root@localhost ~]# mkfs.xfs /dev/md0   #格式化/dev/md0
meta-data=/dev/md0               isize=512    agcount=16, agsize=654720 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=10475520, imaxpct=25
         =                       sunit=128    swidth=256 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=5120, version=2
         =                       sectsz=512   sunit=8 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
[root@localhost ~]# mkdir /md0  #創(chuàng)建掛載點(diǎn)目錄
[root@localhost ~]# mount /dev/md0 /md0     #掛載
[root@localhost ~]# df -Th  #查看
文件系統(tǒng)                類(lèi)型      容量  已用  可用 已用% 掛載點(diǎn)
/dev/mapper/centos-root xfs        20G  3.3G   17G   17% /
devtmpfs                devtmpfs  977M     0  977M    0% /dev
tmpfs                   tmpfs     993M     0  993M    0% /dev/shm
tmpfs                   tmpfs     993M  9.0M  984M    1% /run
tmpfs                   tmpfs     993M     0  993M    0% /sys/fs/cgroup
/dev/sda1               xfs       6.0G  161M  5.9G    3% /boot
/dev/mapper/centos-home xfs        10G   50M   10G    1% /home
tmpfs                   tmpfs     199M   12K  199M    1% /run/user/42
tmpfs                   tmpfs     199M     0  199M    0% /run/user/0
/dev/md0                xfs        40G   33M   40G    1% /md0   #已掛載

接下來(lái)取消掛載,停止md0

[root@localhost dev]# umount /md0
[root@localhost dev]# mdadm --stop /dev/md0
mdadm: stopped /dev/md0
[root@localhost dev]# cat /proc/mdstat
Personalities : [raid0] 
unused devices: <none>
[root@localhost dev]# ls    查看發(fā)現(xiàn)沒(méi)有md0
agpgart          log                 sdc       tty18  tty45   urandom
autofs           loop-control        sdc1      tty19  tty46   usbmon0
block            lp0                 sdd       tty2   tty47   usbmon1
bsg              lp1                 sdd1      tty20  tty48   usbmon2
btrfs-control    lp2                 sde       tty21  tty49   vcs
bus              lp3                 sde1      tty22  tty5    vcs1
cdrom            mapper              sg0       tty23  tty50   vcs2
centos           mcelog              sg1       tty24  tty51   vcs3
char             mem                 sg2       tty25  tty52   vcs4
console          mqueue              sg3       tty26  tty53   vcs5
core             net                 sg4       tty27  tty54   vcs6
cpu              network_latency     sg5       tty28  tty55   vcsa
cpu_dma_latency  network_throughput  shm       tty29  tty56   vcsa1
crash            null                snapshot  tty3   tty57   vcsa2
disk             nvram               snd       tty30  tty58   vcsa3
dm-0             oldmem              sr0       tty31  tty59   vcsa4
dm-1             port                stderr    tty32  tty6    vcsa5
dm-2             ppp                 stdin     tty33  tty60   vcsa6
dri              ptmx                stdout    tty34  tty61   vfio
fb0              pts                 tty       tty35  tty62   vga_arbiter
fd               random              tty0      tty36  tty63   vhci
full             raw                 tty1      tty37  tty7    vhost-net
fuse             rfkill              tty10     tty38  tty8    vmci
hidraw0          rtc                 tty11     tty39  tty9    vsock
hpet             rtc0                tty12     tty4   ttyS0   zero
hugepages        sda                 tty13     tty40  ttyS1
hwrng            sda1                tty14     tty41  ttyS2
initctl          sda2                tty15     tty42  ttyS3
input            sdb                 tty16     tty43  uhid
kmsg             sdb1                tty17     tty44  uinput

開(kāi)始制作raid1,rai1d俗稱(chēng)鏡像卷

[root@localhost dev]# mdadm -C -v /dev/md1 -l1 -n2 /dev/sd[b-c]1    
#-C創(chuàng)建 -v顯示詳細(xì)過(guò)程 要?jiǎng)?chuàng)建的raid名稱(chēng)   -l raid等級(jí) -n磁盤(pán)個(gè)數(shù) 磁盤(pán)名稱(chēng)
mdadm: /dev/sdb1 appears to be part of a raid array:
       level=raid0 devices=2 ctime=Mon Nov  4 12:49:59 2019
mdadm: Note: this array has metadata at the start and
    may not be suitable as a boot device.  If you plan to
    store '/boot' on this device please ensure that
    your boot-loader understands md/v1.x metadata, or use
    --metadata=0.90
mdadm: /dev/sdc1 appears to be part of a raid array:
       level=raid0 devices=2 ctime=Mon Nov  4 12:49:59 2019
mdadm: size set to 20954112K
Continue creating array? y
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md1 started.
[root@localhost dev]# cat /proc/mdstat  查看mdstat狀態(tài)
Personalities : [raid0] [raid1] 
md1 : active raid1 sdc1[1] sdb1[0]
      20954112 blocks super 1.2 [2/2] [UU]
      [=====>...............]  resync = 26.7% (5601408/20954112)    finish=1.2min speed=207459K/sec     #正在同步

unused devices: <none>
[root@localhost dev]# mdadm -D /dev/md1     #查看詳細(xì)信息
/dev/md1:
           Version : 1.2
     Creation Time : Mon Nov  4 13:41:55 2019
        Raid Level : raid1
        Array Size : 20954112 (19.98 GiB 21.46 GB)
     Used Dev Size : 20954112 (19.98 GiB 21.46 GB)
      Raid Devices : 2
     Total Devices : 2
       Persistence : Superblock is persistent

       Update Time : Mon Nov  4 13:43:39 2019
             State : clean 
    Active Devices : 2
   Working Devices : 2
    Failed Devices : 0
     Spare Devices : 0

Consistency Policy : resync

              Name : localhost.localdomain:1  (local to host localhost.localdomain)
              UUID : d873e511:0bb8274c:97a98d9f:76313fc8
            Events : 17

    Number   Major   Minor   RaidDevice State
       0       8       17        0      active sync   /dev/sdb1
       1       8       33        1      active sync   /dev/sdc1
[root@localhost dev]# mkfs.xfs /dev/md1     #格式化/dev/md1
mkfs.xfs: /dev/md1 appears to contain an existing filesystem (xfs).
mkfs.xfs: Use the -f option to force overwrite.     
#反饋說(shuō)md1中存在xfs系統(tǒng),是否要強(qiáng)行執(zhí)行-f格式化,原因自己分析一波,我就不解釋了
[root@localhost dev]# mkfs.xfs -f /dev/md1  #強(qiáng)制執(zhí)行
meta-data=/dev/md1               isize=512    agcount=4, agsize=1309632 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=5238528, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
[root@localhost dev]# mount /dev/md1 /md0   #掛載到之前設(shè)置的掛載點(diǎn)/md0
[root@localhost dev]# df -Th
文件系統(tǒng)                類(lèi)型      容量  已用  可用 已用% 掛載點(diǎn)
/dev/mapper/centos-root xfs        20G  3.3G   17G   17% /
devtmpfs                devtmpfs  977M     0  977M    0% /dev
tmpfs                   tmpfs     993M     0  993M    0% /dev/shm
tmpfs                   tmpfs     993M  9.0M  984M    1% /run
tmpfs                   tmpfs     993M     0  993M    0% /sys/fs/cgroup
/dev/sda1               xfs       6.0G  161M  5.9G    3% /boot
/dev/mapper/centos-home xfs        10G   50M   10G    1% /home
tmpfs                   tmpfs     199M   12K  199M    1% /run/user/42
tmpfs                   tmpfs     199M     0  199M    0% /run/user/0
/dev/md1                xfs        20G   33M   20G    1% /md0

還有-x 指定備用磁盤(pán),這里操作演示一波

[root@localhost dev]# umount /md0   取消掛載
[root@localhost dev]# mdadm -S /dev/md1     停止raid1
mdadm: stopped /dev/md1
[root@localhost dev]# mdadm -C /dev/md2 -l1 -n2 /dev/sd[d-e]1 -x1 /dev/sdb1
#重新創(chuàng)建一個(gè)raid1,-x1,指定一塊備用磁盤(pán)
mdadm: Note: this array has metadata at the start and
    may not be suitable as a boot device.  If you plan to
    store '/boot' on this device please ensure that
    your boot-loader understands md/v1.x metadata, or use
    --metadata=0.90
mdadm: /dev/sdb1 appears to be part of a raid array:
       level=raid1 devices=2 ctime=Mon Nov  4 13:41:55 2019
Continue creating array? y
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md2 started.
[root@localhost dev]# cat /proc/mdstat  #查看信息狀態(tài)
Personalities : [raid0] [raid1] 
md2 : active raid1 sdb1[2](S) sde1[1] sdd1[0]
      20954112 blocks super 1.2 [2/2] [UU]
      [====>................]  resync = 21.0% (4400896/20954112) finish=1.3min speed=209566K/sec

unused devices: <none>
[root@localhost dev]# mdadm -D /dev/md2     #第二種方法查看
/dev/md2:
           Version : 1.2
     Creation Time : Mon Nov  4 14:27:51 2019
        Raid Level : raid1
        Array Size : 20954112 (19.98 GiB 21.46 GB)
     Used Dev Size : 20954112 (19.98 GiB 21.46 GB)
      Raid Devices : 2
     Total Devices : 3
       Persistence : Superblock is persistent

       Update Time : Mon Nov  4 14:28:49 2019
             State : clean, resyncing 
    Active Devices : 2
   Working Devices : 3
    Failed Devices : 0
     Spare Devices : 1

Consistency Policy : resync

     Resync Status : 56% complete

              Name : localhost.localdomain:2  (local to host localhost.localdomain)
              UUID : 774b6bee:46ab3939:243f63b7:fdc1d58d
            Events : 9

    Number   Major   Minor   RaidDevice State
       0       8       49        0      active sync   /dev/sdd1
       1       8       65        1      active sync   /dev/sde1

       2       8       17        -      spare   /dev/sdb1   #這一塊就是備用盤(pán)

用mdadm中的-f去模擬演示毀掉一塊盤(pán)

[root@localhost dev]# mdadm -f /dev/md2 /dev/sdd1   毀掉md2中的sdd1
mdadm: set /dev/sdd1 faulty in /dev/md2
[root@localhost dev]# mdadm -D /dev/md2
/dev/md2:
           Version : 1.2
     Creation Time : Mon Nov  4 14:27:51 2019
        Raid Level : raid1
        Array Size : 20954112 (19.98 GiB 21.46 GB)
     Used Dev Size : 20954112 (19.98 GiB 21.46 GB)
      Raid Devices : 2
     Total Devices : 3
       Persistence : Superblock is persistent

       Update Time : Mon Nov  4 14:30:11 2019
             State : clean, degraded, recovering 
    Active Devices : 1
   Working Devices : 2
    Failed Devices : 1
     Spare Devices : 1

Consistency Policy : resync

    Rebuild Status : 15% complete

              Name : localhost.localdomain:2  (local to host localhost.localdomain)
              UUID : 774b6bee:46ab3939:243f63b7:fdc1d58d
            Events : 21

    Number   Major   Minor   RaidDevice State
       2       8       17        0      spare rebuilding   /dev/sdb1    #被頂替上去
       1       8       65        1      active sync   /dev/sde1

       0       8       49        -      faulty   /dev/sdd1  #被換下來(lái)

再實(shí)驗(yàn)一個(gè)raid5,從案例的需求可以發(fā)現(xiàn),可以為其配置raid6,或者raid1+0,這里還是先順序把raid5演練一波

[root@localhost dev]# mdadm -S /dev/md2     #停止md2
mdadm: stopped /dev/md2
[root@localhost dev]# mdadm -C -v /dev/md5 -l5 -n3 /dev/sd[b-d]1 -x1    /dev/sde1 
#-C創(chuàng)建 -v顯示詳細(xì)過(guò)程 raid名稱(chēng) -l raid等級(jí) -n 組成raid磁盤(pán)個(gè)數(shù) 組成raid的磁盤(pán)名稱(chēng) 
-x 備用磁盤(pán)
mdadm: layout defaults to left-symmetric
mdadm: layout defaults to left-symmetric
mdadm: chunk size defaults to 512K
mdadm: /dev/sdb1 appears to be part of a raid array:
       level=raid1 devices=2 ctime=Mon Nov  4 14:27:51 2019
mdadm: /dev/sdc1 appears to be part of a raid array:
       level=raid1 devices=2 ctime=Mon Nov  4 13:41:55 2019
mdadm: /dev/sdd1 appears to be part of a raid array:
       level=raid1 devices=2 ctime=Mon Nov  4 14:27:51 2019
mdadm: /dev/sde1 appears to be part of a raid array:
       level=raid1 devices=2 ctime=Mon Nov  4 14:27:51 2019
mdadm: size set to 20954112K
Continue creating array? y
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md5 started.
[root@localhost dev]# mdadm -D /dev/md5
/dev/md5:
           Version : 1.2
     Creation Time : Mon Nov  4 14:57:07 2019
        Raid Level : raid5
        Array Size : 41908224 (39.97 GiB 42.91 GB)
     Used Dev Size : 20954112 (19.98 GiB 21.46 GB)
      Raid Devices : 3
     Total Devices : 4
       Persistence : Superblock is persistent

       Update Time : Mon Nov  4 14:58:53 2019
             State : clean 
    Active Devices : 3
   Working Devices : 4
    Failed Devices : 0
     Spare Devices : 1

            Layout : left-symmetric
        Chunk Size : 512K

Consistency Policy : resync

              Name : localhost.localdomain:5  (local to host localhost.localdomain)
              UUID : 6057b886:24586340:b6ece802:6f3904d6
            Events : 18

    Number   Major   Minor   RaidDevice State
       0       8       17        0      active sync   /dev/sdb1
       1       8       33        1      active sync   /dev/sdc1
       4       8       49        2      active sync   /dev/sdd1

       3       8       65        -      spare   /dev/sde1

-x備用了一塊磁盤(pán),這里搞壞一個(gè)盤(pán)試一試

[root@localhost dev]# mdadm -f /dev/md5 /dev/sdd1   #搞壞md5下面的sdd1
mdadm: set /dev/sdd1 faulty in /dev/md5     #顯示成功搞壞
[root@localhost dev]# mdadm -D /dev/md5     #再次查看信息
/dev/md5:
           Version : 1.2
     Creation Time : Mon Nov  4 14:57:07 2019
        Raid Level : raid5
        Array Size : 41908224 (39.97 GiB 42.91 GB)
     Used Dev Size : 20954112 (19.98 GiB 21.46 GB)
      Raid Devices : 3
     Total Devices : 4
       Persistence : Superblock is persistent

       Update Time : Mon Nov  4 15:04:50 2019
             State : clean, degraded, recovering 
    Active Devices : 2
   Working Devices : 3
    Failed Devices : 1
     Spare Devices : 1

            Layout : left-symmetric
        Chunk Size : 512K

Consistency Policy : resync

    Rebuild Status : 25% complete

              Name : localhost.localdomain:5  (local to host localhost.localdomain)
              UUID : 6057b886:24586340:b6ece802:6f3904d6
            Events : 24

    Number   Major   Minor   RaidDevice State
       0       8       17        0      active sync   /dev/sdb1
       1       8       33        1      active sync   /dev/sdc1
       3       8       65        2      spare rebuilding   /dev/sde1    #頂替上來(lái)

       4       8       49        -      faulty   /dev/sdd1  #換下來(lái)

然后的操作就是格式化,mkfs.xfs /dev/md5,掛載,這里就不再操作了

raid6就是把其中的級(jí)別-l改為6,磁盤(pán)塊數(shù)-n不少于四塊,備用盤(pán)-x記得給,養(yǎng)成好習(xí)慣,在演示一波raid1+0

raid1+0的原理是先用兩塊盤(pán)去做raid1鏡像卷,然后把兩個(gè)raid1為單位,去做raid0條帶卷

[root@localhost dev]# mdadm -S /dev/md5     #停用md5
mdadm: stopped /dev/md5
[root@localhost dev]# mdadm -C -v /dev/md1 -l1 -n2 /dev/sd[b-c]1    #創(chuàng)建raid1 md1
mdadm: /dev/sdb1 appears to be part of a raid array:
       level=raid5 devices=3 ctime=Mon Nov  4 14:57:07 2019
mdadm: Note: this array has metadata at the start and
    may not be suitable as a boot device.  If you plan to
    store '/boot' on this device please ensure that
    your boot-loader understands md/v1.x metadata, or use
    --metadata=0.90
mdadm: /dev/sdc1 appears to be part of a raid array:
       level=raid5 devices=3 ctime=Mon Nov  4 14:57:07 2019
mdadm: size set to 20954112K
Continue creating array? y
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md1 started.
[root@localhost dev]# mdadm -C -v /dev/md2 -l1 -n2 /dev/sd[d-e]1    #創(chuàng)建riad1 md2
mdadm: /dev/sdd1 appears to be part of a raid array:
       level=raid5 devices=3 ctime=Mon Nov  4 14:57:07 2019
mdadm: Note: this array has metadata at the start and
    may not be suitable as a boot device.  If you plan to
    store '/boot' on this device please ensure that
    your boot-loader understands md/v1.x metadata, or use
    --metadata=0.90
mdadm: /dev/sde1 appears to be part of a raid array:
       level=raid5 devices=3 ctime=Mon Nov  4 14:57:07 2019
mdadm: size set to 20954112K
Continue creating array? y
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md2 started.
[root@localhost dev]# mdadm -C -v /dev/md0 -l0 -n2 /dev/md[1-2] #以兩個(gè)鏡像卷為
單位,創(chuàng)建raid0
mdadm: chunk size defaults to 512K
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.
[root@localhost dev]# mdadm -D /dev/md0 #查看raid0卷md0
/dev/md0:
           Version : 1.2
     Creation Time : Mon Nov  4 15:19:28 2019
        Raid Level : raid0
        Array Size : 41875456 (39.94 GiB 42.88 GB)
      Raid Devices : 2
     Total Devices : 2
       Persistence : Superblock is persistent

       Update Time : Mon Nov  4 15:19:28 2019
             State : clean 
    Active Devices : 2
   Working Devices : 2
    Failed Devices : 0
     Spare Devices : 0

        Chunk Size : 512K

Consistency Policy : none

              Name : localhost.localdomain:0  (local to host localhost.localdomain)
              UUID : e0b393ab:3c8c8d1c:21ddf9f1:26ab1901
            Events : 0

    Number   Major   Minor   RaidDevice State
       0       9        1        0      active sync   /dev/md1  #單位是鏡像卷
       1       9        2        1      active sync   /dev/md2
[root@localhost dev]# mdadm -D /dev/md1 #查看raid1卷md1
/dev/md1:
           Version : 1.2
     Creation Time : Mon Nov  4 15:18:02 2019
        Raid Level : raid1
        Array Size : 20954112 (19.98 GiB 21.46 GB)
     Used Dev Size : 20954112 (19.98 GiB 21.46 GB)
      Raid Devices : 2
     Total Devices : 2
       Persistence : Superblock is persistent

       Update Time : Mon Nov  4 15:19:47 2019
             State : active 
    Active Devices : 2
   Working Devices : 2
    Failed Devices : 0
     Spare Devices : 0

Consistency Policy : resync

              Name : localhost.localdomain:1  (local to host localhost.localdomain)
              UUID : 8ece5682:dc5b03c7:5d1d67a8:22c85b59
            Events : 18

    Number   Major   Minor   RaidDevice State
       0       8       17        0      active sync   /dev/sdb1 #單位是sd
       1       8       33        1      active sync   /dev/sdc1
[root@localhost dev]# mdadm -D /dev/md2
/dev/md2:
           Version : 1.2
     Creation Time : Mon Nov  4 15:18:43 2019
        Raid Level : raid1
        Array Size : 20954112 (19.98 GiB 21.46 GB)
     Used Dev Size : 20954112 (19.98 GiB 21.46 GB)
      Raid Devices : 2
     Total Devices : 2
       Persistence : Superblock is persistent

       Update Time : Mon Nov  4 15:20:02 2019
             State : active, resyncing 
    Active Devices : 2
   Working Devices : 2
    Failed Devices : 0
     Spare Devices : 0

Consistency Policy : resync

     Resync Status : 79% complete

              Name : localhost.localdomain:2  (local to host localhost.localdomain)
              UUID : 9501fa59:f37e90a0:227aaf3f:567026a1
            Events : 13

    Number   Major   Minor   RaidDevice State
       0       8       49        0      active sync   /dev/sdd1
       1       8       65        1      active sync   /dev/sde1
[root@localhost dev]# mount /dev/md1 /md0   #掛載raid1鏡像卷
mount: 未知的文件系統(tǒng)類(lèi)型“l(fā)inux_raid_member” #沒(méi)有格式化
[root@localhost dev]# mount /dev/md0 /md0   #掛載raid0條帶卷
mount: /dev/md0 寫(xiě)保護(hù),將以只讀方式掛載    #可以掛,但是沒(méi)啥用,只讀,寫(xiě)保護(hù)
mount: 未知的文件系統(tǒng)類(lèi)型“(null)”
[root@localhost dev]# mkfs.xfs /dev/md0     #格式化條帶卷raid0
meta-data=/dev/md0               isize=512    agcount=16, agsize=654208 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=10467328, imaxpct=25
         =                       sunit=128    swidth=256 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=5112, version=2
         =                       sectsz=512   sunit=8 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
[root@localhost dev]# mount /dev/md0 /md0   #再次掛載raid0,可以正常掛上去
[root@localhost dev]# mkfs.xfs /dev/md1     #格式化鏡像卷raid1,發(fā)現(xiàn)資源忙
mkfs.xfs: cannot open /dev/md1: 設(shè)備或資源忙  #這是因?yàn)殓R像卷成為raid0的單位,
無(wú)法執(zhí)行獨(dú)立的操作
[root@localhost dev]# df -TH    #查看一下
文件系統(tǒng)                類(lèi)型      容量  已用  可用 已用% 掛載點(diǎn)
/dev/mapper/centos-root xfs        22G  3.5G   18G   17% /
devtmpfs                devtmpfs  1.1G     0  1.1G    0% /dev
tmpfs                   tmpfs     1.1G     0  1.1G    0% /dev/shm
tmpfs                   tmpfs     1.1G  9.5M  1.1G    1% /run
tmpfs                   tmpfs     1.1G     0  1.1G    0% /sys/fs/cgroup
/dev/sda1               xfs       6.5G  168M  6.3G    3% /boot
/dev/mapper/centos-home xfs        11G   52M   11G    1% /home
tmpfs                   tmpfs     209M   13k  209M    1% /run/user/42
tmpfs                   tmpfs     209M     0  209M    0% /run/user/0
/dev/md0                xfs        43G   35M   43G    1% /md0   #掛載成功

總結(jié):

  • raid0是兩塊磁盤(pán),同時(shí)讀寫(xiě),速度比一般的快一倍,但是沒(méi)有進(jìn)行備份數(shù)據(jù)的操作,所以在數(shù)據(jù)安全性的層面上跟一般的一樣,容量是所有磁盤(pán)容量的總和
  • raid1是兩塊磁盤(pán),同時(shí)往里寫(xiě)一樣的數(shù)據(jù),速度跟一般的一致,安全方面,多了一塊磁盤(pán),就多了一份保障,容量是磁盤(pán)總?cè)萘康囊话?/li>
  • raid5最少三塊磁盤(pán),分別往里讀寫(xiě),在原有數(shù)據(jù)的基礎(chǔ)上,還多了一份數(shù)據(jù)校驗(yàn)記錄,這一份數(shù)據(jù)校驗(yàn)記錄跟原有數(shù)據(jù)平均均分在各個(gè)磁盤(pán)內(nèi),相當(dāng)于可以損壞一塊磁盤(pán),把壞磁盤(pán)換下來(lái),數(shù)據(jù)校驗(yàn)記錄可以恢復(fù)壞磁盤(pán)的數(shù)據(jù),安全性比一般的多了一層保障,讀寫(xiě)速度是一般的(N-1)倍,容量是磁盤(pán)總?cè)萘康模∟-1)N
  • raid6最少四塊磁盤(pán),相當(dāng)于在raid5的基礎(chǔ)上再加一個(gè)數(shù)據(jù)校驗(yàn)記錄,這樣就可以同時(shí)損壞兩塊盤(pán)而不影響數(shù)據(jù)完整,安全性比一般的多了兩層保障,讀寫(xiě)速度是一般的(N-2)被,容量是磁盤(pán)總?cè)萘康模∟-2)/N
  • raid1+0是raid1和raid0的集合,相當(dāng)于對(duì)數(shù)據(jù)先進(jìn)行已經(jīng)raid1的封裝,然后在進(jìn)行raid0的封裝,應(yīng)用也是比較廣
向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI