增长现有的RAID阵列和删除Raid中的失败磁盘 - 第7部分

在这里,我们将看到如何增长(扩展)现有的阵列或RAID组,我们也将看到如何从阵列中删除故障磁盘,而不会有任何数据丢失。

每个新手都会得到word数组的混淆。 数组只是磁盘的集合。 换句话说,我们可以将数组调用为一个集合或组。 就像一组包含6个数字的鸡蛋。 同样,RAID Array包含磁盘数量,它可以是2,4,6,8,12,16等等。现在你知道什么是Array。

这里我们将看到如何增长(扩展)现有的数组或RAID组。 例如,如果我们使用2个磁盘阵列中的,以形成一个RAID 1组,并在某些情况,如果我们需要在该组中更多的空间,就可以使用的mdadm -grow命令,只通过添加一个延伸的阵列的大小的磁盘到现有阵列。 生长后(将磁盘添加到现有阵列),我们将看到如何从阵列中删除一个故障磁盘。

在Linux中生成RAID数组

增长RAID数组和删除失败的磁盘

假设一个磁盘很弱,需要删除该磁盘,直到它失败让它在使用,但我们需要添加一个备用驱动器,并在失败之​​前增长镜像,因为我们需要保存我们的数据。 当弱磁盘失败时,我们可以从数组中删除它,这是我们将在本主题中看到的概念。

RAID增长的特点

  1. 我们可以增长(扩展)任何突袭集的大小。
  2. 我们可以在生成raid阵列后用新磁盘删除故障磁盘。
  3. 我们可以生成raid数组,没有任何停机时间。

要求

  1. 要生长RAID阵列,我们需要一个现有的RAID集(Array)。
  2. 我们需要额外的磁盘来增长数组。
  3. 这里我使用1个磁盘来增加现有的数组。

在我们了解Array的增长和恢复之前,我们必须了解RAID级别和设置的基础知识。 按照以下链接了解这些设置。

  1. 了解基本RAID概念 - 第1部分
  2. 在Linux中创建软件RAID 0 - 第2部分
我的服务器设置
Operating System 	:	CentOS 6.5 Final
IP Address	 	:	192.168.0.230
Hostname		:	grow.howtoinglocal.com
2 Existing Disks 	:	1 GB
1 Additional Disk	:	1 GB

在这里,我已经存在的RAID有2个磁盘,每个大小是1GB,我们现在添加一个大小为1GB的磁盘到我们现有的RAID阵列。

生长现有的RAID阵列

1.成长阵列之前,先使用以下命令列出现有的RAID阵列。

# mdadm --detail /dev/md0
检查现有RAID数组

检查现有RAID数组

:以上输出显示,我已经在RAID阵列与RAID1二级磁盘。 现在,我们在现有数组中再添加一个磁盘,

2.现在让我们添加新的磁盘“SDD”,并使用“FDISK”命令分区。

# fdisk /dev/sdd

请使用以下说明创建的/ dev / SDD硬盘上的分区。

  1. “N”来创建新的分区。
  2. 然后选择主分区“P”。
  3. 然后选择“1”是第一个分区。
  4. 接着按“P”来打印创建的分区。
  5. 在这里,我们选择'FD'作为我的类型为RAID。
  6. 接着按“P”来打印定义的分区。
  7. 然后再次使用“P”打印什么,我们所做的更改。
  8. 使用“W”写的变化。
在Linux中创建新分区

创建新的sdd分区

3.一旦新的SDD分区上创建,您可以使用下面的命令验证。

# ls -l /dev/ | grep sd
确认sdd分区

确认sdd分区

4.接下来,检查任何现有RAID新创建的磁盘,加入到前阵。

# mdadm --examine /dev/sdd1
检查sdd分区上的Raid

检查sdd分区上的Raid

:以上输出显示磁盘有没有检测到超块,意味着我们可以前进到一个新的磁盘添加到现有阵列。

4.要添加新的分区/ dev / SDD1现有阵列MD0,请使用以下命令。

# mdadm --manage /dev/md0 --add /dev/sdd1
将磁盘添加到RAID阵列

将磁盘添加到RAID阵列

5.一旦新盘已添加,请使用我们的阵列中添加的磁盘。

# mdadm --detail /dev/md0
确认磁盘已添加到Raid

确认磁盘已添加到Raid

:在上面的输出,你可以看到驱动器已作为备用。 在这里,我们已经在阵列中有2个磁盘,但我们期望的是阵列中的3个设备,我们需要增长阵列。

6.要成长,我们必须使用下面的命令阵列。

# mdadm --grow --raid-devices=3 /dev/md0
生成Raid数组

生成Raid数组

现在我们可以看到第三盘(SDD1)已被添加到阵列中,加入第三个磁盘将同步从其他两个磁盘中的数据之后。

# mdadm --detail /dev/md0
确认Raid阵列

确认Raid阵列

注意 :对于大尺寸盘片会需要几个小时来同步内容。 这里我使用1GB虚拟磁盘,所以它在几秒钟内完成非常快。

从磁盘阵列中删除磁盘

7.在数据已经从其他两个磁盘同步到新的磁盘“SDD1”,这意味着所有三个磁盘现在有相同的内容。

正如我先前所说,让我们假设一个磁盘是弱的,需要在故障之前删除。 所以,现在假设盘'SDC1'薄弱,需要从现有阵列中删除。

在删除磁盘之前,我们必须将磁盘标记为失败的磁盘,那么只有我们能够删除它。

# mdadm --fail /dev/md0 /dev/sdc1
# mdadm --detail /dev/md0
阵列中的磁盘故障

阵列中的磁盘故障

从上面的输出,我们清楚地看到磁盘在底部被标记为故障。 即使它的故障,我们可以看到RAID设备有3个 ,失败1和国家被降解。

现在我们要删除阵列的故障的驱动器和2个设备成长阵列,使RAID设备将像以前一样设置为2的设备。

# mdadm --remove /dev/md0 /dev/sdc1
删除RAID阵列中的磁盘

删除RAID阵列中的磁盘

8.一旦故障的驱动器被删除了,现在我们已经长大使用2个磁盘RAID阵列。

# mdadm --grow --raid-devices=2 /dev/md0
# mdadm --detail /dev/md0
在RAID阵列中增加磁盘

在RAID阵列中增加磁盘

从about输出,你可以看到我们的数组只有2个设备。 如果需要再次增大阵列,请按照上述步骤进行操作。 如果需要将驱动器添加为备用驱动器,请将其标记为备用驱动器,以便如果磁盘出现故障,它将自动激活并重建。

结论

在本文中,我们已经了解了如何增加现有RAID组,以及如何在重新同步现有内容后从阵列中删除有故障的磁盘。 所有这些步骤可以在没有任何停机时间的情况下完成。 在数据同步期间,系统用户,文件和应用程序在任何情况下都不会受到影响。

接下来,文章I将向您介绍如何管理RAID,然后继续关注更新,不要忘记添加您的评论。