RHEL 7 RAID 5 (软)实验   磁盘阵列

一、模拟磁盘设备
[[email protected] ~]# ls /dev/sd*   # 查看添加的硬件----磁盘设备
/dev/sda  /dev/sda1  /dev/sda2  /dev/sdb  /dev/sdc
[[email protected] ~]# fdisk /dev/sdb # 分区 模拟出4块硬盘

Command (m for help): n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): p
Partition number (1-4, default 1): # 默认
First sector (2048-20971519, default 2048): #默认
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-20971519, default 20971519): +1G # 添加1G
Partition 1 of type Linux and of size 1 GiB is set

操作同上共分了四个区  /dev/sdb{1,2,3,4}  当做四块硬盘使用

Command (m for help): p
Disk /dev/sdb: 10.7 GB, 10737418240 bytes, 20971520 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 label type: dos
Disk identifier: 0x0e220a08
   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048     2099199     1048576   83  Linux
/dev/sdb2         2099200     4196351     1048576   83  Linux
/dev/sdb3         4196352     6293503     1048576   83  Linux
/dev/sdb4         6293504     8390655     1048576   83  Linux
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
[[email protected]calhost ~]# fdisk /dev/sdc  # 分区模拟出4块硬盘

Command (m for help): n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): p
Partition number (1-4, default 1): 
First sector (2048-20971519, default 2048): 
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-20971519, default 20971519): +1G
Partition 1 of type Linux and of size 1 GiB is set

同上 分四个区 /dev/sdc{1,2,3,4} 当做4块硬盘使用
   Device Boot      Start         End      Blocks   Id  System
/dev/sdc1            2048     2099199     1048576   83  Linux
/dev/sdc2         2099200     4196351     1048576   83  Linux
/dev/sdc3         4196352     6293503     1048576   83  Linux
/dev/sdc4         6293504     8390655     1048576   83  Linux
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
[[email protected] ~]# ls /dev/sd*
/dev/sda   /dev/sda2  /dev/sdb1  /dev/sdb3  /dev/sdc   /dev/sdc2  /dev/sdc4
/dev/sda1  /dev/sdb   /dev/sdb2  /dev/sdb4  /dev/sdc1  /dev/sdc3

二、创建RAID 5 
mdadm 命令

选项 

    -C 创建软RAID 
    -l 指定RAID级别
    -n 指定磁盘的个数
    -x 指定备用设备的个数
    -a 添加磁盘
    -r 移除磁盘(热)
    -v 显示详细信息
    -s 扫描配置文件
    -S 停止阵列 释放
    -A 激活,加载 Assemble 
    -f 设为故障盘
    
[[email protected] ~]# mdadm -C /dev/md5 -l 5 -n 3 -x 1 /dev/sdb{1,2,3,4}  # 创建raid 5 
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md5 started.
[[email protected] ~]# mdadm -D /dev/md5
/dev/md5:
        Version : 1.2
  Creation Time : Sun Jun 19 21:00:53 2016
     Raid Level : raid5
     Array Size : 2095104 (2046.34 MiB 2145.39 MB)
  Used Dev Size : 1047552 (1023.17 MiB 1072.69 MB)
   Raid Devices : 3
  Total Devices : 4
    Persistence : Superblock is persistent
    Update Time : Sun Jun 19 21:00:59 2016
          State : clean 
 Active Devices : 3
Working Devices : 4
 Failed Devices : 0
  Spare Devices : 1
         Layout : left-symmetric
     Chunk Size : 512K
           Name : localhost.localdomain:5  (local to host localhost.localdomain)
           UUID : 467e61c9:1ddfd1c6:51c27a22:bb7d160c
         Events : 18
    Number   Major   Minor   RaidDevice State
       0       8       17        0      active sync   /dev/sdb1
       1       8       18        1      active sync   /dev/sdb2
       4       8       19        2      active sync   /dev/sdb3
       3       8       20        -      spare   /dev/sdb4
[[email protected] ~]# ls /dev/md*
/dev/md5

[[email protected] ~]# fdisk /dev/md5

    Device Boot      Start         End      Blocks   Id  System
/dev/md5p1            2048     2099199     1048576   83  Linux
/dev/md5p2         2099200     4190207     1045504   83  Linux
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.

[[email protected] ~]# mkfs.xfs /dev/md5p1 && mkfs.xfs /dev/md5p2

