.tdi_3.td-a-rec { text-align: center }
.tdi_3 .td-element-style { z-index: -1 }
.tdi_3.td-a-rec-img { text-align: left }
.tdi_3.td-a-rec-img img { margin: 0 auto 0 0 }
@media (max-width: 767px) { .tdi_3.td-a-rec-img { text-align: center } }

 

欢迎阅读本指南,了解如何在 Rocky Linux 8 上配置软件 RAID |RHEL 8 使用 mdadm。RAID 也称为独立/廉价磁盘冗余阵列,用于将多个磁盘组合成一个阵列,其性能优于一个大磁盘。这些磁盘是首选磁盘,因为它们具有弹性、高性能,并有助于避免磁盘阵列中的单点故障。

在 Rocky Linux 8 上配置软件 RAID

在 RHEL 8 上配置软件 RAID

 

.tdi_2.td-a-rec { text-align: center }
.tdi_2 .td-element-style { z-index: -1 }
.tdi_2.td-a-rec-img { text-align: left }
.tdi_2.td-a-rec-img img { margin: 0 auto 0 0 }
@media (max-width: 767px) { .tdi_2.td-a-rec-img { text-align: center } }

 

RAID 在至少两个或更多设备中工作,因此当写入数据时,它将分布在多个磁盘上,从而保证来自多个磁盘的高数据可用性。有两种类型的 RAID:

  • 软件RAID - 它附带MD多驱动程序),要创建和管理它,我们可以使用“”实用程序。mdadm
  • 硬件 RAID – 这是 PCI 或 PCI-E 卡或集成在主板上。它们有自己的内置BIOS内部,它们是在RAID上安装操作系统之前配置的
  • 固件 RAID – 它也被称为 ATARAID。这基本上是一种软件 RAID,其中 RAID 集可以使用基于固件的菜单进行配置,通常挂接到 BIOS 中,允许您从其 RAID 集启动。

RAID 支持的配置包括运行级别 0、1、4、5、6、10 和线性。下表详细阐述了这些运行级别。

突袭级别 使用的方法 最小磁盘数 优点 缺点
0 条带化 2 繁重的读取操作 高性能 如果一个磁盘发生故障,数据将丢失
1 镜像 2 用于应用程序服务器 容错和高读取性能 写入 OPS 几乎没有延迟,存储减少了 1/2。
5 条纹和奇偶校验 3 可用于应用程序和普通文件存储 速度和容错能力 编写 OPS 几乎没有延迟,减少了 1/3 的存储空间。
6 条纹和双重奇偶校验 4 应用程序服务器和大文件存储 具有额外的冗余级别和高速性能 写入性能低,存储减少
10(1+0) 条带化和镜像 4 用于高利用率的数据库服务器 写入性能和强大的容错能力 它减少了 1/2 的存储空间,提供的可扩展性有限。

Liner RAID 配置组驱动器以创建更大的虚拟磁盘,此处当任何成员驱动器发生故障时,无法使用整个阵列。成员的总容量构成磁盘的容量。

 

软件 RAID 具有以下功能:

  • 使用空闲系统资源进行后台阵列重建
  • 多线程设计
  • 自动更正阵列中磁盘上的坏扇区
  • 热插拔驱动器支持
  • 无需重建即可在 Linux 机器之间移植阵列
  • 接管支持RAID级别转换,例如RAID0到RAID6
  • 重新同步检查点,以便在重新同步期间重新启动计算机时,在启动时,重新同步将从中断的位置继续,而不会重新开始
  • 自动 CPU 检测,以利用某些 CPU 功能,例如流式处理单指令多数据 (SIMD) 支持
  • 定期检查 RAID 数据的一致性,以确保阵列的运行状况

现在,我们将深入了解并享受与 Rocky Linux 8 上的软件 RAID 相关的惊人功能 |RHEL 8.

步骤 1 – 在磁盘上创建 RAID 分区

要设置任何运行级别,至少需要两个磁盘/分区。检查系统上的可用磁盘,如下所示。

lsblk

示例输出:

NAME        MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sr0 11:0 1 9.2G 0 rom
vda 252:0 0 40G 0 disk
├─vda1 252:1 0 1G 0 part /boot
└─vda2 252:2 0 39G 0 part
├─rl-root 253:0 0 35G 0 lvm /
└─rl-swap 253:1 0 4G 0 lvm [SWAP]
vdb 252:16 0 10G 0 disk
vdc 252:32 0 10G 0 disk
vdd 252:48 0 10G 0 disk
vde 252:64 0 10G 0 disk

在本指南中,我们附加了 4 个磁盘 vdbvdc、vdd 和 vde,每个磁盘的存储大小为 10GB。现在在所有磁盘上创建一个 RAID 分区。在这里,我们将使用 .parted

