无论你以前的磁盘阵列,以及是遵循所有的教程体验这一系列RAID与否,在Linux上管理软件RAID是不是一个非常复杂的任务,一旦你已经成为结识mdadm --manage
命令。
使用Linux中的Mdadm管理RAID设备 - 第9部分
在本教程中,我们将审查此工具提供的功能,以便您可以在需要时使用它。
RAID测试方案
作为本系列的上一篇文章中,我们将使用简单一个RAID 1(镜像)阵列,它由两个8 GB的磁盘( 为/ dev / sdb的和/ dev / SDC)和初始备用设备( 的/ dev / SDD)但是本文所列的命令和概念也适用于其他类型的设置。 也就是说,随时可以将此页面添加到浏览器的书签,让我们开始吧。
了解mdadm选项和用法
幸运的是, 的mdadm提供了一个built-in --help
标志,提供解释和文件为每个主要选项。
因此,让我们先输入:
# mdadm --manage --help
看什么是任务mdadm --manage
将使我们能够执行以及如何:
使用mdadm工具管理RAID
如上图所示,管理RAID阵列涉及一次或多次执行以下任务:
- (Re)将设备添加到阵列。
- 将设备标记为故障。
- 从阵列中删除故障设备。
- 使用备用设备更换故障设备。
- 启动一个部分构建的数组。
- 停止数组。
- 将数组标记为ro(只读)或rw(读写)。
使用mdadm工具管理RAID设备
需要注意的是,如果你省略--manage
选项,mdadm的假设的管理模式反正。 记住这个事实,以避免在路上进一步遇到麻烦。
上一个图像中突出显示的文本显示了管理RAID的基本语法:
# mdadm --manage RAID options devices
让我们举几个例子来说明。
示例1:将设备添加到RAID阵列
通常,在更换有故障的设备时或在具有在出现故障时想要使用的备件时添加新设备:
# mdadm --manage /dev/md0 --add /dev/sdd1
将设备添加到RAID阵列
示例2:将RAID设备标记为故障并将其从阵列中删除
这是在从阵列中逻辑地移除设备之前的必要步骤,并且随后以该顺序将其从机器中拉出(如果您错过了这些步骤之一,则可能导致对设备的实际损坏): -
# mdadm --manage /dev/md0 --fail /dev/sdb1
请注意上一个示例中添加的备用设备如何用于自动替换发生故障的磁盘。 不仅如此,但RAID数据恢复和重建立即开始还有:
恢复和重建Raid数据
一旦设备被手动指示为失败,它可以安全地从阵列中删除:
# mdadm --manage /dev/md0 --remove /dev/sdb1
示例3:重新添加作为先前已删除的阵列的一部分的设备
到现在为止,我们有一个工作的RAID 1阵列由2有源器件是:/ dev / SDC1和/ dev / SDD1。 如果我们试图马上重新添加/ dev / SDB1到/ dev / md0的 :
# mdadm --manage /dev/md0 --re-add /dev/sdb1
我们会遇到一个错误:
mdadm: --re-add for /dev/sdb1 to /dev/md0 is not possible
因为阵列已由最大可能数量的驱动器组成。 因此,我们有2个选择:A)添加/ dev / sdb1的作为备用,如例1所示,或者b)从数组中删除的/ dev / SDD1然后重新添加/ dev / sdb1的 。
我们选择选项B),并且将通过停止阵列后重新组装开始:
# mdadm --stop /dev/md0 # mdadm --assemble /dev/md0 /dev/sdb1 /dev/sdc1
如果上面的命令没有成功添加/ dev / sdb1的回阵,使用命令从实例#1去做。
虽然mdadm的最初检测到新添加的设备作为备用,它会开始重建数据,当它完成这样做,就应该识别该设备是RAID的积极参与:
Raid重建状态
示例4:使用特定磁盘替换Raid设备
使用备用磁盘替换阵列中的磁盘非常简单:
# mdadm --manage /dev/md0 --replace /dev/sdb1 --with /dev/sdd1
替换RAID设备
下面这导致设备--with
开关被添加到RAID而磁盘通过指示--replace
正在为故障标记:
检查Raid重建状态
示例5:将Raid阵列标记为ro或rw
创建数组后,必须在其上创建一个文件系统,并将其挂载在目录上以便使用它。 你可能没有后来才知道的是,你可以标记为RAID RO,从而只允许读操作中就可以了, 或者RW执行,以写入设备为好。
为了纪念该设备作为RO,它需要首先卸载:
# umount /mnt/raid1 # mdadm --manage /dev/md0 --readonly # mount /mnt/raid1 # touch /mnt/raid1/test1
在Raid阵列上设置权限
要配置阵列,允许写操作为好,使用--readwrite
选项。 请注意,您将需要卸载的设备和设置RW前旗停止:
# umount /mnt/raid1 # mdadm --manage /dev/md0 --stop # mdadm --assemble /dev/md0 /dev/sdc1 /dev/sdd1 # mdadm --manage /dev/md0 --readwrite # touch /mnt/raid1/test2
允许Raid的读写权限
概要
在本系列中,我们说明了如何设置企业环境中使用的各种软件RAID阵列。 如果您遵循这些文章中提供的文章和示例,您准备利用Linux中的软件RAID的强大功能。
如果您碰巧有问题或建议,请随时使用下面的表单与我们联系。