实验:基于Red Hat Enterprise Linux系统建立RAID磁盘阵列

目录

一. 实验目的

二. 实验内容

三. 实验设计描述及实验结果

什么是磁盘阵列(RAID)

        1. 为虚拟机添加4块大小为20G的硬盘nvme0n【2-5】,将nvme0n【2、3、4】三块硬盘 建立为raid5并永久挂载,将RAID盘全部空间制作逻辑卷,永久挂载并使用

        添加4块大小为20G的硬盘:

        将nvme0n【2、3、4】三块硬盘 建立为raid5

RAID5

RAID各自的优缺点:

        创建物理卷:

方法一:

方法二:

        将RAID盘全部空间制作卷组、逻辑卷:

        创建挂载点,进行挂载:(/nmt/zhujingwen)

        2. 模拟sdd故障,并将nvme0n5加入阵列、3. 将整个阵列盘制作成逻辑卷测试使用

        将错误设备移除(移除nvme0n4):

        重新加一块新盘(nvme0n5):

        4. 停用磁盘阵列

        先进行挂载下线:

        下线后修改fstab文件内容:

        删除逻辑卷:

        删除卷组:

        删除RAID:

        停止磁盘阵列:

        尝试激活已存在的软件 RAID 设备,并开启:

        重启后确认这些对应设备是否都停用了:


一. 实验目的

  1. 了解如何在虚拟机中添加硬盘,并通过RAID5技术实现数据冗余和性能提升。
  2. 熟悉模拟硬盘故障的方法,并学习如何将新的硬盘加入到RAID阵列中。
  3. 掌握将整个RAID阵列制作成逻辑卷的步骤,以及如何进行挂载和使用。
  4. 理解停用磁盘阵列的操作步骤和注意事项,确保数据安全和系统稳定。

二. 实验内容

  1. 为虚拟机添加4块大小为20G的硬盘nvme0n【2-5】,将nvme0n【2、3、4】三块硬盘 建立为raid5并永久挂载,将RAID盘全部空间制作逻辑卷,永久挂载并使用
  2. 模拟sdd故障,并将nvme0n5加入阵列
  3. 将整个阵列盘制作成逻辑卷测试使用
  4. 停用磁盘阵列

三. 实验设计描述及实验结果

什么是磁盘阵列(RAID)

        磁盘阵列(Redundant Arrays ofInexpensive Disks, RAID)意思是:容错式廉价磁盘阵列。

        RAID 技术可以通过软件硬件实现,将多个磁盘整合成为一个较大的磁盘装置,该装置不仅有储存功能,还具有数据保护的功能。

        RAID具有多个不同等级(level),每个level对整合后的磁盘实现不同的功能,有0-6共7个级别,常用0、1、5、6、10;需要RAID控制器、Linux内核可以模拟RAID控制器,用来管理硬盘。

        软RAID:
        RAID系统的优点,不需要额外的硬件RAID控制器CPU时间和内存开销
        硬RAID:
        控制器是一套私有系统,有独立的CPU、内存以及存储数据的单元

        1. 为虚拟机添加4块大小为20G的硬盘nvme0n【2-5】,将nvme0n【2、3、4】三块硬盘 建立为raid5并永久挂载,将RAID盘全部空间制作逻辑卷,永久挂载并使用

        添加4块大小为20G的硬盘:

        查看添加结果:

        将nvme0n【2、3、4】三块硬盘 建立为raid5

RAID5

        RAID 5 是一种存储性能、数据安全和存储成本兼顾的存储解决方案。

        RAID 5可以理解为是RAID 0和RAID1的折中方案。

        RAID5可以为系统提供数据安全保障,但保障程度要比Mirror低而磁盘空间利用率要比Mirror高。

        RAID 5具有和RAID 0相近似的数据读取速度,只是多了一个奇偶校验信息,写入数据的速度比对单个磁盘进行写入操作稍慢。同时由于多个数据对应一个奇偶校验信息,RAID 5的磁盘空间利用率要比RAID1高,存储成本相对较低是目前运用较多的一种解决方案。异或算法 奇偶校验
        至少需要三块硬盘
        每块硬盘必须提供相同的磁盘空间
        提供容错功能
        磁盘空间利用率n-1/n,n为磁盘数量

RAID各自的优缺点:

        RAID 0 存取速度最快 没有容错
        RAID 1 完全容错成本高
        RAID 2 带海明码校验,数据冗余多,速度慢
        RAID 3 写入性能最好 没有多任务功能
        RAID 4 具备多任务及容错功能 Parity 磁盘驱动器造成性能瓶颈
        RAID 5 具备多任务及容错功能 写入时有overhead
        RAID 0+1/RAID 10 速度快、完全容错 成本高

[root@Osborn ~]# mdadm -C /dev/md0 -n 3 -l 5 /dev/nvme0n[234]

mdadm

         -C, --create <device> --level=<level> --raid-devices=<num-devices> <devices>

        创建一个新的 RAID 设备。

                 <device>:指定要创建的 RAID 设备的名称。

                 <level>:指定 RAID 级别,如 0、1、4、5、6 或 10。

                 <num-devices>:指定 RAID 设备中的物理设备数量。

                 <devices>:指定要使用的物理设备。

        -D, --detail <device>

        显示指定 RAID 设备的详细信息,包括状态、健康状况和成员设备等。

         -E, --examine <device>

        显示指定 RAID 设备的更详细信息,包括设备元数据、UUID 和分区等。

        查看磁盘阵列分配结果:

[root@Osborn ~]# cat /proc/mdstat

        查看资源状态:

[root@Osborn ~]# mdadm -D /dev/md0

        手动写一个配置文件,将其进行组合应用:

[root@Osborn ~]# vim /etc/mdadm.conf

ARRAY /dev/md0 UUID=44743c4f:35307960:b09cf80f:8d2406f7

        还可以借助mdadm的选项,进行文件配置:

        (先别覆盖,进行追加>>)

[root@Osborn ~]# mdadm -E -s --brief >> /etc/mdadm.conf

-E        检测已扫描的磁盘阵列设备

-s        扫描可用的磁盘阵列

 --brief        以简短格式输出对应的磁盘阵列的信息

        删掉追加的(都是相同的,只需要一行内容)

        创建物理卷:

方法一:
[root@Osborn ~]# fdisk /dev/md0

        建立分区

        当想针对分区进行磁盘管理时:

Command (m for help): pvcreate /dev/md0p1

        物理卷既可以磁盘也可以针对分区

方法二:

        直接使用pvcreate:

[root@Osborn ~]# pvcreate /dev/md0

        将RAID盘全部空间制作卷组、逻辑卷:

        创建一个自己名字命名的卷组:

[root@Osborn ~]# vgcreate zhujingwen /dev/md0

        建立逻辑卷:

[root@Osborn ~]# lvcreate -n zhujingwen_lv -L 5G zhujingwen

        进行格式化,为xfs格式:

[root@Osborn ~]# mkfs.xfs /dev/zhujingwen/zhujingwen_lv

        使用blkid,复制逻辑卷的UUID:

[root@Osborn ~]# blkid

        编写fstab:

[root@Osborn ~]# vim /etc/fstab 

UUID="7e15dc51-f4bd-4323-b50e-7a52a4861559" /mnt/zhujingwen xfs defaults 0 0

        创建挂载点,进行挂载:(/nmt/zhujingwen)

        创建挂在点:

[root@Osborn ~]# mkdir /mnt/zhujingwen

        列出磁盘空间使用情况:

[root@Osborn ~]# df -Th | grep -v tmp

        2. 模拟sdd故障,并将nvme0n5加入阵列、3. 将整个阵列盘制作成逻辑卷测试使用

        针对一个设备进行管理,将出现错误的磁盘标识为失败,模拟nvme0n4,显示磁盘错误:

[root@Osborn ~]# mdadm --manage /dev/md0 --fail /dev/nvme0n4

        查看磁盘状态变化:

        内核查看:

[root@Osborn mnt]# cat /proc/mdstat 

        显示一块盘已经挂了

        用mdadm:

[root@Osborn ~]# mdadm -D /dev/md0 

        显示nvme0n4失败:

        将错误设备移除(移除nvme0n4):

[root@Osborn ~]# mdadm --manage /dev/md0 --remove /dev/nvme0n4

        查看状态变化:

        重新加一块新盘(nvme0n5):

[root@Osborn ~]# mdadm --manage /dev/md0 --add /dev/nvme0n5

        查看状态变化:

        查看设备状态:

        对比下,没有任何的数据丢失:

        4. 停用磁盘阵列

        先进行挂载下线:

[root@Osborn ~]# umount /mnt/zhujingwen 

        下线后修改fstab文件内容:

[root@Osborn ~]# vim /etc/fstab 

        删除逻辑卷:

[root@Osborn ~]# lvremove /dev/zhujingwen/zhujingwen_lv 

        删除卷组:

[root@Osborn ~]# vgremove /dev/zhujingwen

        删除RAID:

