额外添加4块硬盘,用于搭建RAID 10

检查linux的磁盘

[root@local-pyyu ~]# fdisk -l |grep '/dev/sd[a-z]'
磁盘 /dev/sda:21.5 GB, 21474836480 字节,41943040 个扇区
/dev/sda1 * 2048 2099199 1048576 83 Linux
/dev/sda2 2099200 41943039 19921920 8e Linux LVM
磁盘 /dev/sdb:5368 MB, 5368709120 字节,10485760 个扇区
磁盘 /dev/sdc:5368 MB, 5368709120 字节,10485760 个扇区
磁盘 /dev/sde:5368 MB, 5368709120 字节,10485760 个扇区
磁盘 /dev/sdd:5368 MB, 5368709120 字节,10485760 个扇区

mdadm命令

mdadm 用于建设,管理和监控软件RAID阵列
可能需要单独安装
yum install mdadm -y

参数

参数 解释
-C 用未使用的设备,创建raid
-a yes or no,自动创建阵列设备
-A 激活磁盘阵列
-n 指定设备数量
-l 指定raid级别
-v 显示过程
-S 停止RAID阵列
-D 显示阵列详细信息
-f 移除设备
-x 指定阵列中备用盘的数量
-s 扫描配置文件或/proc/mdstat,得到阵列信息

创建RAID10,且命名为/dev/md0

已知现有四块新的磁盘

磁盘 /dev/sdb:5368 MB, 5368709120 字节,10485760 个扇区
磁盘 /dev/sdc:5368 MB, 5368709120 字节,10485760 个扇区
磁盘 /dev/sde:5368 MB, 5368709120 字节,10485760 个扇区
磁盘 /dev/sdd:5368 MB, 5368709120 字节,10485760 个扇区

创建raid 10命令

mdadm -Cv /dev/md0  -a yes -n 4 -l 10 /dev/sdb /dev/sdc /dev/sdd /dev/sde

-C 表示创建RAID阵列卡
-v 显示创建过程
/dev/md0 指定raid阵列的名字
-a yes 自动创建阵列设备文件
-n 4 参数表示用4块盘部署阵列
-l 10 代表指定创建raid 10级别
最后跟着四块磁盘设备名

创建raid10

[root@local-pyyu ~]# mdadm -Cv /dev/md0  -a yes -n 4 -l 10 /dev/sdb /dev/sdc /dev/sdd /dev/sde
mdadm: layout defaults to n2
mdadm: layout defaults to n2
mdadm: chunk size defaults to 512K
mdadm: size set to 5237760K
mdadm: Fail create md0 when using /sys/module/md_mod/parameters/new_array
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.

检查raid 10分区

[root@local-pyyu ~]# fdisk -l |grep /dev/md
磁盘 /dev/md0:10.7 GB, 10726932480 字节,20951040 个扇区

格式化磁盘阵列文件系统

[root@local-pyyu ~]# mkfs.xfs /dev/md0
meta-data=/dev/md0 isize=512 agcount=16, agsize=163712 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0, sparse=0
data = bsize=4096 blocks=2618880, imaxpct=25
= sunit=128 swidth=256 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=8 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0

新建文件夹,用于挂载分区

[root@local-pyyu ~]# mkdir /chaogeRAID10
[root@local-pyyu ~]# mount /dev/md0 /chaogeRAID10/
[root@local-pyyu ~]# mount |grep md0
/dev/md0 on /chaogeRAID10 type xfs (rw,relatime,attr2,inode64,sunit=1024,swidth=2048,noquota)

检查挂载分区使用情况

[root@local-pyyu ~]# df -hT |grep md0
/dev/md0 xfs 10G 33M 10G 1% /chaogeRAID10

检查raid 10磁盘阵列的信息

[root@local-pyyu ~]# mdadm -D /dev/md0
/dev/md0:
Version : 1.2
Creation Time : Thu Dec 5 16:44:18 2019
Raid Level : raid10
Array Size : 10475520 (9.99 GiB 10.73 GB)
Used Dev Size : 5237760 (5.00 GiB 5.36 GB)
Raid Devices : 4
Total Devices : 4
Persistence : Superblock is persistent Update Time : Thu Dec 5 17:49:29 2019
State : clean
Active Devices : 4
Working Devices : 4
Failed Devices : 0
Spare Devices : 0 Layout : near=2
Chunk Size : 512K Consistency Policy : resync Name : local-pyyu:0 (local to host local-pyyu)
UUID : 9eb470b5:4dc5b8c9:8c0568c3:6bfdebf6
Events : 17 Number Major Minor RaidDevice State
0 8 16 0 active sync set-A /dev/sdb
1 8 32 1 active sync set-B /dev/sdc
2 8 48 2 active sync set-A /dev/sdd
3 8 64 3 active sync set-B /dev/sde

