通过移动文件重新平衡FlexGroup卷
从ONTAP 9.12.1开始、您可以通过无中断地将文件从FlexGroup 中的一个成分卷移动到另一个成分卷来重新平衡FlexGroup 卷。
随着新文件的添加和文件的增长、随着时间的推移、FlexGroup 重新平衡有助于重新分配容量。手动启动重新平衡操作后、ONTAP 将选择文件并自动无中断地移动这些文件。
请注意、如果在单个重新平衡事件中移动了大量文件、或者由于创建了多部分Inode而发生多个重新平衡事件、则FlexGroup重新平衡会降低系统性能。在重新平衡事件中移动的每个文件都有2个与该文件关联的多部分索引点。具有多部分Inode的文件数占FlexGroup文件总数的百分比越大、对性能的影响就越大。某些使用情形(例如FlexVol到FlexGroup的转换)可能会导致创建大量多部分的Inode。 |
只有当集群中的所有节点都运行ONTAP 9.12.1或更高版本时、才可以重新平衡。您必须在运行重新平衡操作的任何FlexGroup卷上启用粒度数据功能。 启用此功能后、您将无法还原到ONTAP 9.11.1及更早版本、除非删除此卷或从启用此设置之前创建的Snapshot副本进行还原。
从ONTAP 9.14.1开始、ONTAP引入了一种算法、用于无中断主动移动启用了粒度数据的卷中的文件、而无需用户交互。该算法可在非常具体的目标情形下运行、以缓解性能瓶颈。 此算法可能起作用的情形包括:集群中一个节点上的一组特定文件写入负载非常重、或者父目录非常热、文件持续增长。
从ONTAP 9 16.1开始、您还可以启用"高级容量平衡"在FlexGroup成员卷之间重新分布大型文件的数据。
FlexGroup 重新平衡注意事项
您应了解FlexGroup 重新平衡的工作原理及其与其他ONTAP 功能的交互方式。
-
FlexVol 到FlexGroup 的转换
建议您在FlexVol 到FlexGroup 转换后使用自动FlexGroup 重新平衡。而是可以通过输入来使用ONTAP 9.10.1及更高版本中提供的中断性可追溯文件移动功能
volume rebalance file-move
命令:有关命令语法、请参见volume rebalance file-move start
手册页。使用FlexGroup自动重新平衡功能重新平衡可能会在移动大量文件时降低性能、例如执行FlexVol到FlexGroup的转换时、以及将FlexVol卷上多达50%到85%的数据移动到新成分卷时。
-
最小和最大文件大小
用于自动重新平衡的文件选择基于已保存的块。 默认情况下、考虑重新平衡的最小文件大小为100 MB (可使用下面所示的min-file-size参数将其配置为低至20 MB)、最大文件大小为100 GB。
-
Snapshot副本中的文件
您可以将FlexGroup 重新平衡配置为仅考虑要移动的文件、而这些文件当前不在任何Snapshot副本中。 启动重新平衡后、如果在重新平衡操作期间随时计划执行Snapshot副本操作、则会显示一条通知。
如果正在移动文件且正在目标上进行帧传输、则Snapshot副本会受到限制。 在进行文件重新平衡期间、不允许执行Snapshot副本还原操作。
启用此选项后创建的任何Snapshot副本都
granular-data
无法复制到运行ONTAP 9.11.1及更早版本的系统、因为ONTAP 9.11.1及更早版本不支持多部分节点。 -
SnapMirror 操作
应在计划的SnapMirror操作之间进行FlexGroup 重新平衡。如果在SnapMirror操作开始之前重新定位某个文件、而该文件移动未在24分钟SnapMirror重试期间内完成、则SnapMirror操作可能会失败。 在SnapMirror传输开始后开始的任何新文件重新定位都不会失败。
-
基于文件的压缩存储效率
使用基于文件的压缩存储效率时、文件会在移动到目标之前解压缩、因此压缩节省的空间将会丢失。重新平衡后、手动启动的后台扫描程序在FlexGroup 卷上运行后、将重新获得压缩节省的空间。 但是、如果任何文件与任何卷上的Snapshot副本关联、则在进行数据压缩时将忽略该文件。
-
重复数据删除
移动经过重复数据删除的文件可以通过发生原因 提高FlexGroup 卷的整体使用量。在文件重新平衡期间、只会将唯一的块移动到目标、从而释放源上的容量。 共享块保留在源上、并复制到目标。 虽然这样可以实现减少接近全满源成分卷上的已用容量的目标、但由于在新目标上复制了共享块、因此还可能导致FlexGroup 卷上的整体使用量增加。 如果移动属于Snapshot副本一部分的文件、也可以执行此操作。只有在Snapshot副本计划回收并且Snapshot副本中不再存在文件副本之前、才会完全识别空间节省。
-
FlexClone 卷
如果在创建FlexClone卷时正在进行文件重新平衡、则不会对FlexClone卷执行重新平衡。应在创建FlexClone卷后对其执行重新平衡。
-
文件移动
在FlexGroup 重新平衡操作期间移动文件时、源成分卷和目标成分卷上的配额核算都会报告文件大小。 移动完成后、配额核算将恢复正常、并且只会在新目标上报告文件大小。
-
自主勒索软件保护
从ONTAP 9.13.1开始、在中断和无中断重新平衡操作期间支持自动防兰森软件保护。
-
对象存储卷
对象存储卷(例如S3存储分段)不支持卷容量重新平衡。
启用FlexGroup 重新平衡
从ONTAP 9.12.1开始、您可以启用无中断FlexGroup卷自动重新平衡、以便在FlexGroup成分卷之间重新分布文件。
从ONTAP 9.13.1开始、您可以计划在将来的某个日期和时间开始执行单个FlexGroup重新平衡操作。
您必须已启用 granular-data
选项、FlexGroup 然后再启用FlexGroup 重新平衡。您可以使用以下方法之一启用它:
-
使用创建FlexGroup 卷时
volume create
命令 -
通过修改现有FlexGroup 卷以使用启用设置
volume modify
命令 -
在使用启动FlexGroup 重新平衡时自动设置
volume rebalance
命令如果您使用的是ONTAP 9.16.1或更高版本,并"FlexGroup高级容量平衡"使用ONTAP命令行界面中的选项或使用System Manager启用了 `granular-data advanced`重新平衡,则还会启用FlexGroup重新平衡。
您可以使用ONTAP System Manager或ONTAP 命令行界面管理FlexGroup 重新平衡。
-
导航到*存储>卷*并找到要重新平衡的FlexGroup 卷。
-
选择 以查看卷详细信息。
-
在“* FlexGroup平衡状态*”下,选择“重新平衡”。
仅当FlexGroup状态为不平衡时,*重新平衡*选项才可用。 -
在*重新平衡卷*窗口中、根据需要更改默认设置。
-
要计划重新平衡操作,请选择*稍后重新平衡*并输入日期和时间。
-
启动自动重新平衡:
volume rebalance start -vserver <SVM name> -volume <volume name>
您也可以指定以下选项:
[[-max-runtime]<time interval>最长运行时间
[-max-threshold"<percent>:每个成分卷的最大不平衡阈值
[-min-threshold"<percent> 每个成分卷的最小不平衡阈值
[-max-file-Moves <integer>]每个成分卷的最大并发文件移动量
[-min-file-size{<integer>[KB|MB|GB|TB|PB]}]最小文件大小
[-start-time <mm/dd/yyyy-00:00:00>]计划重新平衡开始日期和时间
[-export-Snapshot{true | false}]排除滞留在Snapshot副本中的文件
示例
volume rebalance start -vserver vs0 -volume fg1
修改FlexGroup 重新平衡配置
您可以更改FlexGroup 重新平衡配置以更新不平衡阈值、并发文件数移动最小文件大小、最大运行时间以及包含或排除Snapshot副本。从ONTAP 9.13.1开始、您可以使用一些选项来修改FlexGroup 重新平衡计划。
-
导航到*存储>卷*并找到要重新平衡的FlexGroup 卷。
-
选择 以查看卷详细信息。
-
在“* FlexGroup平衡状态*”下,选择“重新平衡”。
仅当FlexGroup状态为不平衡时,*重新平衡*选项才可用。 -
在*重新平衡卷*窗口中、根据需要更改默认设置。
-
修改自动重新平衡:
volume rebalance modify -vserver <SVM name> -volume <volume name>
您可以指定以下一个或多个选项:
[[-max-runtime]<time interval>最长运行时间
[-max-threshold"<percent>:每个成分卷的最大不平衡阈值
[-min-threshold"<percent> 每个成分卷的最小不平衡阈值
[-max-file-Moves <integer>]每个成分卷的最大并发文件移动量
[-min-file-size{<integer>[KB|MB|GB|TB|PB]}]最小文件大小
[-start-time <mm/dd/yyyy-00:00:00>]计划重新平衡开始日期和时间
[-export-Snapshot{true | false}]排除滞留在Snapshot副本中的文件
停止FlexGroup 重新平衡
启用或计划FlexGroup重新平衡后、您可以随时停止它。
-
导航到*存储>卷*并找到FlexGroup 卷。
-
选择 以查看卷详细信息。
-
选择*停止重新平衡*。
-
停止FlexGroup 重新平衡:
volume rebalance stop -vserver <SVM name> -volume <volume name>
查看FlexGroup 重新平衡状态
您可以显示有关FlexGroup 重新平衡操作、FlexGroup 重新平衡配置、重新平衡操作时间以及重新平衡实例详细信息的状态。
-
导航到*存储>卷*并找到FlexGroup 卷。
-
选择 以查看FlexGroup详细信息。
-
详细信息窗格底部附近会显示* FlexGroup Balance Status*。
-
要查看有关上次重新平衡操作的信息,请选择*上次卷重新平衡状态*。
-
查看FlexGroup 重新平衡操作的状态:
volume rebalance show
重新平衡状态示例:
> volume rebalance show Vserver: vs0 Target Imbalance Volume State Total Used Used Size % ------------ ------------------ --------- --------- --------- --------- ----- fg1 idle 4GB 115.3MB - 8KB 0%
重新平衡配置详细信息的示例:
> volume rebalance show -config Vserver: vs0 Max Threshold Max Min Exclude Volume Runtime Min Max File Moves File Size Snapshot --------------- ------------ ----- ----- ---------- --------- --------- fg1 6h0m0s 5% 20% 25 4KB true
重新平衡时间详细信息的示例:
> volume rebalance show -time Vserver: vs0 Volume Start Time Runtime Max Runtime ---------------- ------------------------- ----------- ----------- fg1 Wed Jul 20 16:06:11 2022 0h1m16s 6h0m0s
重新平衡实例详细信息的示例:
> volume rebalance show -instance Vserver Name: vs0 Volume Name: fg1 Is Constituent: false Rebalance State: idle Rebalance Notice Messages: - Total Size: 4GB AFS Used Size: 115.3MB Constituent Target Used Size: - Imbalance Size: 8KB Imbalance Percentage: 0% Moved Data Size: - Maximum Constituent Imbalance Percentage: 1% Rebalance Start Time: Wed Jul 20 16:06:11 2022 Rebalance Stop Time: - Rebalance Runtime: 0h1m32s Rebalance Maximum Runtime: 6h0m0s Maximum Imbalance Threshold per Constituent: 20% Minimum Imbalance Threshold per Constituent: 5% Maximum Concurrent File Moves per Constituent: 25 Minimum File Size: 4KB Exclude Files Stuck in Snapshot Copies: true