[[email protected] ~]# echo $?
0
[[email protected] ~]# mkdir /opt/raid{5_1,5_2}

[[email protected] ~]# blkid /dev/md*
/dev/md5: PTTYPE="dos" 
/dev/md5p1: UUID="f1354f72-bbe5-4364-9ade-576d95d4c812" TYPE="xfs" 
/dev/md5p2: UUID="d403dca4-6f77-411e-a519-b0536a8867e7" TYPE="xfs" 
[[email protected] ~]# echo "UUID="f1354f72-bbe5-4364-9ade-576d95d4c812" /opt/raid5_1 xfs defaults 0 0" >> /etc/fstab
[[email protected] ~]# echo "UUID="d403dca4-6f77-411e-a519-b0536a8867e7" /opt/raid5_2 xfs defaults 0 0" >> /etc/fstab
[[email protected] ~]# tail -3 !$
tail -3 /etc/fstab
/dev/sr0 /mnt iso9660 defaults 0 0
UUID=f1354f72-bbe5-4364-9ade-576d95d4c812 /opt/raid5_1 xfs defaults 0 0
UUID=d403dca4-6f77-411e-a519-b0536a8867e7 /opt/raid5_2 xfs defaults 0 0
[[email protected] ~]# mount -a
[[email protected] ~]# cp /etc/passwd /opt/raid5_1
[[email protected] ~]# cp /etc/passwd /opt/raid5_2
[[email protected] ~]# cp -r /etc /opt/raid5_1
[[email protected] ~]# cp -r /etc /opt/raid5_2
[[email protected] ~]# ls /opt/raid*
/opt/raid5_1:
etc  passwd
/opt/raid5_2:
etc  passwd
[[email protected] ~]# echo "DEVICES /dev/sdb1 /dev/sdb2 /dev/sdb3 /dev/sdb4" >> /etc/mdadm.conf
[[email protected] ~]# mdadm -Evs >> /etc/mdadm.conf
[[email protected] ~]# mount -a
[[email protected] ~]# tail -3 /etc/fstab
/dev/sr0 /mnt iso9660 defaults 0 0
UUID=f1354f72-bbe5-4364-9ade-576d95d4c812 /opt/raid5_1 xfs defaults 0 0
UUID=d403dca4-6f77-411e-a519-b0536a8867e7 /opt/raid5_2 xfs defaults 0 0
[[email protected] ~]# df -h
Filesystem             Size  Used Avail Use% Mounted on

/dev/md5p1            1018M   68M  951M   7% /opt/raid5_1
/dev/md5p2            1018M   68M  951M   7% /opt/raid5_2
[[email protected] ~]# 

三、Raid 性能测试  (RAID 5 写入速度比普通磁盘块)

[[email protected] ~]# time dd if=/dev/zero of=txt bs=1M count=20

real	0m0.197s
user	0m0.001s
sys	0m0.180s
[[email protected] ~]# cd /opt/raid5_1
[[email protected] raid5_1]# time dd if=/dev/zero of=txt bs=1M count=20

real	0m0.102s
user	0m0.000s
sys	0m0.033s

四、RAID 故障模拟
[[email protected] ~]# mdadm /dev/md5 -f /dev/sdb1
mdadm: set /dev/sdb1 faulty in /dev/md5

此时可以动态查看一下
[[email protected] ~]# watch -n 1 cat /proc/mdstat

[[email protected] ~]# mdadm --detail /dev/md5
/dev/md5:
        Version : 1.2
  Creation Time : Sun Jun 19 21:00:53 2016
     Raid Level : raid5
     Array Size : 2095104 (2046.34 MiB 2145.39 MB)
  Used Dev Size : 1047552 (1023.17 MiB 1072.69 MB)
   Raid Devices : 3
  Total Devices : 4
    Persistence : Superblock is persistent

    Update Time : Sun Jun 19 22:43:16 2016
          State : clean 
 Active Devices : 3
Working Devices : 3
 Failed Devices : 1
  Spare Devices : 0

         Layout : left-symmetric
     Chunk Size : 512K

           Name : localhost.localdomain:5  (local to host localhost.localdomain)
           UUID : 467e61c9:1ddfd1c6:51c27a22:bb7d160c
         Events : 37

    Number   Major   Minor   RaidDevice State
       3       8       20        0      active sync   /dev/sdb4
       1       8       18        1      active sync   /dev/sdb2
       4       8       19        2      active sync   /dev/sdb3

       0       8       17        -      faulty   /dev/sdb1
       
       
