码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 利用软raid程序来配置实现“RAID1+0”阵列


    内容预知

      1.实验目的

     2.实验前准备

    2.1  外部准备 

    2.2  内部准备(自身对命令的准备) 

     3.实验的具体操作

    第一步:创建并定义RAID设备

     第二步:用文件系统对每个RAID设备进行格式化

     第三步:查看阵列和热备盘的详情

     第四步:强制标记一个磁盘下线,看是否对数据有影响

     实验外命令拓展

     4.RAID5阵列的简单过程描述

     总结


      1.实验目的

     上篇文章中提到了RAID阵列让磁盘组成一个具有数据冗余和更高性能的磁盘子系统,而我们想要获得RAID阵列,一种是硬件RAID,通过RAID卡,经过运营商提供的操作手册,进行安装即可。此外还有一种是通过软件RAID的方式依旧能让我们拥有RAID阵列。

    但是软件的RAID存在的缺点也是不容忽视的:

    1.占用内存空间(软件程序需要存放)

    2.占用CPU资源(软件程序需要计算运行)

    3.软件的RAID程序无法将已经安装了操作系统的磁盘也做成RAID(极为重要)

    本次实验 的目的就是为了在没有硬件raid卡的情况下,实现创建RAID阵列。通过RAID 1+0的阵列创建方式,其他也可以通过此实验类比出其他相关级别的RAID阵列

     2.实验前准备

    2.1  外部准备 

     环境准备:

    本实验是建立在虚拟机中进行的,所以请在实验前提前准备好最小磁盘数量4块20G(容量自定义),外一块作为热备盘(现实生产环境中,热备盘是我们的第二重保险,本着数据无价的原则,热备盘的存在还是很有必要的)

     

     

    软件工具准备:

     mdadm工具:为软RAID提供管理界面,为空余磁盘添加冗余,结合内核中的md(multi devices)RAID设 备命名

    2.2  内部准备(自身对命令的准备) 

    实验之前需要了解一下创建工具 madadm的命令使用格式 ,及其具体使用方式

     

     

    1. 模式:
    2. 创建:-C
    3. 装配:-A
    4. 监控:-F
    5. 管理:-f, -r, -a
    6. : /dev/md#
    7. : 任意块设备
    8. -C: 创建模式
    9. -n #: 使用#个块设备来创建此RAID
    10. -l #:指明要创建的RAID的级别 0 1 5 10
    11. -c CHUNK_SIZE: 指明块大小,单位k
    12. -x #: 指明空闲盘的个数 热备 盘 -x 1 /dev/sd#
    13. -D:显示raid的详细信息
    14. mdadm -D /dev/md#
    15. 软raid名字
    16. 管理模式:
    17. -f: 标记指定磁盘为损坏
    18. -a: 添加磁盘
    19. -r: 移除磁盘
    20. 观察md的状态: cat /proc/mdstat

     

     

     

     

     3.实验的具体操作

     

    第一步:创建并定义RAID设备

    mdadm -Cv  /dev/md0    -l 10    -n 4   -x 1  /dev/sd{b,c,d,e,f}
    

     

     

     第二步:用文件系统对每个RAID设备进行格式化

     

     

     第三步:查看阵列和热备盘的详情

    1. #使用mdadm检查RAID设备的状况
    2. mdadm --detail /dev/md0
    3. 或
    4. mdadm -D /dev/md0

     

     

     第四步:强制标记一个磁盘下线,看是否对数据有影响

     测试:

    mdadm /dev/md0 -f /dev/sdb
    

     

     

     结果:

     


     实验外命令拓展

    1. #增加新的成员
    2. mdadm -G /dev/md0 -n4 -a /dev/sdg
    mdadm /dev/md0 -a /dev/sda1       #在备用驱动器上重建分区
    
    1. #系统日志信息
    2. cat /proc/mdstat

     生成配置:

    mdadm -D -s >> /etc/mdadm.conf

    停止设备:

    mdadm -S /dev/md0
    

     

    激活设备:

    mdadm -A -s /dev/md0
    

     

    强行启动:

     

    mdadm -R /dev/md0

    删除raid信息:

     

    mdadm --zero-superblock /dev/sdb1

     4.RAID5阵列的简单过程描述

    1. #使用mdadm创建并定义RAID设备
    2. mdadm -C /dev/md0 -l 5 -n 3 -x 1 /dev/sd{b,c,d,e}1
    3. 命令 raid名 级别 盘数 热备
    4. #用文件系统对每个RAID设备进行格式化
    5. mkfs.xfs /dev/md0
    6. #使用mdadm检查RAID设备的状况
    7. mdadm --detail /dev/md0
    8. mdadm -D /dev/md0

     

     总结

     1.熟练掌握mdadm 工具及其命令格式

    2.在创建阵列时,很有必要创建一块热备盘,作为保障

    3.阵列创建过程都是相通的,需要清楚它们各自的特点。

    4.熟悉了解实验外的命令,可以作为知识拓展

  • 相关阅读:
    AI原生时代,一场彻底的“智能”觉醒
    类的成员之一:代码块
    银河麒麟/ubuntu 下安装/卸载软件包命令大全
    每日学习笔记:C++ STL 的forward_list
    uboot引导vxworks--t4080调试记录
    学C的第二十二天【深度剖析数据在内存中的存储:1. 数据类型介绍;2. 整型在内存中的存储】
    面试题:Kafka 为什么会丢消息?
    CSS实现背景网格线(background-image)
    springboot个性化课程推荐系统毕业设计源码131805
    面试官:谈谈 Go goroutine 泄露的场景
  • 原文地址:https://blog.csdn.net/qq_62462797/article/details/126145095
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号