创建软RAID5阵列

创建软RAID5阵列centos7 部署 raid5 阵列前言 实验环境系统 Linxucentos7 内存 硬盘 20GB 系统盘一块 3 块 5GB 拓展硬盘 目的 用 4 块硬盘在 centos7 系统中模拟软 Radi5 磁盘阵列 当其中一块盘坏掉 保证生产正常运行 一 什么是磁盘阵列二 安装磁盘阵列三 模拟磁盘坏掉四 总结

centos7部署raid5阵列

前言

①实验环境
系统:Linxu centos7
内存:
硬盘:20GB系统盘一块,3块5GB拓展硬盘






②目的
用4块硬盘在 centos 7系统中模拟软Radi 5磁盘阵列,当其中一块盘坏掉,保证生产正常运行。

一.什么是磁盘阵列

RAID(Redundant Array of Independent Disk 独立冗余 磁盘 阵列 ) 技术是加州大学伯克利分校 1987 年提出,最初是为了组合小的廉价磁盘来代替大的昂贵磁盘,同时希望磁盘失效时不会使对数据的访问受损失而开发出一定水平的数据保护技术。 RAID 就是一种由多块廉价磁盘构成的冗余阵列,在操作系统下是作为一个独立的大型存储设备出现。 RAID 可以充分发挥出多块硬盘的优势,可以提升硬盘速度,增大容量 , 提供容错功能够确保数据安全性,易于管理的优点,在任何一块硬盘出现问题的情况下都可以继续工作,不会受到损坏硬盘的影响。

 如需详细了解磁盘阵列的具体分类和功能,请看我另一篇博客,本文主要模拟创建过程,这里就不过多赘述。 

二.安装磁盘阵列

1.
查看现有磁盘lsblk ,可以看到现在模拟机上有一块20GB的主磁盘和3块5GB的磁盘。我们把3块5GB的磁盘组成RAID5阵列。

[root@localhost ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 20G 0 disk ├─sda1 8:1 0 1G 0 part /boot └─sda2 8:2 0 19G 0 part ├─centos-root 253:0 0 17G 0 lvm / └─centos-swap 253:1 0 2G 0 lvm [SWAP] sdb 8:16 0 5G 0 disk sdc 8:32 0 5G 0 disk sdd 8:48 0 5G 0 disk sr0 11:0 1 4.4G 0 rom 

2.
将磁盘sdb磁盘分区,fdisk /dev/sda, 进入磁盘会话界面。
输入n,创建分区。
输入p,创建主分区。
只创建一个主分区,占用sdb磁盘全部空间,一直回车即可。
创建分区后,按“t”修改磁盘格式。
选择修改的文件系统,我们选择1(这里可以直接回车,应为我们上面只创建了一个分区sdb1,默认的就是这个),输入fd,把sdb1改为fd格式(修改HEX代码为fd)。
w”保存退出。
为什么要,修改为fd格式呢,应为这是raid支持的文件系统格式。
















[root@localhost ~]# fdisk /dev/sdb 命令(输入 m 获取帮助):n Partition type: p primary (0 primary, 0 extended, 4 free) e extended Select (default p): Using default response p 分区号 (1-4,默认 1): 起始 扇区 (2048-,默认为 2048): 将使用默认值 2048 Last 扇区, +扇区 or +size{ 
   K,M,G} (2048-,默认为 ): 将使用默认值  分区 1 已设置为 Linux 类型,大小设为 5 GiB 命令(输入 m 获取帮助):t 已选择分区 1 Hex 代码(输入 L 列出所有代码): Hex 代码(输入 L 列出所有代码):fd 已将分区“Linux”的类型更改为“Linux raid autodetect” 命令(输入 m 获取帮助):w The partition table has been altered! Calling ioctl() to re-read partition table. 正在同步磁盘。 [root@localhost ~]#  

把sdc磁盘和sdd磁盘按照以上操作进行分区转换磁盘格式。
最后检查,fdisk -l /dev/sdb /dev/sdc /dev/sdd可以看到都是fd格式了(Linux raid autodetect)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
4. 完成以上所有的准备工作后,下面就是正式构建RAID的步骤了
使用“mdadm -C /dev/md0 -l5 -n2 -x1 /dev/sdb1 /dev/sdc1 /dev/sdd1”其中:
-C——创建磁盘阵列
md0——是阵列的名字
-v——显示详细过程
-l5——表示级别为5级
-n2——由两块磁盘组成
-x1——有一块作为热备盘
/dev/sdb1 /dev/sdc1 /dev/sdd1——这些是指定那些分区来组raid






















[root@localhost ~]# mdadm -C /dev/md0 -l5 -n2 -x1 /dev/sdb1 /dev/sdc1 /dev/sdd1 mdadm: Defaulting to version 1.2 metadata mdadm: array /dev/md0 started. 

5. 查看下,已经创建好raid5的 md0,成员盘sdb1,sdc1,sdd1都在。
lsblk

[root@localhost ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 20G 0 disk ├─sda1 8:1 0 1G 0 part /boot └─sda2 8:2 0 19G 0 part ├─centos-root 253:0 0 17G 0 lvm / └─centos-swap 253:1 0 2G 0 lvm [SWAP] sdb 8:16 0 5G 0 disk └─sdb1 8:17 0 5G 0 part └─md0 9:0 0 5G 0 raid5 sdc 8:32 0 5G 0 disk └─sdc1 8:33 0 5G 0 part └─md0 9:0 0 5G 0 raid5 sdd 8:48 0 5G 0 disk └─sdd1 8:49 0 5G 0 part └─md0 9:0 0 5G 0 raid5 sr0 11:0 1 4.4G 0 rom 

6. 格式化md0

mkfs.ext4 /dev/md0 

7. 挂载md0

 mount /mnt/raid5 /dev/md0 

8. 写入文件,测试正常

[root@localhost /]# touch /mnt/raid5/123.txt [root@localhost /]# echo > /mnt/raid5/123.txt [root@localhost /]# cat /mnt/raid5/123.txt  

三.模拟磁盘坏掉

1.卸载sdb1

[root@localhost /]# mdadm /dev/md0 -f /dev/sdb1 -r /dev/sdb1 mdadm: set /dev/sdb1 faulty in /dev/md0 mdadm: hot removed /dev/sdb1 from /dev/md0 

2.查看 sdb1已不是raid5阵列盘

[root@localhost /]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 20G 0 disk ├─sda1 8:1 0 1G 0 part /boot └─sda2 8:2 0 19G 0 part ├─centos-root 253:0 0 17G 0 lvm / └─centos-swap 253:1 0 2G 0 lvm [SWAP] sdb 8:16 0 5G 0 disk └─sdb1 8:17 0 5G 0 part sdc 8:32 0 5G 0 disk └─sdc1 8:33 0 5G 0 part └─md0 9:0 0 5G 0 raid5 /mnt/raid5 sdd 8:48 0 5G 0 disk └─sdd1 8:49 0 5G 0 part └─md0 9:0 0 5G 0 raid5 /mnt/raid5 sr0 11:0 1 4.4G 0 rom 

3.测试查看原来创建的文件,并无损坏,模拟完成。

[root@localhost raid5]# cat /mnt/raid5/123.txt   
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/223704.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月17日 下午1:36
下一篇 2026年3月17日 下午1:36


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号