创建RAID0,RAID5并管理,热备盘,模拟故障

目录

1.  RAID介绍以及mdadm安装

1.1  安装mdadm工具

2.  创建raid0

2.1  环境准备

2.2  使用两个磁盘创建RAID0

2.3  查看RAID0信息

2.4  对创建的RAID0进行格式化并挂载

2.5  设置成开机挂载

2.6  删除RAID0

3.  创建raid5

3.1  环境准备

3.2   用3个磁盘来模拟RAID5,第四个磁盘为热备盘

3.3  模拟硬盘故障

3.4  热移除故障盘

3.5  格式化RAID5,并进行挂载


1.  RAID介绍以及mdadm安装

77d48977010f49cc8e742d67ccd65b9c.png

RAID是一种利用多个磁盘驱动器组合在一起以提供数据冗余、性能改进或两者兼而有之的技术。通过将多个磁盘组成一个逻辑单元,RAID技术可以增加数据的可靠性、提高性能和/或实现数据备份。

以下是几种常见的RAID级别及其特点:

RAID 0:

无冗余,采用条带化(striping)方式将数据均匀分布在各个磁盘上。提高了读写性能,但没有冗余保护,一个磁盘故障会导致数据丢失。


RAID 1:

采用镜像方式,将数据同时写入两个磁盘中。提供了数据冗余,当一个磁盘故障时,另一个磁盘仍然可以提供数据。
RAID 5:

带有分布式奇偶校验的条带化,提供了数据冗余和性能改进。可以容忍一块磁盘的故障,当一块磁盘损坏时,系统可以通过计算校验信息来恢复数据。
RAID 6:

类似于RAID 5,但具有双重奇偶校验,可以容忍两块磁盘的故障。
提供更高的数据冗余性,但写入性能可能略有下降。
RAID 10 (RAID 1+0):

将多组磁盘采用RAID 1进行镜像,然后这些镜像组再采用RAID 0进行条带化。
结合了RAID 1和RAID 0的优点,提供了良好的性能和冗余性。


RAID技术可以根据需求选择不同的级别来平衡性能、冗余和成本。它在服务器、存储系统和数据中心中被广泛应用,以提升数据安全性和存储效率。

1.1  安装mdadm工具

[root@localhost ~]# yum install -y mdadm


2.  创建raid0

2.1  环境准备

添加两块磁盘

aec5c23462fc4da191a59984120ecc14.png

查看系统磁盘信息

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

2.2  使用两个磁盘创建RAID0

[root@localhost ~]# mdadm -Cv /dev/md0 -l 0 -n 2 /dev/{sdb,sdc}
mdadm: chunk size defaults to 512K
mdadm: Fail to create md0 when using /sys/module/md_mod/parameters/new_array, fallback to creation via node
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.

 -C         表示创建一个新的RAID设备

-v           表示在创建RAID阵列时会显示更多的详细信息

/dev/md0         是要创建的RAID设备的名称
-l 0         表示指定RAID级别,这里是RAID0,即数据条带化并且具有分布式奇偶校验
-n 2        表示指定RAID设备中的磁盘数量,这里是2个数据盘
/dev/{sdb,sdc}    这是指定用于RAID的数据盘设备列表,即/dev/sdb, /dev/sdc

2.3  查看RAID0信息

#查看系统上的RAID[root@localhost ~]# cat /proc/mdstat
Personalities : [raid0]
md0 : active raid0 sdc[1] sdb[0]41908224 blocks super 1.2 512k chunksunused devices: <none>#查看系统磁盘信息[root@localhost ~]# lsblk
NAME            MAJ:MIN RM  SIZE RO TYPE  MOUNTPOINT
sda               8:0    0   40G  0 disk
├─sda1            8:1    0    1G  0 part  /boot
└─sda2            8:2    0   39G  0 part├─centos-root 253:0    0   37G  0 lvm   /└─centos-swap 253:1    0    2G  0 lvm   [SWAP]
sdb               8:16   0   20G  0 disk
└─md0             9:0    0   40G  0 raid0
sdc               8:32   0   20G  0 disk
└─md0             9:0    0   40G  0 raid0
sr0              11:0    1  4.2G  0 rom#查看RAID0详细信息
[root@localhost ~]# mdadm -D /dev/md0
/dev/md0:Version : 1.2Creation Time : Fri Mar  8 02:17:07 2024Raid Level : raid0Array Size : 41908224 (39.97 GiB 42.91 GB)Raid Devices : 2Total Devices : 2Persistence : Superblock is persistentUpdate Time : Fri Mar  8 02:17:07 2024State : cleanActive Devices : 2Working Devices : 2Failed Devices : 0Spare Devices : 0Chunk Size : 512KConsistency Policy : noneName : localhost.localdomain:0  (local to host localhost.localdomain)UUID : 20350e76:46fd613b:3c9a7434:dcbac2c8Events : 0Number   Major   Minor   RaidDevice State0       8       16        0      active sync   /dev/sdb1       8       32        1      active sync   /dev/sdc

