扩展运行 Linux 的 RAID 1(HP SmartArray P410i)

扩展运行 Linux 的 RAID 1(HP SmartArray P410i)

我接管了一个相当简单的服务器设置,其具有以下 RAID 1 配置,运行 Ubuntu 11.10(内核 3.0.0-12-server x86_64):

=> ctrl all show config

Smart Array P410i in Slot 0 (Embedded)    (sn: removed)

   array A (SAS, Unused Space: 1335535 MB)


      logicaldrive 1 (279.4 GB, RAID 1, OK)

      physicaldrive 1I:1:1 (port 1I:box 1:bay 1, SAS, 1 TB, OK)
      physicaldrive 1I:1:2 (port 1I:box 1:bay 2, SAS, 1 TB, OK)

最初有两个 300GB 的磁盘被 1TB 的磁盘取代,现在我必须扩展逻辑卷以使用额外的空间。

但是,当我尝试这样做时,我收到以下警告:

=> ctrl slot=0 ld 1 modify size=max

Warning: Extension may not be supported on certain operating systems.
         Performing extension on these operating systems can cause data to
         become inaccessible. See ACU documentation for details. Continue?
         (y/n)

回答“是”安全吗?还是我面临损坏文件系统/丢失数据的风险?之后重新排列和扩展文件系统应该不是问题,因为我可以让服务器脱机并从 gparted 实时磁盘启动。

这是正在使用的 RAID 控制器的配置:

=> ctrl all show detail

Smart Array P410i in Slot 0 (Embedded)
   Bus Interface: PCI
   Slot: 0
   Serial Number: removed
   RAID 6 (ADG) Status: Disabled
   Controller Status: OK
   Hardware Revision: Rev C
   Firmware Version: 5.12
   Rebuild Priority: Medium
   Expand Priority: Medium
   Surface Scan Delay: 15 secs
   Surface Scan Mode: Idle
   Wait for Cache Room: Disabled
   Surface Analysis Inconsistency Notification: Disabled
   Post Prompt Timeout: 0 secs
   Cache Board Present: False
   Drive Write Cache: Disabled
   SATA NCQ Supported: True

分区表如下:

Number  Start   End    Size    Type      File system     Flags
 1      1049kB  274GB  274GB   primary   ext4            boot
 2      274GB   300GB  25.8GB  extended
 5      274GB   300GB  25.8GB  logical   linux-swap(v1)

答案1

就 Linux 而言,RAID 阵列似乎是一个单一设备,因此它与从较小的单一驱动器迁移到较大的驱动器没有什么不同。不幸的是,您没有使用 LVM,这使得通过扩展使用额外空间的过程/稍微复杂一些。

扩展过程应该非常安全。下次运行fdisk或类似操作时,您将在磁盘末尾看到一大块未分配的空间。

使用此空间的简单方法是将其挂载为另一个文件系统:使用 fdisk 创建 /dev/sda6,在那里创建一个文件系统并挂载它。您将使用文件系统做什么(以及最好在哪里挂载它)取决于您的服务器的用途。对于共享网络托管服务器,您可能会使用它来做很多事情/home,这只是其中一个例子。

