Centos7 磁盤陣列(RAID划分)實驗


概覽

RAID,獨立磁盤冗余陣列(redundant array of independent disks)。
由加利福尼亞大學伯克利分校(University of California-Berkeley)在1988年提出,是一種多硬盤存儲數據的技術,能大幅度提高數據傳輸效率和容錯能力。

特點

  1. 將數據分塊存儲在多個磁盤(邏輯上是一個磁盤),讀取數據時從多個磁盤同時獲取,能夠大幅提高數據傳輸效率。

  2. 通過鏡像或奇偶校驗的方式提高數據的冗余能力。

RAID0

簡介:

RAID 0 不算真正意義上的RAID結構,它沒有數據冗余,沒有數據校驗的能力。實現RAID 0至少需要兩塊以上的硬盤,它將兩塊以上的硬盤合並成一塊邏輯硬盤,數據同時分散存儲在每塊硬盤上。 因為帶寬加倍,所以讀/寫速度加倍, 但RAID 0在提高性能的同時,並沒有提供數據保護功能,只要任何一塊硬盤損壞就會丟失所有數據。適用於追求性能,對數據安全不太敏感的行業。

虛擬機添加硬盤:

  1. 點擊編輯虛擬機設置

  2. 點擊添加----->選擇添加硬盤------>點擊下一步

  3. 選擇磁盤類型為SCSI

4.選擇創建新虛擬磁盤

5.指定磁盤容量這里選擇指定大小和是否立即分配磁盤空間

  1. 指定磁盤存儲的位置,點擊完成磁盤就添加完成了(需要添加兩塊)

Linux划分磁盤陣列

第一步:fdisk -l查看未分配的磁盤空間(可以看到/dev/sdc /dev/sdb並未分配)

第二步:創建RAID 0

[root@localhost ~]#  mdadm -Cv /dev/md0 -a yes -n 2 -l 0 /dev/sdb /dev/sdc

第三步:格式化文件系統為ext4

[root@localhost ~]# mkfs.ext4 /dev/md0

第四步:創建掛載點,掛載磁盤md0

[root@localhost ~]# mkdir /raid0
[root@localhost ~]# mount /dev/md0 /raid0
[root@localhost ~]# df -h


ok!raid0 創建成功,容量為40G

RAID1

簡介

RAID1是將一個兩塊硬盤所構成RAID磁盤陣列,其容量僅等於一塊硬盤的容量,因為另一塊只是當作數據“鏡像”。RAID 1是最可靠的一種陣列,因為它總是保持一份完整的數據備份。它的性能自然沒有RAID 0那樣好,但其數據讀取還是較單一硬盤來的快,因為數據會從兩塊硬盤中較快的一塊中讀出。RAID 1磁盤陣列的寫入速度通常較慢,因為數據得分別寫入兩塊硬盤中並做比較。RAID 1磁盤陣列一般支持“熱交換”,就是說陣列中硬盤的移除或替換可以在系統運行時進行,無須中斷退出系統。

磁盤陣列的划分

首先虛擬機添加磁盤(略),然后查看未分配的磁盤空間

[root@localhost ~]# fdisk -l

創建RAID1

[root@localhost ~]# mdadm -Cv /dev/md0 -a yes -n 2 -l 1 /dev/sdb /dev/sdc

格式化文件系統掛載

[root@localhost ~]# mkfs.ext4 /dev/md0
mke2fs 1.42.9 (28-Dec-2013)
文件系統標簽=
OS type: Linux
塊大小=4096 (log=2)
分塊大小=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
1310720 inodes, 5238528 blocks
261926 blocks (5.00%) reserved for the super user
第一個數據塊=0
Maximum filesystem blocks=2153775104
160 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks: 
	32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
	4096000

Allocating group tables: 完成                            
正在寫入inode表: 完成                            
Creating journal (32768 blocks): 完成
Writing superblocks and filesystem accounting information: 完成   

[root@localhost ~]# mkdir /raid1
[root@localhost ~]# mount /dev/md0 /raid1
[root@localhost ~]# df -h
文件系統                 容量  已用  可用 已用% 掛載點
devtmpfs                 2.0G     0  2.0G    0% /dev
tmpfs                    2.0G     0  2.0G    0% /dev/shm
tmpfs                    2.0G   13M  2.0G    1% /run
tmpfs                    2.0G     0  2.0G    0% /sys/fs/cgroup
/dev/mapper/centos-root   17G  3.9G   14G   23% /
/dev/sda1               1014M  172M  843M   17% /boot
tmpfs                    394M   24K  394M    1% /run/user/0
/dev/sr0                 4.4G  4.4G     0  100% /run/media/root/CentOS 7 x86_64
/dev/md0                  20G   45M   19G    1% /raid1

RAID5

簡介

數據以塊為單位分布到各個硬盤上。RAID 5不對數據進行備份,而是把數據和與其相對應的奇偶校驗信息存儲到組成RAID5的各個磁盤上,並且奇偶校驗信息和相對應的數據分別存儲於不同的磁盤上。當RAID5的一個磁盤數據損壞后,利用剩下的數據和相應的奇偶校驗信息去恢復被損壞的數據。

原理

例如如下四塊硬盤組成RAID5,向其中寫入1234567891011121314,raid5會將數據分塊存儲到sda、sdb、sdc、sdd中,其中留出一個磁盤存儲校驗數據塊

假如sdb這塊磁盤掛掉了,根據校驗數據塊可以推出,他存儲的數據為2、6、12,校驗數據塊為28。
很明顯,掛掉一塊問題不大,要是同時掛掉兩塊就沒辦法了。當然raid5的校驗肯定不是加減法而是與或運算,這里就不展開說了。

陣列划分

同理,需要添加三塊磁盤,然后查看未分配的磁盤

划分陣列

[root@localhost ~]# mdadm -Cv /dev/md0  -n 3 -l 5 /dev/sdb /dev/sdc /dev/sdd

格式化文件系統、創建掛載,掛載

[root@localhost ~]# mkfs.ext4 /dev/md0
[root@localhost ~]# mkdir /raid5
[root@localhost ~]# mount /dev/md0 /raid5
[root@localhost ~]# df -h

RAID10

raid10就是raid 1 + raid 0即串聯在一起的鏡像陣列。

配置方法

[root@localhost ~]# mdadm -Cv /dev/md0 -a yes -n 4 -l 10 /dev/sdb /dev/sdc /dev/sdd /dev/sde
[root@localhost ~]# mkfs.ext4 /dev/md0
[root@localhost ~]# mkdir /raid10
[root@localhost ~]# mount /dev/md0 /raid10


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM