技巧:将文件系统在线迁移到更小的物理卷

使用逻辑卷管理器 (LVM) 在不宕机的情况下回收磁盘空间

Comments

难题:缩小物理卷

IBM AIX LVM 提供了若干特性,可以使您在不宕机的情况下回收未利用的磁盘空间。您可以使用 chfs 缩小文件系统,并从卷组 (VG) 中移除未使用的物理卷 (PV),从而将存储空间分配到其他位置。

然而,如果希望缩小 AIX PV 来收回未使用的磁盘空间,您将会对 PV 造成破坏。如果有一个大的 SAN LUN,其中包含大量未使用的物理分区 (PP),您可以备份数据、减小 LUN,并将数据恢复到较小的 PV 中。然而,这将造成系统宕机,这是不可接受的。在完成数据清理后,如果某个大型 LUN 需要回收一些空间,它应当尽可能地实现无缝操作。

解决方案:迁移到一个较小的新物理卷

您可能无法缩小正在使用中的 PV 的大小,但是您可以创建一个较小的新 SAN LUN,并将它添加到现有 VG,然后将数据从较大的 PV 迁移到较小的 PV。完成这些操作后,原来那些较大的 PV 就可以从 VG 中移除。此后,可以通过 rmdev 将 hdisk 从 Object Data Manager (ODM) 中移出。然后,您可以重新将 SAN 存储用于其他用途。

该过程要求新的 PV 具有合适的大小和特征,从而能够添加到现有 VG。它必须有足够大来存放原始 PV(正在使用的 PP)中的所有数据。该过程还假设没有发生任何逻辑卷 (LV) 划分,因为这将限制使用 mklvcopy 运行逻辑卷镜像的能力。

对于本例,提供了一个具有 50 GB PV 的 VG,名称为 datavglspv 命令显示了 PV 及空闲和使用中 PP 的总大小(参见 清单 1)。

清单 1. 显示物理卷特征
# lspv hdisk1
PHYSICAL VOLUME:    hdisk1                   VOLUME GROUP:     datavg
PV IDENTIFIER:      00cb07a45a12b4ca VG IDENTIFIER     00cb07a400004c00000001345a26db3e
PV STATE:           active
STALE PARTITIONS:   0                        ALLOCATABLE:      yes
PP SIZE:            512 megabyte(s)          LOGICAL VOLUMES:  1
TOTAL PPs:       99 (50688 megabytes)     VG DESCRIPTORS:   2
FREE PPs:         0 (0 megabytes)          HOT SPARE:        no
USED PPs:        99 (50688 megabytes)     MAX REQUEST:      256 kilobytes
FREE DISTRIBUTION:  00..00..00..00..00
USED DISTRIBUTION:  20..20..19..20..20
MIRROR POOL:        None

这里有一个增强的 journaled 文件系统 (JFS2),称为 /scratch,它分配有 49.50 GB 空间,其中有超过 35 GB 的空闲空间。该文件系统创建时使用的是 INLINE JFS2 日志:

# df -gI /scratch
Filesystem    GB blocks      Used      Free %Used Mounted on
/dev/scratchlv     49.50     14.20     35.30   29% /scratch

缩小文件系统

由于文件系统正在使用的空间不足其所分配空间的三分之一,因此可以缩小它的总磁盘分配。您可以通过 chfs 缩小文件系统的大小。下面的命令可以将其大小减小 30 GB。

# chfs -a size=-30G /scratch
Filesystem size changed to 40894464
Inlinelog size changed to 78 MB.

文件系统的总磁盘分配已经减少到 19.50 GB:

# df -gI /scratch
Filesystem    GB blocks      Used      Free %Used Mounted on
/dev/scratchlv     19.50     14.08      5.42   73% /scratch

该过程在 PV 上释放了一些 PP,如 清单 2 中的 lspv 命令所示。

清单 2. lspv 显示空闲的物理分区
# lspv hdisk1
PHYSICAL VOLUME:    hdisk1                   VOLUME GROUP:     datavg
PV IDENTIFIER:      00cb07a45a12b4ca VG IDENTIFIER     00cb07a400004c00000001345a26db3e
PV STATE:           active
STALE PARTITIONS:   0                        ALLOCATABLE:      yes
PP SIZE:            512 megabyte(s)          LOGICAL VOLUMES:  1
TOTAL PPs:          99 (50688 megabytes)     VG DESCRIPTORS:   2
FREE PPs:        60 (30720 megabytes)     HOT SPARE:        no
USED PPs:           39 (19968 megabytes)     MAX REQUEST:      256 kilobytes
FREE DISTRIBUTION:  00..01..19..20..20
USED DISTRIBUTION:  20..19..00..00..00
MIRROR POOL:        None

向卷组添加一个更小的物理卷

下一步是向现有 VG 添加一个较小的新 PV。该 PV 应当至少具有与原始较大 PV 相同的冗余和输入/输出 (I/O) 性能。例如,它应当是一个同等的独立磁盘冗余阵列 (RAID)。还应当设置任何其他调优特性(如队列深度)以确保系统性能与原始较大 PV 相匹配。

创建一个新的 LUN,将其分配给 AIX 逻辑分区 (LPAR)。在本例中,新的 LUN 为 20 GB:

# cfgmgr

lspv 命令的输出显示,新磁盘名为 hdisk2(参见 清单 3),并且它不属于某个 VG。

清单 3. 列出新的磁盘
# lspv
hdisk0          00c5a47e3f356f3c                    rootvg          active
hdisk1          00cb07a45a12b4ca                    datavg          active
hdisk2          none                                None

您可以使用 getconf 命令在磁盘添加到 VG 之前查看它的大小。以 MB 为单位显示磁盘大小:

# getconf DISK_SIZE /dev/hdisk2
20480

使用 extendvg 命令将磁盘添加到现有 VG:

# extendvg datavg hdisk2
0516-1254 extendvg: Changing the PVID in the ODM.

将逻辑分区镜像或迁移到新的物理卷

您可以将 LV 镜像到新 PV,在两个 PV 之间同步所有 PP 后即可将副本从原始 PV 中移除。

mklvcopy -k scratchlv 2

mklvcopy 还提供了其他选项。例如,您可以将同步推迟到一个更安静的时间。您还可以指定磁盘分配策略。mklvcopy 的官方文档提供了必要的细节(请参阅 参考资料)。

从原始物理卷中移除副本

完成同步后,您可以使用 rmlvcopy 从原始 PV 中移除副本。一定要指定其中包含您希望移除的副本 PV。

rmlvcopy scratchlv 1 hdisk1

您可以使用 lspv 命令确认原始 PV 中没有正在使用的 PP。如果还有一些 PP 正在使用,那么可以使用 lspv -lPVNAME 列出 PV 上的 LV。当确定所有 PP 都转移到其他 PV 中后,可以使用 reducevg 将原始 PV 从 VG 中移除:

reducevg datavg hdisk1

您应当能够使用 rmdev 从 ODM 中移除 PV:

rmdev -d -l hdisk1

最后,您可以移除 LUN 或将它分配给其他用途。

避免宕机

可以看到,LVM 特性允许您在不对用户产生影响的情况下移动数据,甚至移动到更小的磁盘。通过利用 LVM 镜像和迁移功能,您可以保持系统运行并恢复珍贵的存储空间(如果过度分配的话)。


相关主题


评论

添加或订阅评论,请先登录注册

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=AIX and UNIX, Open source
ArticleID=835317
ArticleTitle=技巧:将文件系统在线迁移到更小的物理卷
publish-date=09172012