生成配置文件mdadm.conf

[root@localhost ~]# mdadm -Ds > /etc/mdadm.conf
[root@localhost ~]# cat /etc/mdadm.conf
ARRAY /dev/md0 metadata=1.2 name=localhost.localdomain:0 UUID=20350e76:46fd613b:3c9a7434:dcbac2c8

2.4  对创建的RAID0进行格式化并挂载

#进行格式化
[root@localhost ~]# mkfs.xfs /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#挂载到/mnt目录上
[root@localhost ~]# mount /dev/md0 /mnt#查看验证
[root@localhost ~]# df -h
Filesystem               Size  Used Avail Use% Mounted on
/dev/mapper/centos-root   37G  1.2G   36G   4% /
devtmpfs                 899M     0  899M   0% /dev
tmpfs                    911M     0  911M   0% /dev/shm
tmpfs                    911M  9.5M  902M   2% /run
tmpfs                    911M     0  911M   0% /sys/fs/cgroup
/dev/sda1               1014M  142M  873M  14% /boot
tmpfs                    183M     0  183M   0% /run/user/0
/dev/md0                  40G   33M   40G   1% /mnt
[root@localhost ~]# df -Th /mnt
Filesystem     Type  Size  Used Avail Use% Mounted on
/dev/md0       xfs    40G   33M   40G   1% /mnt

2.5  设置成开机挂载

[root@localhost ~]# blkid /dev/md0
/dev/md0: UUID="60190190-1c09-45ad-876d-6b08ab80cd96" TYPE="xfs"
[root@localhost ~]# echo "UUID=60190190-1c09-45ad-876d-6b08ab80cd96 /mnt xfs defaults 0 0" >> /etc/fstab

2.6  删除RAID0

[root@localhost ~]# umount /mnt/
[root@localhost ~]# mdadm -S /dev/md0
mdadm: stopped /dev/md0
[root@localhost ~]# rm -rf /etc/mdadm.conf
[root@localhost ~]# mdadm --zero-superlock /dev/sdb
mdadm: unrecognized option '--zero-superlock'
Usage: mdadm --helpfor help
[root@localhost ~]# mdadm --zero-superblock /dev/sdb
[root@localhost ~]# mdadm --zero-superblock /dev/sdc

vi /etc/fstab

6f5775b29ac8406283b1190fb414d48e.png



3.  创建raid5

3.1  环境准备

新建四个磁盘

目的:用3个磁盘来模拟RAID5,第四个磁盘分热备盘

28029343305041d3a6ac01692f9b312e.png

查看系统磁盘信息

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

3.2   用3个磁盘来模拟RAID5,第四个磁盘为热备盘

[root@localhost ~]# mdadm -Cv /dev/md5 -l 5 -n 3 /dev/{sdb,sdc,sdd} --spare-devices=1 /dev/sde
mdadm: layout defaults to left-symmetric
mdadm: layout defaults to left-symmetric
mdadm: chunk size defaults to 512K
mdadm: size set to 20954112K
mdadm: Fail to create md5 when using /sys/module/md_mod/parameters/new_array, fallback to creation via node
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md5 started.

 -C         表示创建一个新的RAID设备

-v           表示在创建RAID阵列时会显示更多的详细信息

/dev/md5         是要创建的RAID设备的名称
-l 5         表示指定RAID级别,这里是RAID5,即数据条带化并且具有分布式奇偶校验
-n 3        表示指定RAID设备中的磁盘数量,这里是3个数据盘
/dev/{sdb,sdc,sdd}    这是指定用于RAID的数据盘设备列表,即/dev/sdb, /dev/sdc, 和 /dev/sdd
--spare-devices=1      用于指定热备盘的数量,这里是1个
/dev/sde             指定作为热备盘的设备

 查看RAID5详细信息

