磁碟陣列Raid0,Raid1,Raid10,Raid5的建立
阿新 • • 發佈:2018-12-13
專案 | Raid0 | Raid1 | Raid10 | Raid5 | Raid6 |
---|---|---|---|---|---|
最少磁碟數 | 2 | 2 | 4 | 3 | 4 |
最大容錯磁碟數(1) | 無 | n-1 | n/2 | 1 | 2 |
資料安全性(1) | 完全沒有 | 最佳 | 最佳 | 好 | 比RAID5 好 |
理論寫入效能(2) | n | 1 | n/2 | <n-1 | <n-2 |
理論讀出效能(2) | n | n | n | <n-1 | <n-2 |
可用容量(3) | n | 1 | n/2 | n-1 | n-2 |
一般應用 | 強調效能但資料不重要的環境 | 資料與備份 伺服器、雲系統常用 | 資料與備份 伺服器、雲系統常用 | 資料與備份 | 資料與備份 |
Raid0
fdisk /dev/sdb(分割槽)
[[email protected] ~]# fdisk /dev/sdb Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel Building a new DOS disklabel with disk identifier 0xa2d567b3. Changes will remain in memory only, until you decide to write them. After that, of course, the previous content won't be recoverable. Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite) WARNING: DOS-compatible mode is deprecated. It's strongly recommended to switch off the mode (command 'c') and change display units to sectors (command 'u'). Command (m for help): n Command action e extended p primary partition (1-4) p Partition number (1-4): 1 First cylinder (1-652, default 1): Using default value 1 Last cylinder, +cylinders or +size{K,M,G} (1-652, default 652): +1G Command (m for help): t Selected partition 1 Hex code (type L to list codes): l 0 Empty 24 NEC DOS 81 Minix / old Lin bf Solaris 1 FAT12 39 Plan 9 82 Linux swap / So c1 DRDOS/sec (FAT- 2 XENIX root 3c PartitionMagic 83 Linux c4 DRDOS/sec (FAT- 3 XENIX usr 40 Venix 80286 84 OS/2 hidden C: c6 DRDOS/sec (FAT- 4 FAT16 <32M 41 PPC PReP Boot 85 Linux extended c7 Syrinx 5 Extended 42 SFS 86 NTFS volume set da Non-FS data 6 FAT16 4d QNX4.x 87 NTFS volume set db CP/M / CTOS / . 7 HPFS/NTFS 4e QNX4.x 2nd part 88 Linux plaintext de Dell Utility 8 AIX 4f QNX4.x 3rd part 8e Linux LVM df BootIt 9 AIX bootable 50 OnTrack DM 93 Amoeba e1 DOS access a OS/2 Boot Manag 51 OnTrack DM6 Aux 94 Amoeba BBT e3 DOS R/O b W95 FAT32 52 CP/M 9f BSD/OS e4 SpeedStor c W95 FAT32 (LBA) 53 OnTrack DM6 Aux a0 IBM Thinkpad hi eb BeOS fs e W95 FAT16 (LBA) 54 OnTrackDM6 a5 FreeBSD ee GPT f W95 Ext'd (LBA) 55 EZ-Drive a6 OpenBSD ef EFI (FAT-12/16/ 10 OPUS 56 Golden Bow a7 NeXTSTEP f0 Linux/PA-RISC b 11 Hidden FAT12 5c Priam Edisk a8 Darwin UFS f1 SpeedStor 12 Compaq diagnost 61 SpeedStor a9 NetBSD f4 SpeedStor 14 Hidden FAT16 <3 63 GNU HURD or Sys ab Darwin boot f2 DOS secondary 16 Hidden FAT16 64 Novell Netware af HFS / HFS+ fb VMware VMFS 17 Hidden HPFS/NTF 65 Novell Netware b7 BSDI fs fc VMware VMKCORE 18 AST SmartSleep 70 DiskSecure Mult b8 BSDI swap fd Linux raid auto 1b Hidden W95 FAT3 75 PC/IX bb Boot Wizard hid fe LANstep 1c Hidden W95 FAT3 80 Old Minix be Solaris boot ff BBT 1e Hidden W95 FAT1 Hex code (type L to list codes): fd Linux raid auto Changed system type of partition 1 to fd (Linux raid autodetect) Command (m for help): p Disk /dev/sdb: 5368 MB, 5368709120 bytes 255 heads, 63 sectors/track, 652 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0xa2d567b3 Device Boot Start End Blocks Id System /dev/sdb1 1 132 1060258+ fd Linux raid autodetect Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks.
fdisk /dev/sdc(和sdb一樣)
partx -a /dev/sdb1 /dev/sdb(同步分割槽情況)
partx -a /dev/sdc1 /dev/sdc(同步分割槽情況)
fdisk -l /dev/sdb /dev/sdc(檢視現在的狀態)
[[email protected] ~]# fdisk -l /dev/sdb /dev/sdc Disk /dev/sdb: 5368 MB, 5368709120 bytes 255 heads, 63 sectors/track, 652 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0xa2d567b3 Device Boot Start End Blocks Id System /dev/sdb1 1 132 1060258+ fd Linux raid autodetect Disk /dev/sdc: 5368 MB, 5368709120 bytes 255 heads, 63 sectors/track, 652 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x53685b07 Device Boot Start End Blocks Id System /dev/sdc1 1 132 1060258+ fd Linux raid autodetect
mdadm -C /dev/md0 -ayes -l0 -n2 /dev/sd{b,c}1(開始建立RAID0)
[[email protected] ~]# mdadm -C /dev/md0 -ayes -l0 -n2 /dev/sd{b,c}1
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.
cat /proc/mdstat(檢視raid0 狀態)
[[email protected] ~]# cat /proc/mdstat
Personalities : [raid0]
md0 : active raid0 sdc1[1] sdb1[0]
2119680 blocks super 1.2 512k chunks
unused devices: <none>
mdadm -D /dev/md0(檢視raid0 狀態)
[[email protected] ~]# mdadm -D /dev/md0
/dev/md0:
Version : 1.2
Creation Time : Sat Oct 6 10:29:44 2018
Raid Level : raid0
Array Size : 2119680 (2.02 GiB 2.17 GB)
Raid Devices : 2
Total Devices : 2
Persistence : Superblock is persistent
Update Time : Sat Oct 6 10:29:44 2018
State : clean
Active Devices : 2
Working Devices : 2
Failed Devices : 0
Spare Devices : 0
Chunk Size : 512K
Name : localhost.localdomain:0 (local to host localhost.localdomain)
UUID : 038b42e0:54219821:617dd9f0:029825b1
Events : 0
Number Major Minor RaidDevice State
0 8 17 0 active sync /dev/sdb1
1 8 33 1 active sync /dev/sdc1
(新增raid1 到RAID 配置檔案/etc/mdadm.conf並修改,以下)
touch /etc/mdadm.conf
echo DEVICE /dev/sd{b,c}1 >> /etc/mdadm.conf
mdadm -Ds >> /etc/mdadm.conf
vim /etc/mdadm.conf
[[email protected] ~]# vim /etc/mdadm.conf
1 DEVICE /dev/sdb1 /dev/sdc1
# 將中間一段改為level=raid0 num-devices=2
2 ARRAY /dev/md0 level=raid0 num-devices=2 UUID=038b42e0:54219821:617dd9f0:029825b1
mkfs.ext4 /dev/md0(格式化磁碟陣列)
[[email protected] ~]# mkfs.ext4 /dev/md0
mke2fs 1.41.12 (17-May-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=128 blocks, Stripe width=256 blocks
132736 inodes, 529920 blocks
26496 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=545259520
17 block groups
32768 blocks per group, 32768 fragments per group
7808 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912
Writing inode tables: done
Creating journal (16384 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 38 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
(建立掛載點並掛載,以下)
mkdir /mnt/raid0
mount /dev/md0 /mnt/raid0
[[email protected] ~]# df -TH
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root ext4 19G 6.5G 12G 37% /
tmpfs tmpfs 523M 78k 523M 1% /dev/shm
/dev/sda1 ext4 508M 36M 446M 8% /boot
/dev/sr0 iso9660 4.5G 4.5G 0 100% /media/CentOS_6.5_Final
/dev/md0 ext4 2.2G 71M 2.0G 4% /mnt/raid0
vim /etc/fstab(填上最後一行資訊)
[[email protected] ~]# vim /etc/fstab
1
2 #
3 # /etc/fstab
4 # Created by anaconda on Thu Aug 30 19:30:32 2018
5 #
6 # Accessible filesystems, by reference, are maintained under '/dev/disk'
7 # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
8 #
9 /dev/mapper/VolGroup-lv_root / ext4 defaults 1 1
10 UUID=7d586269-560b-42c2-b134-90177acbfcc5 /boot ext4 defaults
1 2
11 /dev/mapper/VolGroup-lv_swap swap swap defaults 0 0
12 tmpfs /dev/shm tmpfs defaults 0 0
13 devpts /dev/pts devpts gid=5,mode=620 0 0
14 sysfs /sys sysfs defaults 0 0
15 proc /proc proc defaults 0 0
16 /dev/md0 /mnt/raid0 ext4 defaults 0 0
reboot(重啟一下)
[[email protected] ~]# reboot
Broadcast message from [email protected]
(/dev/pts/0) at 10:47 ...
The system is going down for reboot NOW!
df -TH(測試開機是否自動掛載)
[[email protected] ~]# df -TH
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root ext4 19G 6.5G 12G 37% /
tmpfs tmpfs 523M 78k 523M 1% /dev/shm
/dev/sda1 ext4 508M 36M 446M 8% /boot
/dev/md0 ext4 2.2G 71M 2.0G 4% /mnt/raid0
/dev/sr0 iso9660 4.5G 4.5G 0 100% /media/CentOS_6.5_Final
擴充套件:
測試 分別寫入1G的檔案(dd生成)和1.1G(換算成M,必須是整數)的檔案,觀察現象;
[[email protected] ~]# time dd if=/dev/zero of=/test01.txt bs=1G count=1
1+0 records in
1+0 records out
1073741824 bytes (1.1 GB) copied, 68.232 s, 15.7 MB/s
dd: closing input file `/dev/zero': Bad file descriptor
real 1m8.600s
user 0m0.002s
sys 0m10.419s
[[email protected] ~]#
[[email protected] ~]# time dd if=/dev/zero of=/mnt/raid0/test02.txt bs=2099M count=1
dd: writing `/mnt/raid0/test02.txt': No space left on device
0+1 records in
0+0 records out
975536128 bytes (976 MB) copied, 76.5786 s, 12.7 MB/s
real 1m16.918s
user 0m0.001s
sys 0m9.488s
Raid1,Raid10,Raid5的建立,,,,下次再更新~~~~~~~~