此时可以向磁盘中写入数据,检查分区使用情况

[root@local-pyyu chaogeRAID10]# df -h|grep md0
/dev/md0 10G 190M 9.8G 2% /chaogeRAID10 [root@local-pyyu chaogeRAID10]# pwd
/chaogeRAID10
[root@local-pyyu chaogeRAID10]# ll -h
总用量 158M
-rw-r--r-- 1 root root 158M 12月 6 11:08 ceshi.txt

raid10加入开机挂载配置文件,让其永久生效

vim /etc/fstab  #添加如下配置

/dev/md0 /chaogeRAID10 xfs defaults 0 0

故障一块硬盘怎么办

模拟一块硬盘故障,剔除一块磁盘

磁盘 /dev/sdb:5368 MB, 5368709120 字节,10485760 个扇区
磁盘 /dev/sdc:5368 MB, 5368709120 字节,10485760 个扇区
磁盘 /dev/sde:5368 MB, 5368709120 字节,10485760 个扇区
磁盘 /dev/sdd:5368 MB, 5368709120 字节,10485760 个扇区

移除一块硬盘设备

[root@local-pyyu chaogeRAID10]# mdadm /dev/md0 -f /dev/sdd
mdadm: set /dev/sdd faulty in /dev/md0

检查RAID10状态

[root@local-pyyu chaogeRAID10]# mdadm -D /dev/md0
/dev/md0:
Version : 1.2
Creation Time : Thu Dec 5 16:44:18 2019
Raid Level : raid10
Array Size : 10475520 (9.99 GiB 10.73 GB)
Used Dev Size : 5237760 (5.00 GiB 5.36 GB)
Raid Devices : 4
Total Devices : 4
Persistence : Superblock is persistent Update Time : Fri Dec 6 13:45:10 2019
State : clean, degraded
Active Devices : 3
Working Devices : 3
Failed Devices : 1
Spare Devices : 0 Layout : near=2
Chunk Size : 512K Consistency Policy : resync Name : local-pyyu:0 (local to host local-pyyu)
UUID : 9eb470b5:4dc5b8c9:8c0568c3:6bfdebf6
Events : 19 Number Major Minor RaidDevice State
0 8 16 0 active sync set-A /dev/sdb
1 8 32 1 active sync set-B /dev/sdc
- 0 0 2 removed
3 8 64 3 active sync set-B /dev/sde 2 8 48 - faulty /dev/sdd

RAID10磁盘阵列,挂掉一块硬盘并不影响使用,只需要购买新的设备,替换损坏的磁盘即可

先取消RAID10阵列的挂载,注意必须没有人在使用挂载的设备
[root@local-pyyu /]# umount /chaogeRAID10/ 重启操作系统
reboot 添加新设备
[root@local-pyyu ~]# mdadm /dev/md0 -a /dev/sdd
mdadm: added /dev/sdd 会有一个修复中的过程
[root@local-pyyu ~]# mdadm -D /dev/md0
/dev/md0:
Version : 1.2
Creation Time : Thu Dec 5 16:44:18 2019
Raid Level : raid10
Array Size : 10475520 (9.99 GiB 10.73 GB)
Used Dev Size : 5237760 (5.00 GiB 5.36 GB)
Raid Devices : 4
Total Devices : 4
Persistence : Superblock is persistent Update Time : Fri Dec 6 13:58:06 2019
State : clean, degraded, recovering
Active Devices : 3
Working Devices : 4
Failed Devices : 0
Spare Devices : 1 Layout : near=2
Chunk Size : 512K Consistency Policy : resync Rebuild Status : 27% complete Name : local-pyyu:0 (local to host local-pyyu)
UUID : 9eb470b5:4dc5b8c9:8c0568c3:6bfdebf6
Events : 41 Number Major Minor RaidDevice State
0 8 16 0 active sync set-A /dev/sdb
1 8 32 1 active sync set-B /dev/sdc
4 8 48 2 spare rebuilding /dev/sdd
3 8 64 3 active sync set-B /dev/sde 等待RAID 10 修复完毕
[root@local-pyyu ~]# mdadm -D /dev/md0
/dev/md0:
Version : 1.2
Creation Time : Thu Dec 5 16:44:18 2019
Raid Level : raid10
Array Size : 10475520 (9.99 GiB 10.73 GB)
Used Dev Size : 5237760 (5.00 GiB 5.36 GB)
Raid Devices : 4
Total Devices : 4
Persistence : Superblock is persistent Update Time : Fri Dec 6 13:58:25 2019
State : clean
Active Devices : 4
Working Devices : 4
Failed Devices : 0
Spare Devices : 0 Layout : near=2
Chunk Size : 512K Consistency Policy : resync Name : local-pyyu:0 (local to host local-pyyu)
UUID : 9eb470b5:4dc5b8c9:8c0568c3:6bfdebf6
Events : 54 Number Major Minor RaidDevice State
0 8 16 0 active sync set-A /dev/sdb
1 8 32 1 active sync set-B /dev/sdc
4 8 48 2 active sync set-A /dev/sdd
3 8 64 3 active sync set-B /dev/sde