[root@localhost ~]# mdadm -D /dev/md5
/dev/md5:Version : 1.2Creation Time : Fri Mar  8 01:53:07 2024Raid Level : raid5Array Size : 41908224 (39.97 GiB 42.91 GB)Used Dev Size : 20954112 (19.98 GiB 21.46 GB)Raid Devices : 3Total Devices : 4Persistence : Superblock is persistentUpdate Time : Fri Mar  8 01:53:14 2024State : clean, degraded, recoveringActive Devices : 2Working Devices : 4Failed Devices : 0Spare Devices : 2Layout : left-symmetricChunk Size : 512KConsistency Policy : resyncRebuild Status : 11% completeName : localhost.localdomain:5  (local to host localhost.localdomain)UUID : bf25b287:21d4b521:08e8b8a7:9f0fcc22Events : 2Number   Major   Minor   RaidDevice State0       8       16        0      active sync   /dev/sdb1       8       32        1      active sync   /dev/sdc4       8       48        2      spare rebuilding   /dev/sdd3       8       64        -      spare   /dev/sde

3.3  模拟硬盘故障

[root@localhost ~]# mdadm -f /dev/md5 /dev/sdb
mdadm: set /dev/sdb faulty in /dev/md5#再次查看RAID5详细信息,发现/dev/sde正在参与重建,原来的/dev/sdb变成了坏盘
[root@localhost ~]# mdadm -D /dev/md5
/dev/md5:Version : 1.2Creation Time : Fri Mar  8 01:53:07 2024Raid Level : raid5Array Size : 41908224 (39.97 GiB 42.91 GB)Used Dev Size : 20954112 (19.98 GiB 21.46 GB)Raid Devices : 3Total Devices : 4Persistence : Superblock is persistentUpdate Time : Fri Mar  8 01:55:02 2024State : clean, degraded, recoveringActive Devices : 2Working Devices : 3Failed Devices : 1Spare Devices : 1Layout : left-symmetricChunk Size : 512KConsistency Policy : resyncRebuild Status : 4% completeName : localhost.localdomain:5  (local to host localhost.localdomain)UUID : bf25b287:21d4b521:08e8b8a7:9f0fcc22Events : 20Number   Major   Minor   RaidDevice State3       8       64        0      spare rebuilding   /dev/sde1       8       32        1      active sync   /dev/sdc4       8       48        2      active sync   /dev/sdd0       8       16        -      faulty   /dev/sdb

3.4  热移除故障盘

[root@localhost ~]# mdadm -r /dev/md5 /dev/sdb
mdadm: hot removed /dev/sdb from /dev/md5#再次查看RAID5信息
[root@localhost ~]# mdadm -D /dev/md5
/dev/md5:Version : 1.2Creation Time : Fri Mar  8 01:53:07 2024Raid Level : raid5Array Size : 41908224 (39.97 GiB 42.91 GB)Used Dev Size : 20954112 (19.98 GiB 21.46 GB)Raid Devices : 3Total Devices : 3Persistence : Superblock is persistentUpdate Time : Fri Mar  8 01:57:18 2024State : cleanActive Devices : 3Working Devices : 3Failed Devices : 0Spare Devices : 0Layout : left-symmetricChunk Size : 512KConsistency Policy : resyncName : localhost.localdomain:5  (local to host localhost.localdomain)UUID : bf25b287:21d4b521:08e8b8a7:9f0fcc22Events : 38Number   Major   Minor   RaidDevice State3       8       64        0      active sync   /dev/sde1       8       32        1      active sync   /dev/sdc4       8       48        2      active sync   /dev/sdd

3.5  格式化RAID5,并进行挂载

