我有一台 CentOS 7 的服务器,使用 LUN 来存储数据。最近Storage团队扩展了LUN空间。这是多路径 -ll 的输出
~ # multipath -ll
mpathc (3600601606cb04000a0eb35b80750eb11) dm-5 DGC ,VRAID
**size=27T** features='2 queue_if_no_path retain_attached_hw_handler' hwhandler='1 alua' wp=rw
|-+- policy='service-time 0' prio=50 status=active
| |- 1:0:0:2 sdl 8:176 active ready running
| `- 4:0:0:2 sdn 8:208 active ready running
`-+- policy='service-time 0' prio=10 status=enabled
|- 1:0:1:2 sdm 8:192 active ready running
`- 4:0:2:2 sdo 8:224 active ready running
之前的大小为 20TB,现在已扩展到 27TB。
这是 fdisk 命令的输出
fdisk -l /dev/mapper/mpathc
WARNING: fdisk GPT support is currently new, and therefore in an experimental phase. Use at your own discretion.
Disk /dev/mapper/mpathc: 29686.8 GB, 29686813949952 bytes, 57982058496 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 4194304 bytes
Disk label type: gpt
Disk identifier: 843A6F7E-581A-455E-822F-2CE4306394BF
# Start End Size Type Name
1 8192 42949672926 20T Linux filesyste
您可以看到 LUN 的大小和扇区都增加了。这是 kpartx 命令的输出
kpartx -l /dev/mapper/mpathc
GPT:Primary header thinks Alt. header is not at the end of the disk.
GPT:Alternate GPT header not at the end of the disk.
GPT: Use GNU Parted to correct GPT errors.
mpathc1 : 0 42949664735 /dev/mapper/mpathc 8192
这是 df 命令的输出
df -h /dev/mapper/mpathc1
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/mpathc1 20T 17T 4.0T 81% /Splunk-Storage/COLD
所以我不知道如何在不丢失数据的情况下扩展 /dev/mapper/mpathc1 的空间。我非常感谢任何建议提前谢谢
第 1 步:尝试重新扫描存储设备以告知内核大小已更改。我不确定是否必须对多路径的所有四个组件都执行此操作,但它不应该受到伤害。您可以通过将任何内容写入
rescan
文件来重新扫描存储设备:扫描 HBA 也应该有效。SCSI HBA 有一个
scan
文件;您将三个十进制数字控制器、目标和 LUN 写入其中以扫描该 LUN。或者使用通配符“-”代替数字。下面扫描两个 HBA 上控制器 0 上的所有设备:第2步:此时,内核知道
/dev/mapper/mpathc
是27TB。您现在必须增加分区 1 的大小。该parted
命令可用于调整分区大小,但我相信 Centos 7 版本parted
没有该功能。因此,我将卸载文件系统,删除分区(我知道这很可怕),然后再次创建分区,这次使用正确的大小。检查其参数是否正确。您可能希望首先在不包含有价值数据的磁盘上进行测试。
我不知道是否可以安装
parted
具有该resizepart
命令的版本。这将使第二步更容易。RHEL 7 存储手册包含与 类似的过程,
fdisk
但它采用 LVM,并且没有多路径。完成该fdisk
过程后,您可能必须使用kpartx
通知内核有关磁盘上的更改。因此,分开的方法似乎更容易,因此对我来说更安全。第三步:增加文件系统。首先,重新安装它。如果是 XFS,则必须挂载它,然后运行
xfs_growfs
.如果是 ext[234],运行
resize2fs
. 它可以安装或卸载。你完成了。
感谢您的时间。
在第 2 步中,我使用
resizepart
了但我得到了这个:Error: The backup GPT table is not at the end of the disk, as it should be. This might mean that another operating system believes the disk is smaller. Fix, by moving the backup to the end (and removing the old backup)? Fix/Ignore/Cancel?
我应该修复它吗?
这是完整的输出