在您的系统上安装分部。

sudo dnf install parted

切换到根用户:

sudo su -

在每个磁盘上设置分区类型(gpt),如下所示。

parted --script /dev/vdb "mklabel gpt"
parted --script /dev/vdc "mklabel gpt"
parted --script /dev/vdd "mklabel gpt"
parted --script /dev/vde "mklabel gpt"

现在在磁盘上创建一个分区,并将文件类型设置为 EXT4。

parted --script /dev/vdb "mkpart primary ext4 0% 100%"
parted --script /dev/vdc "mkpart primary ext4 0% 100%"
parted --script /dev/vdd "mkpart primary ext4 0% 100%"
parted --script /dev/vde "mkpart primary ext4 0% 100%"

创建分区后,将其设置为 RAID 分区。

parted --script /dev/vdb "set 1 raid on"
parted --script /dev/vdc "set 1 raid on"
parted --script /dev/vdd "set 1 raid on"
parted --script /dev/vde "set 1 raid on"

检查创建的分区表。

parted --script /dev/vdb "print"

示例输出:

Model: Virtio Block Device (virtblk)
Disk /dev/vdb: 10.7GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: Number Start End Size File system Name Flags
1 1049kB 10.7GB 10.7GB ext4 primary raid

第 2 步 – 在 Rocky Linux 8 上安装软件 RAID |RHEL 8

创建分区后,我们将设置为设置软件RAID。在本指南中,我们将使用该工具创建和管理 RAID。mdadm

在 Rocky Linux 8 上安装 |RHEL 8.mdadm

dnf install mdadm -y

现在使用的基本语法mdadm如下。

mdadm [mode] <raiddevice> [options] <component-devices>

在命令中:

  • 模式 – 指定要执行的操作。这包括;

    • 生成 (-B, –build) – 构建没有每个设备元数据(超级块)的数组。
    • 组装 (-A, –assemble) – 用于将先前创建的数组的组件组装到活动数组中。
    • Create (-C, –create) – 用于创建具有每个设备元数据(超级块)的新数组。
    • Grow (-G, –grow) – 用于增大/缩小阵列或重塑它。
    • 关注/监视 (-F, –关注, –监视) – 监视一个或多个 md 设备并处理任何状态更改
    • 自动检测 (–自动检测) – 此模式不作用于阵列,而是请求 Linux 内核激活任何自动检测的阵列。
    • 其他模式包括杂项管理

要使用四个磁盘创建软件 RAID 级别 10,我们将使用以下命令:

mdadm --create /dev/md0 --level=10 --raid-devices=4 /dev/vd[bcde]1

该命令也可以缩短如下。

mdadm -C /dev/md0 -l raid10 -n=4 /dev/vd[bcde]1

在上面的命令中:

  • -l, –level=指定可以是级别之一的 RAID 级别;线性, RAID 0, 0, 条带, RAID 1, 1, 镜像, raid4, 4, raid5, 5, raid6, 6, raid10, 10, multipath
  • -n, –raid-devices是阵列中活动设备的数量。

现在按如下方式创建 RAID。

mdadm: partition table exists on /dev/vdb
mdadm: partition table exists on /dev/vdb but will be lost or
meaningless after creating array
mdadm: partition table exists on /dev/vdc
mdadm: partition table exists on /dev/vdc but will be lost or
meaningless after creating array
mdadm: partition table exists on /dev/vdd
mdadm: partition table exists on /dev/vdd but will be lost or
meaningless after creating array
mdadm: partition table exists on /dev/vde
mdadm: partition table exists on /dev/vde but will be lost or
meaningless after creating array
Continue creating array? y
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.

现在检查 RAID 状态:

$ mdadm --detail /dev/md0
/dev/md0:
Version : 1.2
Creation Time : Fri Jan 28 03:33:16 2022
Raid Level : raid10
Array Size : 20953088 (19.98 GiB 21.46 GB)
Used Dev Size : 10476544 (9.99 GiB 10.73 GB)
Raid Devices : 4
Total Devices : 4
Persistence : Superblock is persistent Update Time : Fri Jan 28 03:35:00 2022
State : clean
Active Devices : 4
Working Devices : 4
Failed Devices : 0
Spare Devices : 0 Layout : near=2
Chunk Size : 512K Consistency Policy : resync Name : localhost.localdomain:0 (local to host localhost.localdomain)
UUID : 089d8e15:403e261e:dbbee899:36a357b2
Events : 17 Number Major Minor RaidDevice State
0 252 16 0 active sync set-A /dev/vdb
1 252 32 1 active sync set-B /dev/vdc
2 252 48 2 active sync set-A /dev/vdd
3 252 64 3 active sync set-B /dev/vde