#格式化
[root@localhost ~]# mkfs.xfs /dev/md5
meta-data=/dev/md5               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#挂载到/mnt目录上
[root@localhost ~]# mount /dev/md5 /mnt/#查看验证
[root@localhost ~]# df -h
Filesystem               Size  Used Avail Use% Mounted on
/dev/mapper/centos-root   37G  1.2G   36G   4% /
devtmpfs                 899M     0  899M   0% /dev
tmpfs                    911M     0  911M   0% /dev/shm
tmpfs                    911M  9.5M  902M   2% /run
tmpfs                    911M     0  911M   0% /sys/fs/cgroup
/dev/sda1               1014M  142M  873M  14% /boot
tmpfs                    183M     0  183M   0% /run/user/0
/dev/md5                  40G   33M   40G   1% /mnt

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/729930.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2024-01 STEMA 考试C++ 中级真题解析

2024-01 STEMA 考试C++ 中级真题一、选择题 第一题、表达式117 % 16 的结果是( B )。 A、0 B、5 C、7 D、10第二题、下列选项中,字符数组定义正确的是(B )。 A、char a[5] = "hello"; B、char a[ ] = "hello"; …

Go微服务: 基于net/rpc/jsonrpc模块实现微服务跨语言调用

概述 Golang 提供 net/rpc/jsonrpc 库来实现rpc方法采用 json 方式进行数据编解码&#xff0c;支持跨语言调用 这里实现跨语言示例 1 &#xff09;go 服务端 package main import ( "log" "net" "net/rpc" "net/rpc/jsonrpc" )…

ERC20学习

ERC20简介 ERC20是一种代币标准&#xff0c;用于创建可替代的代币。 ERC20是在以太坊网络上实现的代币标准&#xff0c;它为数字资产或代币定义了一套规则和接口。这些符合ERC20标准的代币在性质上是完全相同的。即每一个代币都可以被另一个同类型的代币替代&#xff0c;这种属…

系统架构30 - 质量属性

质量属性 概念开发期质量属性运行期质量属性 面向架构评估的质量属性质量属性场景描述 软件系统属性包括功能属性和质量属性&#xff0c;软件架构重点关注的是质量属性。架构的基本需求是在满足功能属性的前提下&#xff0c;关注软件系统质量属性。为了精确、定量地表达系统的质…

代码随想录算法训练营day54| 392. 判断子序列、115. 不同的子序列

392、判断子序列&#xff1a; class Solution(object):def isSubsequence(self, s, t):""":type s: str:type t: str:rtype: bool"""dp [[0] * (len(t)1) for _ in range(len(s)1)]for i in range(1, len(s)1):for j in range(1, len(t)1):if …

社区店选址评估的关键指标:确保商业成功的重要因素

对于想开实体店或创业的人来说&#xff0c;选址是决定商业成功的关键因素之一。作为一名开鲜奶吧5年的创业者&#xff0c;我在网上持续分享开店的干货和见解。 在这篇文章中&#xff0c;我将详细介绍社区店选址评估的关键指标&#xff0c;帮助你确保商业成功。 1、人流量&…

js之版本号排序

版本号排序 给定一个由版本号组成的数组&#xff0c;按照版本号由小到大排序 假如版本号如下 &#xff1a; ["0.1.1", "2.3.3", "0.302.1", "4.2", "4.3.5", "4.3.4.5"];原理很简单&#xff0c;通过自定义sort排…

2.DOM-事件基础(注册事件、tab栏切换)(案例:注册、轮播图)

案例 注册事件 <!-- //disabled默认情况用户不能点击 --><input type"button" value"我已阅读用户协议(5)" disabled><script>// 分析&#xff1a;// 1.修改标签中的文字内容// 2.定时器// 3.修改标签的disabled属性// 4.清除定时器// …

如何在Windows上使用Docker,搭建一款实用的个人IT工具箱It- Tools

文章目录 1. 使用Docker本地部署it-tools2. 本地访问it-tools3. 安装cpolar内网穿透4. 固定it-tools公网地址 本篇文章将介绍如何在Windows上使用Docker本地部署IT- Tools&#xff0c;并且同样可以结合cpolar实现公网访问。 在前一篇文章中我们讲解了如何在Linux中使用Docker搭…

设计模式(十):抽象工厂模式(创建型模式)

Abstract Factory&#xff0c;抽象工厂&#xff1a;提供一个创建一系列相关或相互依赖对 象的接口&#xff0c;而无须指定它们的具体类。 之前写过简单工厂和工厂方法模式(创建型模式)&#xff0c;这两种模式比较简单。 简单工厂模式其实不符合开闭原则&#xff0c;即对修改关闭…

[MYSQL]当数据库被攻破如何重新恢复