重启软RAID

注意要配置软RAID的配置文件,否则如果停止软RAID后就无法激活了,严格按照笔记来

#手动创建配置文件
[root@local-pyyu ~]# echo DEVICE /dev/sd[b-e] > /etc/mdadm.conf #扫描磁盘阵列信息,追加到/etc/mdadm.conf配置文件中
[root@local-pyyu /]# mdadm -Ds >> /etc/mdadm.conf
[root@local-pyyu /]# cat /etc/mdadm.conf
DEVICE /dev/sdb /dev/sdc /dev/sdd /dev/sde
ARRAY /dev/md/0 metadata=1.2 name=local-pyyu:0 UUID=9eb470b5:4dc5b8c9:8c0568c3:6bfdebf6

1.取消软RAID的挂载

umount /chaogeRAID10/

2.停止软RAID

[root@local-pyyu ~]# mdadm -S /dev/md0
mdadm: stopped /dev/md0 [root@local-pyyu /]# mdadm -D /dev/md0 #看不到结果了
mdadm: cannot open /dev/md0: No such file or directory

3.在有配置文件情况下,可以正常启停RAID

[root@local-pyyu /]# mdadm -A /dev/md0        #重新激活RAID
mdadm: Fail create md0 when using /sys/module/md_mod/parameters/new_array
mdadm: /dev/md0 has been started with 4 drives. [root@local-pyyu /]# mdadm -D /dev/md0 #此时可以看到RAID 10 正常了

删除软件RAID

1.先卸载磁盘

[root@local-pyyu /]# umount /dev/md0

2.停止raid服务

mdadm -S /dev/md0

3.卸载raid中所有硬盘

mdadm --misc --zero-superblock /dev/sdb
mdadm --misc --zero-superblock /dev/sdc
mdadm --misc --zero-superblock /dev/sdd
mdadm --misc --zero-superblock /dev/sde

4.删除raid配置文件

rm -f /etc/mdadm.conf

5.删除开机自动挂载配置文件中相关的内容

vim /etc/fstab 

/dev/md0 /chaogeRAID10 xfs defaults 0 0  #删除