[root@Osborn ~]# pvremove /dev/md0 

        停止磁盘阵列:

[root@Osborn ~]# mdadm -S /dev/md0

-S 停止

        修改配置文件:

[root@Osborn ~]# vim /etc/mdadm.conf 

        可以将那一行注释掉,或者也可以直接删掉mdadm.conf文件

        此时查看状态:

[root@Osborn mnt]# cat /proc/mdstat 

        当前没有设备

        尝试激活已存在的软件 RAID 设备,并开启:

[root@Osborn mnt]# mdadm -As /dev/md0

        显示未标识

        只要当前的配置文件还在 可以通过进行重新启动:

[root@Osborn ~]# systemctl reboot

        重启后确认这些对应设备是否都停用了:

[root@Osborn ~]# cat /proc/mdstat 

        此时会出现两种情况,有、没有,没有万事大吉

        有的话,存在缓存信息,清除掉:

[root@Osborn ~]# mdadm --zero-superblock /dev/nvme0n2
[root@Osborn ~]# mdadm --zero-superblock /dev/nvme0n3
[root@Osborn ~]# mdadm --zero-superblock /dev/nvme0n4
[root@Osborn ~]# mdadm --zero-superblock /dev/nvme0n5

        操作完再重启

[root@Osborn ~]# systemctl reboot

        再查看:

[root@Osborn ~]# cat /proc/mdstat 

        则都空了

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

又是大佬开源的一款自动预约i茅台的系统

又是大佬开源的一款自动预约i茅台APP的系统 话不多说直接上系统 Campus-imaotai,i茅台app自动预约&#xff0c;每日自动预约&#xff0c;支持docker一键部署.现在github上已有1.6kstar,就不谈有多少用户现在真正在使用这个系统了,操作方便,配置简单即可快速上手 github地址:ht…

【bugku】变量1

1.打开靶场&#xff0c;进入主机 2.根据源码发出get请求&#xff0c;GLOBALS这种全局变量用于在 PHP 脚本中的任意位置访问全局变量 3.得到flag值

城市预约挂号统一平台的实现

目录 一、需求分析 二、界面设计 ​ 三、前端开发 四、代码下载 一.需求分析 二、界面设计 三、前端开发 <!DOCTYPE html> <html lang"zh-ch"> <head><meta charset"UTF-8"><title>基本样式页</title><link rel…

opc ua 环境构建(记录一)

1、准备 Siemens Simatic WinCC v7.5 二、配置 SIMATIC NET与S7-200 SMART 集成以太网口OPC 通信(TIA平台) 硬件: ①S7-200 SMART ②PC 机 ( 集成以太网卡) 软件: ① STEP 7-Micro/WIN SMART V2.1 ② STEP 7 Professional(TIA Portal V13 SP1 Upd 9) ③ SIMATIC NET …

Web 题记

[极客大挑战 2019]LoveSQL 看到这种就肯定先想到万能密码&#xff0c;试试&#xff0c;得到了用户名和密码 总结了一些万能密码&#xff1a; or 11 oror admin admin-- admin or 44-- admin or 11-- admin888 "or "a""a admin or 22# a having 11# a havin…

c++修炼之路之vector--标准库中的vector

目录 前言 一&#xff1a;vector的简介 二&#xff1a;vector的常用接口 1.构造函数 2.迭代器访问遍历数组 3.容量接口函数 4.增删查改接口函数 三&#xff1a;vector常用接口的全部代码 接下来的日子会顺顺利利&#xff0c;万事胜意&#xff0c;生活明朗----------…

一个基于单片机内存管理-开源模块

概述 此模块是一位大佬写的应用于单片机内存管理模块mem_malloc&#xff0c;这个mem_malloc的使用不会产生内存碎片&#xff0c;可以高效利用单片机ram空间。 源码仓库&#xff1a;GitHub - chenqy2018/mem_malloc mem_malloc介绍 一般单片机的内存都比较小&#xff0c;而且没…

单调栈基础题

739. 每日温度 问题描述 给定一个整数数组 temperatures &#xff0c;表示每天的温度&#xff0c;返回一个数组 answer &#xff0c;其中 answer[i] 是指对于第 i 天&#xff0c;下一个更高温度出现在几天后。如果气温在这之后都不会升高&#xff0c;请在该位置用 0 来代替。…

模型融合1

一、模型融合:与集成算法一样,都是训练多个评估器,并将多个评估器以某种方式结合起来解决问题的机器学习办法。但是区别是模型融合能够再经典集成模型的基础上进一步提升分数,使用模型融合ji融合:与集成算法一样,都是训练多个评估器,并将多个评估器以某种方式结合起来解…