前情提要&#xff1a;mysql数据库默认密码、默认端口没有改&#xff0c;也没做安全防护&#xff0c;导致被攻破被索要比特币。 那我们自然是不能给他们的&#xff0c;下面罗列我的补救方法。 密码修改相关 第一步大家自然都会想到先去修改密码&#xff1a; mysqladmin -u roo…

光谱下的养殖业:数据可视化的现代变革

在数字化时代&#xff0c;数据可视化在养殖业中崭露头角&#xff0c;为这一传统行业注入了新的活力。无论是家禽养殖还是水产养殖&#xff0c;数据可视化都以其直观、高效的特点&#xff0c;为养殖业带来了全新的发展机遇。下面我就以可视化从业者的角度&#xff0c;简单聊聊这…

腾讯云轻量 2核2G4M新用户首购活动,99续费同价来了!!

阿里云199一年续费同价&#xff0c;腾讯云99一年续费同价&#xff0c;平台卷起来&#xff0c;对用户的角度来说&#xff0c;真的是香麻了~ 腾讯云新春采购节&#xff0c;2核2G4兆的基础配置&#xff0c;新官方直接放大招&#xff0c;99一年&#xff0c;活动期间内&#xff0c;…

OpenAI (ChatGPT)中国免费试用地址

GitHub - click33/chatgpt---mirror-station-summary: 汇总所有 chatgpt 镜像站&#xff0c;免费、付费、多模态、国内外大模型汇总等等 持续更新中…… 个人能力有限&#xff0c;搜集到的不多&#xff0c;求大家多多贡献啊&#xff01;众人拾柴火焰高&#xff01;汇总所有 cha…

202104 CSP认证 | DHCP服务器

3. DHCP服务器 我天呢经历了带配额的文件系统我真的极其挫败&#xff0c;然后开始写的时候觉得这个题感觉怎么有点简单…然后就觉得肯定是自己有很多东西没有想到&#xff0c;而且写的时候破罐子破摔觉得肯定会超时… 结果一写&#xff01;哦买噶居然满分了&#xff01; 脑子不…

【探索Linux】—— 强大的命令行工具 P.26(网络编程套接字基本概念—— socket编程接口 | socket编程接口相关函数详细介绍 )

阅读导航 引言一、socket 常见API表二、函数详细介绍01. socket()02. bind()03. listen()04. accept()05. connect()06. send()07. recv()08. close()09. select()10. getaddrinfo()11. sendto()12. recvfrom()13. setsockopt()14. getsockopt()15. shutdown()16. inet_pton()1…

【SpringBoot】多环境切换的灵活配置

文章目录 profile 的使用激活 profile 的方式命令行启动idea 中配置配置文件中激活 开发中最灵活的多环境配置创建四个配置主配置文件其他几个环境配置使用方式 配置文件拆分总结 在日常的开发中&#xff0c;一般都会分好几种环境&#xff0c;比如通常的 开发环境&#xff1a;一…

EXSI create datastore

文章目录 1. 简介2. 清空磁盘3. 删除表4. 创建database 1. 简介 在 ESXi 环境中创建数据存储(Datastore)的步骤如下: 登录 vSphere Web Client 打开 Web 浏览器,输入 ESXi 主机或 vCenter Server 的 IP 地址,使用有权限的账户登录。 在 ESXi 环境中创建数据存储(Datastore)…

每天一个数据分析题(一百九十六)

在多元线性回归模型的自变量选择方法中&#xff0c;关于向后回归法和逐步回归法的描述&#xff0c;以下哪些是正确的&#xff1f; A. 向后回归法开始时包含所有自变量&#xff0c;并逐步剔除每个不显著的变量。 B. 逐步回归法结合了向前回归法和向后回归法&#xff0c;可以在…

Linux 关于NTP同步硬件时钟的可靠性验证

Linux关于NTP同步硬件时钟的可靠性验证 1. 常见的时钟类型1.1 系统时钟1.2 硬件时钟 2. 常见时钟同步方式2.1 ntpd服务2.1.1 推荐配置/etc/ntp.conf2.1.2 推荐配置/etc/sysconfig/ntpd 2.2 定时任务ntpdate2.3 ntp命令同步状态相关命令解读2.3.1 ntpq -pn解读2.3.2 ntpdate -u解…