[[email protected] ~]# mdadm -r /dev/md5 /dev/sdb1
mdadm: hot removed /dev/sdb1 from /dev/md5
[[email protected] ~]# cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4] 
md5 : active raid5 sdb2[1] sdb3[4] sdb4[3]
      2095104 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/3] [UUU]
      
unused devices: <none>

[[email protected] ~]# mdadm -a /dev/md5 /dev/sdc1
mdadm: added /dev/sdc1
[[email protected] ~]# cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4] 
md5 : active raid5 sdc1[5](S) sdb2[1] sdb3[4] sdb4[3]
      2095104 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/3] [UUU]
      
unused devices: <none>
[[email protected] ~]# diff /etc/passwd /opt/raid5_1/passwd
[[email protected] ~]# echo "DEVICE /dev/sdb2 /dev/sdb3 /dev/sdb4 /dev/sdc1" > /etc/mdadm.conf
[[email protected] ~]# mdadm -Evs >> !$
mdadm -Evs >> /etc/mdadm.conf

五、删除RAID设备

[[email protected] ~]# umount /opt/raid5_1
[[email protected] ~]# umount /opt/raid5_2
[[email protected] ~]# mdadm -Ss 
[[email protected] ~]# rm -rf /etc/mdadm.conf
[[email protected] ~]# rm -rf /opt/raid5_1
[[email protected] ~]# rm -rf /opt/raid5_2
[[email protected] ~]# vim /etc/fstab   #删除开机RAID挂载项  
[[email protected] ~]# mdadm --misc --zero-superblock /dev/sdb1
[[email protected] ~]# mdadm --misc --zero-superblock /dev/sdb2
[[email protected] ~]# mdadm --misc --zero-superblock /dev/sdb3
[[email protected] ~]# mdadm --misc --zero-superblock /dev/sdb4
[[email protected] ~]# mdadm --misc --zero-superblock /dev/sdc1
[[email protected] ~]# df -h
Filesystem             Size  Used Avail Use% Mounted on
/dev/mapper/rhel-root   10G  3.2G  6.9G  32% /
devtmpfs               898M     0  898M   0% /dev
tmpfs                  913M   84K  913M   1% /dev/shm
tmpfs                  913M  8.9M  904M   1% /run
tmpfs                  913M     0  913M   0% /sys/fs/cgroup
/dev/sr0               3.8G  3.8G     0 100% /mnt
/dev/sda1              497M  158M  340M  32% /boot
tmpfs                  183M   16K  183M   1% /run/user/42
tmpfs                  183M     0  183M   0% /run/user/0
[[email protected] ~]# cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4] 
unused devices: <none>
[[email protected] ~]# mdadm --detail /dev/md5
mdadm: cannot open /dev/md5: No such file or directory
时间: 2024-10-27 09:39:40

RHEL 7 RAID 5 (软)实验   磁盘阵列的相关文章

构建软RAID5磁盘阵列&RAID设备恢复

构建软RAID5磁盘阵列&RAID设备恢复 需求描述 为Linux服务器添加4块SCSI硬盘 使用mdadm软件包,构建RAID5磁盘阵列,提高磁盘存储的性能和可靠性 安装mdadm 准备用于RAID阵列的分区 -- 为Linux服务器添加4块SCSI硬盘,并使用fdisk工具个划分出一块2GB的分区依次为:/dev/sde1./dev/sdg1./dev/sdh1./dev/sdf1 -- 将其类型ID更改为"fd",对应为"Linux raid autodetec

RAID、软RAID和硬RAID

RAID(redundant array of inexpensive disks):独立的硬盘冗余阵列,基本思想是把多个小硬盘组合在一起成为一个磁盘组,通过软件或硬件的管理达到性能提升或容量增大或增加冗余. software RAID:软阵列通过CPU的IO运算和硬盘上的文件设置,可以提供最基本的RAID容错功能. hardware RAID:硬阵列由独立的硬件进行IO运算,较少的依赖CPU资源. software RAID与hardware RAID 相比没有太大的优势: 劣势:CPU占用率

13.文件系统——组合不同级别的RAID、硬件RAID和软RAID