如果您想扩展当前的根分区以使用更复杂的空间(如果您使用 LVM,这会更容易、更安全)。您需要删除交换分区,扩展根分区,然后重新创建交换分区。手动完成这项工作并不困难,但除非您有信心,否则我建议您使用 gparted 之类的工具(http://gparted.sourceforge.net/) 来代替。手动步骤如下:

  1. 使用以下方式关闭交换swapoff
  2. 从分区列表中注释掉交换区域/etc/fstab
  3. 删除fdisk交换分区及其所在的扩展分区
  4. 扩展根分区。使用标准 fdisk 时,您需要删除现有分区(首先仔细记下起始扇区),然后在上面重新创建一个更大的分区
  5. 此时你可能需要重新启动
  6. 运行ext2resize /dev/sda -v以将文件系统扩展到新的更大空间。它可能会要求您fsck先运行 - 如果是这样,请按照此说明操作,然后重新运行。ext2resize /dev/sda -v当您扩展 ext2/3/4 文件系统时,可以实时调整大小。
  7. 您现在拥有更大的根文件系统
  8. 使用 fdisk 重新创建交换区域
  9. 添加交换区域/etc/fstabswapon启用它

注意:我假设 earray 显示为 /dev/sda - 如果没有,请调整上面的命令。

尽管以上所有应该安全,我 强烈 建议在继续之前进行完整备份并验证该备份(即使使用 gparted 之类的工具而不是 DIY)。

答案2

第一件事:扩​​展数组是安全的。您可以接受警告消息,不会有任何后果。

接下来,您有几个选择......

HP Smart Array 控制器是硬件 LVM 的一种形式。它们允许在线扩展,但了解两者之间的关系很重要大批和一个逻辑驱动器

  • 阵列是磁盘的物理分组。
  • 逻辑驱动器是阵列的一个细分,具有指定的 RAID 级别和大小。

同一阵列中的逻辑驱动器甚至可以具有不同的 RAID 级别!以下是更复杂的智能阵列控制器布局的示例:

Smart Array P400 in Slot 8                (sn: P61630G9SVN702)

   array A (SAS, Unused Space: 385320  MB)

      logicaldrive 1 (72.0 GB, RAID 1+0, OK)
      logicaldrive 2 (120.0 GB, RAID 1+0, OK)
      logicaldrive 3 (100.0 GB, RAID 6 (ADG), OK)
      logicaldrive 4 (100.0 GB, RAID 1+0, OK)

      physicaldrive 1I:1:1 (port 1I:box 1:bay 1, SAS, 146 GB, OK)
      physicaldrive 1I:1:2 (port 1I:box 1:bay 2, SAS, 146 GB, OK)
      physicaldrive 1I:1:3 (port 1I:box 1:bay 3, SAS, 146 GB, OK)
      physicaldrive 1I:1:4 (port 1I:box 1:bay 4, SAS, 146 GB, OK)
      physicaldrive 2I:1:5 (port 2I:box 1:bay 5, SAS, 146 GB, OK)
      physicaldrive 2I:1:6 (port 2I:box 1:bay 6, SAS, 146 GB, OK)
      physicaldrive 2I:1:7 (port 2I:box 1:bay 7, SAS, 146 GB, OK)
      physicaldrive 2I:1:8 (port 2I:box 1:bay 8, SAS, 146 GB, OK)

例如,在您的设置中显示的“未使用空间”中,您可以创建另一个 RAID1 或 RAID0 逻辑驱动器,其大小最高可达 1335535MB(RAID0)或 1335535MB/2(RAID1),这将向操作系统显示另一个块设备;/dev/sdb或者您可以扩展现有的块设备/dev/sda以使用最高 1335535/2更多的兆字节。在上面列出的命令中,您指定将数组增加到其最大大小。

由于您已经通过插入新磁盘并重建它们完成了阵列转换步骤,因此此扩展操作将是立即完成的。

完成此操作后,您将有几个操作系统选项。我想问一下您希望最终的分区和文件系统布局是什么样的...

您可以/dev/sda通过重新扫描 SCSI 块设备或重新启动来扩展您的系统。对于您的系统,重新扫描将类似于以下内容:

echo 1 > /sys/class/scsi_disk/0\:0\:0\:0/device/rescan

将会增长/dev/sda。用dmesg和确认fdisk

从那里,您可以添加分区,或扩展现有分区。您的具体布局目标是什么?

答案3

您不会破坏文件系统,因为它们不会被改变。只有逻辑驱动器的大小会改变,之后您仍然需要扩大分区和文件系统。

通常情况下,驱动程序应确保您随后能够看到驱动器的新大小。如果没有,您将在重新启动后看到新大小。

相关内容