如何确定 NetApp 文件管理器快照的实际大小?

如何确定 NetApp 文件管理器快照的实际大小?

我们有一个卷提供 CIFS 数据,它似乎比其他卷包含更多的快照数据。我怀疑这是由于变化率较高造成的,我可以使用命令确定这一点snap delta。但我还希望能够查看快照大小并根据其大小定位特定的快照。

在 CLI 和系统管理器中,当在几分钟内反复查看快照时,大小会逐渐增加到某个点,然后又立即下降。我的意思并不是说快照的大小在增加和减少,只是报告的大小。理想情况下,我想知道是什么原因导致这种情况发生。

但更重要的是,我如何确定实际的快照的大小?

答案1

由于快照的工作方式,实际上很难明确地说出来。快照本身并不是任何数据,它只是 inode 表的一个副本。此 inode 表引用的块具有增加的引用计数。只有当引用计数降至零时,块才会被释放。

本质上,这也是重复数据删除的工作原理。指针被重定向到重复块,并且它的引用计数增加。“旧”块的引用计数减少,因此它可能成为释放的候选。(这将在引用它的任何快照过期之后发生)。

但这些“释放”的块实际上不会被立即重新使用 - WAFL 的工作方式是,传入的写入(通常!)无论如何都会完全转到一个新块,而“空闲”块则会作为后台进程被清除。

这就是为什么实际上很难判断快照有多大的原因——因为你基本上需要检查其中的每个块,以查看该特定块是否是该特定快照所独有的。snap delta并且snap list是相当好的近似值,但由于快照之间的依赖关系,很难给出完美的答案。

相关内容