从RAID0到RAID6,不同级别的RAID在性能.冗余.价格等方面做了不同程度的折中.组合不同级别的RAID,目的是扬长避短,产生具有优势特性的混合RAID级别.常用的组合RAID主要有RAID10,RAID01,RAID50和RAID05. RAID10是先做1,再做0:而RAID01则是先做0,在做1,RAID50和RAID05同理. 一.RAID10和RAID01 RAID10结合RAID1和RAID0,先镜像,再条带化.比如现在有6块硬盘,其中每两块形成一组镜像--RAID1,然后将3

Linux 常见 RAID 及软 RAID 创建

RAID可以大幅度的提高磁盘性能,以及可靠性,这么好的技术怎么能不掌握呢!此篇介绍一些常见RAID,及其在Linux上的软RAID创建方法. mdadm 创建软RAID mdadm -C -v /dev/创建的设备名 -l级别 -n数量 添加的磁盘 [-x数量 添加的热备份盘] -C:创建一个新的阵列--create -v:显示细节--verbose -l:设定RAID级别--level= -n:指定阵列中可用device数目--raid-devices= -x:指定初始阵列的富余device数

RAID(独立冗余磁盘阵列)技术浅析

引言 如果我们有一个需要很大容量,一块硬盘存储不了的数据,只能存储到多个硬盘上,最简单的思维是:一块硬盘一块硬盘的读取/存储. 很显然,这样单纯的堆积法虽然解决了容量的问题,但是也带来的浪费,因为一次只是从一块硬盘上进行读/写,同时,单块硬盘的读取速度,也是整个磁盘组合的读取速度. 因为CPU和缓存的速度远远大于磁盘的读取数据,因此我们可以将CPU数据读/取请求按照顺序给不同的磁盘,让磁盘“同时”读/写数据,也就是下面的RAID 0. RAID 0 将连续的数据拆分成block,分散将数据blo

RAID及软RAID的实现

1 RAID: 2 Redundant Arrays of Inexpensive Disks 3 Redundant Arrays of Independent Disks 独立冗余磁盘阵列 4 5 Berkeley: A case for Redundent Arrays of Inexpensive Disks RAID 6 7 提高IO能力: 8 磁盘并行读写:0 9 提高耐用性: 10 磁盘冗余来实现 11 12 级别:多块磁盘组织在一起的工作方式有所不同: 13 RAID实现的方式:

第七章 RAID阵列和LVM磁盘阵列技术 第7天 7月26日

RAID 磁盘冗余阵列 目的:提高可用性,读取速度,安全性 通过多盘的协作来达到这一指标 但是不经济,提高了公司的支出.除非认为,数据大于费用 RAID的种类 RAID0 数据分布在不同的两块盘上,读取速度快,但是一块损坏另一块也损坏. RAID1 数据分布在相同的两块盘上,无损备份. RAID5 三块盘组成最小的RAID,但是奇偶校验数据放在除自身盘符外的其他盘上,以备损坏后备份. RAID10 是RAID1和RAID0的组合体.四块硬盘先两两组合成RAID1,两块RAID1再组合成RAID0

RAID (廉价冗余磁盘阵列)

RAID廉价磁盘冗余阵列(Redundant Array of Inexpensive Disks) RAID 包含一组或者一个集合甚至一个阵列.使用一组磁盘结合驱动器组成 RAID 阵列或 RAID 集.将至少两个磁盘连接到一个 RAID 控制器,而成为一个逻辑卷,也可以将多个驱动器放在一个组中.一组磁盘只能使用一个 RAID 级别.使用 RAID 可以提高服务器的性能.不同 RAID 的级别,性能会有所不同.它通过容错和高可用性来保存我们的数据 软件RAID:性能较低,因为其使用主机的资源.

RAID:独立冗余磁盘阵列

部署逻辑卷1:使硬盘具备LVM技术 pvcreate2:把硬盘加入到VG里 vgcreate3:切割VG成需要的LV lvcreate4:将切好的LV格式化 mkfs.ext45:挂载 自动挂载 mount6:使用 vi 格式化阵列.挂载部署逻辑卷:扩容逻辑卷:1:卸载LV umount2:扩容LV lvextend3:检查LV e2fask resize2fs4:挂载 mount5:使用 vi缩小逻辑卷:1:卸载LV umount2:检查LV e2fask3:缩小LV resize2fs4:挂