部署RAID 10的更多相关文章

  1. Tomcat部署Solr4.10.4

    前段时间学习solr,兴致勃勃的从官网下载到solr5.3.0最新版本,然后在后期部署时出现了很多问题.首先,4.0到5.0是个大版本更新,下载 的压缩包的文件结构有了很多变化,导致网上很多关于sol ...

  2. 图解RAID 0, RAID 1, RAID 5, RAID 10

    RAID(Redundant Array of Independent Disk 独立冗余磁盘阵列)技术是加州大学伯克利分校1987年提出,最初是为了组合小的廉价磁盘来代替大的昂贵磁盘,同时希望磁盘失 ...

  3. SSD阵列卡方案优化:考虑使用RAID 50替代RAID 10

    最近一直在研究RAID 50,因为牺牲一半的容量的RAID 10代价实在太大了,而且它提供的可用性也并不是百分百的,我们首先来看下RAID 10的可用性分析: 以同等容量的不同RAID方式作为案例分析 ...

  4. 如何在LSI MegaRAID BIOS里设定RAID 10与Hot Spare

    1. 同时按下 ”Ctrl + H” 进入MegaRAID WebBIOS 画面,可以看到所有物理硬盘 (Physical Drives) 的信息.请在左边视窗点选“Configuration Wiz ...

  5. Linux上设置RAID 10

    RAID 10(又叫RAID 1+0或镜像条带)阵列结合了RAID 0和RAID 1两者的功能特性,从而提供了高性能.容错的磁盘输入/输出操作.在RAID 0中,读取/写入操作跨多个驱动器并路执行:在 ...

  6. 模拟示例raid 5(5块磁盘 3块做raid 2块做备份 ) raid 10(5块磁盘) 修改版

    RAID5:需要至少三块(含)硬盘,兼顾存储性能.数据安全和储存成本. RAID10:需要至少四块(含)硬盘,兼具速度和安全性,但成本很高. raid 10(5块磁盘) 1.添加硬盘设备(添加5块) ...

  7. 关于RAID 10的介绍与创建

    一.RAID 10的简介 定义: RAID10也被称为镜象阵列条带.象RAID0一样,数据跨磁盘抽取:象RAID1一样,每个磁盘都有一个镜象磁盘, 所以RAID 10的另一种会说法是 RAID 0+1 ...

  8. RAID 10是将RAID 1和RAID 0结合

    RAID 10是将RAID 1和RAID 0结合,它的优点是同时拥有RAID 0的超凡速度和RAID 1的数据高可靠性,但是CPU占用率同样也更高,而且磁盘的利用率比较低.由于利用了RAID 0极高的 ...

  9. Raid 10配置流程(五块磁盘)

    Raid 10配置流程(五块磁盘) 1.在虚拟机中再添加5块硬盘.  2.使用mdadm命令创建raid10,名称为“/dev/md0” -C代表创建操作,-v显示创建过程,-a yes检查RAID名 ...

随机推荐

  1. Digester解析xml原理

    Tomcat内部是使用Digester来解析xml文件的,将xml转化为java对象. digester底层是基于SAX+事件驱动+栈的方式来搭建实现的,SAX主要用来解析xml,事件驱动主要是在解析 ...

  2. JZM 的印象笔记 (卷积,分块)

    题面 题目背景 大名鼎鼎的 OI 天花板选手 JZM 对自己的好伙伴--印象笔记有些生疏了 题目描述 作为一名 OI 选手,他的笔记中的字母只包含数字0和1. JZM 在印象笔记中找到了一行 N N ...

  3. MQ系列5:RocketMQ消息的发送模式

    MQ系列1:消息中间件执行原理 MQ系列2:消息中间件的技术选型 MQ系列3:RocketMQ 架构分析 MQ系列4:NameServer 原理解析 在之前的篇章中,我们学习了RocketMQ的原理, ...

  4. 【读书笔记】C#高级编程 第二章 核心C#

    (一)第一个C#程序 创建一个控制台应用程序,然后输入代码,输入完毕后点击F5 Console.WriteLine();这条语句的意思:把括号内的内容输出到界面上: Console.ReadKey() ...

  5. 【SQLServer】max worker threads参数配置

    查看和设置max worker threads USE master; //选中你想设置max worker threads的数据库.master表示在实例级别进行设置 GO EXEC sp_conf ...

  6. Svelte Ui Admin后台管理系统|svelte3+svelteUI中后台前端解决方案

    基于svelte3.x+svelteKit+svelte-ui网页后台管理系统SvelteAdmin. Svelte-Ui-Admin 基于svelte3.x+svelteKit+vite3+echa ...

  7. Python数据科学手册-Numpy数组的计算,通用函数

    Python的默认实现(CPython)处理某些操作非常慢,因为动态性和解释性, CPython 在每次循环必须左数据类型的检查和函数的调度..在编译是进行这样的操作.就会加快执行速度. 通用函数介绍 ...

  8. SQL 时间范围和时间粒度

    前言 使用 SQL 进行业务数据计算时,经常会遇到两个概念:时间范围 和 时间粒度 .以 最近一天的每小时的用户访问人数 为例: 最近一天 是时间范围 每小时 是时间粒度 常见的时间范围:最近五分钟. ...

  9. Gitea 与 Drone 集成实践:完全基于 Docker 搭建的轻量级 CI/CD 系统

    Drone 是一个使用 Go 语言编写的自助式的持续集成平台,和 Gitea 一样可以完全基于容器部署,轻松扩展流水线规模.开发者只需要将持续集成过程通过简单的 YAML 语法写入 Gitea 仓库目 ...

  10. windows下 Rust 环境配置

    搭建 Visual Studio Code 开发环境 首先,需要安装最新版的 Rust 编译工具和 Visual Studio Code. Rust 编译工具:https://www.rust-lan ...