[SystemVerilog]常见设计模式/实践

常见设计模式/实践 RTL 设计&#xff08;尤其是 ASIC&#xff09;的最终目标是制作出最小、最快的电路。为此&#xff0c;我们需要了解综合工具如何分析和优化设计。此外&#xff0c;我们还关注仿真速度&#xff0c;因为等待测试运行实际上是在浪费工程精力。虽然综合和仿真工…

java项目实战之图书管理系统(1)

✅作者简介&#xff1a;大家好&#xff0c;我是再无B&#xff5e;U&#xff5e;G&#xff0c;一个想要与大家共同进步的男人&#x1f609;&#x1f609; &#x1f34e;个人主页&#xff1a;再无B&#xff5e;U&#xff5e;G-CSDN博客 1.背景 图书管理系统是一种用于管理图书…

STC89C52学习笔记(十二)

STC89C52学习笔记&#xff08;十二&#xff09; 一、AD/DA 1.定义 AD能够将模拟信号转化为数字信号&#xff0c;DA能够将数字信号转化为模拟信号。 2.两种类型的DA转换器 &#xff08;1&#xff09;PWM型DA滤波器 由于PWM是通过脉冲调制的方法来调整的&#xff0c;低通滤…

【机器学习】数学基础详解

线性代数&#xff1a;构建数据的骨架 数学对象 标量&#xff08;Scalar&#xff09; 标量是最基本的数学对象&#xff0c;代表了单个的数值&#xff0c;无论是整数还是实数。在机器学习中&#xff0c;标量可以用来表示一个模型的单个参数&#xff0c;如偏差&#xff08;bias&…

学习大数据,所需要的java(Maven)基础(2)

文章目录 Maven核心概念统一管理目标jar包的版本仓库生命周期插件和目标 继承为什么需要继承机制创建父工程在子工程中引用父工程在子工程中引用父工程在父工程中管理依赖 聚合为什么要使用聚合如何配置聚合 Maven酷站Maven生产环境所遇到的问题jar未下载完成jar包冲突问题 Mav…

ActiveMQ入门案例(queue模式和topic模式)

目录 前言&#xff1a;为什么使用消息中间件&#xff1f; 异步通信 缓冲 解耦 前提&#xff1a;安装并启动activemq 一、点对点&#xff08;point to point&#xff0c; queue&#xff09; 1.1 创建maven项目 1.2 Pom依赖 1.2 JmsProduce 消息生产者 1.3 JmsConsumer…

伺服驱动器算法入门的一些建议和书籍推荐

希望此篇文章对想从事伺服驱动器的研发工作的一些刚刚入门的同学一些建议。 针对伺服驱动器的研发工作涉及的知识和需要掌握的技能主要分为两部分&#xff0c;第一是原理部分、第二是工程实践部分。原理部分的学习在此主要推荐大家查看一些入门书籍&#xff0c;本文章中也对书籍…

iOS------SDWebImage源码

一&#xff0c;简介 一个异步图片下载及缓存的库 特性&#xff1a; 一个扩展UIImageView分类的库&#xff0c;支持加载网络图片并缓存图片异步图片下载器异步图片缓存和自动图片有效期限管理支持GIF动态图片支持WebP背景图片减压保证同一个URL不会再次下载保证无效的URL不会…

Linux 目录结构与基础查看命令

介绍 目录结构如下 /bin&#xff1a;存放着用户最经常使用的二进制可执行命令&#xff0c;如cp、ls、cat等。这些命令是系统管理员和普通用户进行日常操作所必需的。 /boot&#xff1a;存放启动系统使用的一些核心文件&#xff0c;如引导加载器&#xff08;bootstrap loader…

Linux学习笔记之9(消息队列)

Linux learning 1、引言2、创建一个消息队列3、发送和接受消息3.1、发送消息3.1、接收消息 4、删除一个消息队列5、例程 1、引言 消息队列&#xff08;message queue&#xff09;也是进程之间通信的一种方式&#xff0c;相比于共享内存的通信方式&#xff0c;消息队列也有类型…

构建BTI的编译工具支持

BTI分支目标识别精讲与实践系列 思考 1、什么是代码重用攻击&#xff1f;什么是ROP攻击&#xff1f;区别与联系&#xff1f; 2、什么是JOP攻击&#xff1f;间接分支跳转指令&#xff1f; 3、JOP攻击的缓解技术&#xff1f;控制流完整性保护&#xff1f; 4、BTI下的JOP如何…