使用以下命令获取详细信息列表:

mdadm --examine /dev/vd[bcde]

或者,使用以下命令检查 RAID 的状态:

$ cat /proc/mdstat
Personalities : [raid10]
md0 : active raid10 vde[3] vdd[2] vdc[1] vdb[0]
20953088 blocks super 1.2 512K chunks 2 near-copies [4/4] [UUUU] unused devices: <none>

步骤 3 – 在 RAID 设备上创建文件系统

为了能够使用 RAID 设备,您需要在 Rocky Linux 8 |RHEL 8 系统。

要为 RAID 设备 /dev/md0 创建文件系统,请按以下步骤操作。

mkfs.ext4 /dev/md0

示例输出:

mke2fs 1.45.6 (20-Mar-2020)
Discarding device blocks: done
Creating filesystem with 5238272 4k blocks and 1310720 inodes
Filesystem UUID: e2570369-67d8-444c-9125-6afdb68dc7d5
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000 Allocating group tables: done
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

步骤 4 – 在 Rocky Linux 8 上安装软件 RAID 设备|RHEL 8.

现在我们可以将创建的分区挂载到您的首选位置。

 
  • 临时安装

使用这种类型的安装,您需要在每次重新启动系统时安装设备。按如下方式将其安装在 /mnt

mount /dev/md0 /mnt/

验证装载是否成功:

$ df -hT -P /mnt/
Filesystem Type Size Used Avail Use% Mounted on
/dev/md0 ext4 20G 45M 19G 1% /mnt

我们已经看到存储减少了 1/2 RAID 10 的缺点之一

  • 永久安装

这可确保挂载的设备是永久性的。我们需要将挂载添加到 /etc/fstab 文件中,如下所示。

$ sudo vim /etc/fstab
/dev/md0 /mnt ext4 defaults 0 0

现在我们需要更新/etc/mdadm/mdadm.conf 。这是通过创建一个配置文件来描述当前活动的阵列来实现的。

$ mdadm --detail --scan
ARRAY /dev/md0 metadata=1.2 name=localhost.localdomain:0 UUID=089d8e15:403e261e:dbbee899:36a357b2

mdadm.conf 进行更改。

    mdadm --detail --scan > /etc/mdadm/mdadm.conf

重新启动系统以验证设备是否持久。

sudo reboot

成功重启后,检查设备

$ df -hT -P /mnt/
Filesystem Type Size Used Avail Use% Mounted on
/dev/md0 ext4 20G 45M 19G 1% /mnt
 

# 删除raid流程
停止运行RAID
mdadm -S /dev/md0
 
删除自动配置文件
将/etc/mdadm/mdadm.conf文件中关于该md0的配置信息删除即可,这个方式有很多种。由于我的配置信息中只有一个RAID,所以我选择将文件清空。
cat /dev/null > /etc/mdadm/mdadm.conf
删除元数据
以前我一直以为删除来配置文件就算彻底结束了,可是再重启的话还是可以在/dev下找到md设备,后来发现是没有将RAID分区中的元数据删除。
mdadm --zero-superblock /dev/sdb5  ,对于其他分区格式也一样。

Δ

.mobile-leaderboard-1-multi-118 { border: none !important; display: block !important; float: none !important; line-height: 0; margin: 15px auto !important; max-width: 100% !important; min-height: 250px; min-width: 300px; padding: 0; text-align: center !important }
.tdi_4.td-a-rec { text-align: center }
.tdi_4 .td-element-style { z-index: -1 }
.tdi_4.td-a-rec-img { text-align: left }
.tdi_4.td-a-rec-img img { margin: 0 auto 0 0 }
@media (max-width: 767px) { .tdi_4.td-a-rec-img { text-align: center } }

Rocky8.6软raid的更多相关文章

  1. Raid 介绍以及软raid的实现

    RAID: old Redundant Arrays of Inexpensive Disks (廉价磁盘冗余阵列) new Redundant Arrays of Independent Disks ...

  2. CentOS 6.3下配置软RAID(Software RAID)

    一.RAID 简介 RAID 是英文Redundant Array of Independent Disks 的缩写,翻译成中文意思是“独立磁盘冗余阵列”,有时也简称磁盘阵列(Disk Array). ...

  3. 网易视频云技术分享:linux软raid的bitmap分析

    网易视频云是网易倾力打造的一款基于云计算的分布式多媒体处理集群和专业音视频技术,提供稳定流畅.低时延.高并发的视频直播.录制.存储.转码及点播等音视频的PAAS服务,在线教育.远程医疗.娱乐秀场.在线 ...

  4. RAID、软RAID和硬RAID

    RAID(redundant array of inexpensive disks):独立的硬盘冗余阵列,基本思想是把多个小硬盘组合在一起成为一个磁盘组,通过软件或硬件的管理达到性能提升或容量增大或增 ...

  5. ☆RHEL6创建软raid的使用☆——经典之作

    raid主要的种类 1.raid0  扩展卷   raid 0又称Stripee或Striping,中文译为集带工作方式, 有时也可以理解为拼凑. 它是将要存取的数据以条带状的形式尽量平均分配到多个硬 ...

  6. linux磁盘管理系列-软RAID的实现

    1 什么是RAID RAID全称是独立磁盘冗余阵列(Redundant Array of Independent Disks),基本思想是把多个磁盘组合起来,组合一个磁盘阵列组,使得性能大幅提高. R ...

  7. linux磁盘管理系列二:软RAID的实现

    磁盘管理系列 linux磁盘管理系列一:磁盘配额管理   http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_linux_040_quota.html l ...

  8. linux服务器系统盘坏且系统盘为软raid的修复方法

    1 需要换新盘的情况 1.1 一块盘grub损坏修复 一块盘grub损坏修复(可通过另一块盘进入系统的情况).更换硬盘的方式,可以热插拔,也可以服务器断电后更换,但如果是热插拔,可能会导致盘符变更.坏 ...

  9. Liunx软Raid实现

    Liunx软Raid实现 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 在配置软Raid之前,我们首先要了解一下什么是Raid,Raid又分哪几个系列?哪个又是最靠谱的组合?我们生 ...

  10. 软RAID管理命令mdadm详解

    软RAID管理命令mdadm详解 mdadm是linux下用于创建和管理软件RAID的命令,是一个模式化命令.但由于现在服务器一般都带有RAID阵列卡,并且RAID阵列卡也很廉价,且由于软件RAID的 ...

随机推荐

  1. 18 网路进阶设定:Bridge、LACP、VLAN

    18 网路进阶设定:Bridge.LACP.VLAN 18.1 建立第二网路桥接装置(Bridge) 在预设安装完的情况下,PVE会使用其中一个连接埠桥接至[vmbr0]这个预设的网路桥接装置,所有的 ...

  2. python 在一个文件夹的所有文件中查找关键字

    python 在一个文件夹的所有文件中查找关键字 import os,shutil import re key='Hello' re_parttern=re.compile(r''+key,re.DO ...

  3. (unsigned)short溢出后隐式转换为int

    同学被面试官问到一个细节中的细节,虽然个人觉得意义不大,但还是好奇并在和同学一起实验后搞清楚了,记录一下 如下: int main() { unsigned short a = 65535, b = ...

  4. android webview与js简单的交互方案

    最近研究webview与js交互,看了几个开源库实现,感觉不尽如人意,存在主要问题是,耦合较高,使用不够简洁,后来参考Uri设定规则,格局Uri类似协议自定义了类似的js交互协议 比较简洁,自定义协议 ...

  5. 魔兽世界2009年更换代理,九城CEO至全体员工公开信

    尊敬的全体第九城市员工, 最近一段时间以来,有关九城将要失去<魔兽世界>代理权的说法甚嚣尘上,各种传言四起.在目前来自<魔兽世界>的收入仍占九城收入绝大部分的情况下,对于外界的 ...

  6. [WPF]MVVM的数据绑定

    啥是MVVM? 我理解的MVVM是Model(数据),View(界面),ViewModel(数据与界面之间的桥梁)的缩写,是一种编程模式.前期需要多花一些时间去编辑绑定,在后期维护方便.只需要关注数据 ...

  7. 拼多多anti-content核心算法完全解密+修复

    今天偶然看到拼多多的ant-content好奇就搞了下. 解密方法和代码 代码是用ast来解密的.利用babel处理,解密一部分+手动修复代码. AST相关的教程和文档 https://steaken ...

  8. ABAP 写入批次特征值以及更新批次特征值

    需求 SAP启用了批次,需要在特征值中写入物料类型,区分该物料批次是用于研发的亦或是量产的,关于研发和量产标识我是坐在采购订单行项目增强中了,这里就不多赘述了,参考https://www.cnblog ...

  9. stm32 出入栈

    Start.S 一般指定栈顶指针及栈大小 1.硬件中断 有硬件入栈和软件入栈部分 硬件入栈寄存器:   R0,R1,R2,R3,R12,PSR 软件入栈寄存器:   r4 - r11 2.程序切换入栈 ...

  10. 使用batch-import工具向neo4j中导入海量数据【转】

    转载备忘 链接:https://www.yisu.com/zixun/496254.html 这篇文章给大家分享的是有关数据库中怎么使用batch-import工具向neo4j中导入海量数据的内容.小 ...