2011-04-28 06:10 AM
We are facing issue with Snapshot reserve.. Situation is: We created volume with snap reserve of 5 %. But the snap shot is taking 40% of the volume space.
Can any one tell what is the purpose of 5% reserve which are assigining?
Thank you in advance
2011-04-28 06:35 AM
Could you just post the output from 'df -h' from the filer cli? (or some equivalent operation). I am still not exactly sure what you are asking.
You might also find the answer to your question (and many others) here:
2011-04-28 06:57 AM
You can see the output, the snapshot is taking about 523% of the volume.
Here is the scneario...
Created volume of 100GB with Snapshot reserve of 5%. That means the snapshot should not take more than 5 GB.
In the Output you can see the snapshot is of 40 GB.
2011-04-28 09:29 AM
Snapshot reserve only tells you what percentage of the volume size you are reserving strictly for snapshots; the filesystem data cannot write to this space. Snapshot data, however, can and will by design write into the filesystem space if the reserve is exceeded. This is how it is supposed to work - there is probably a document out there that details it (http://now.netapp.com/NOW/knowledge/docs/ontap/rel713/html/ontap/onlinebk/snap9.htm touches on it, but doesn't really explain it).
The only "workaround" that I've found is to reduce the number of snaps kept, turn off snaps, or find the high-change-rate data and move it to a volume with snaps disabled.
2011-04-28 11:29 PM
Current Data ONTAP versions offer both snapshot autodelete and volume autogrow features. Both help to mitigate this issue – either filer will remove excessive snapshots, or will increase volume size (assuming containing aggregate has free space).
2011-04-29 12:09 AM
The snapshot reserve specifies a set percentage of disk space for snapshots.
By default, the snapshot reserve is 20% of disk space. The snapshot reserve can be used only by snapshots,
not by the active file system.
This means that if the active file system runs out of disk space,
any disk space still remaining in the snapshot reserve is not available for active file system use.
Snapshot reserve management involves the following tasks:
Ensuring that enough disk space is set aside for snapshots so that they do not consume active file system space
Keeping disk space consumed by snapshots below the snapshot reserve
Ensuring that the snapshot reserve is not so large that it wastes space that could be used by the active file system
When enough disk space is available for snapshots in the snapshot reserve,
deleting files in the active file system frees disk space for new files,
while the snapshots that reference those files consume only the space in the snapshot reserve.
If Data ONTAP created a snapshot when the disks were full,
deleting files from the active file system would not create any free space because everything
in the active file system would also be referenced by the newly created snapshot.
Data ONTAP would have to delete the snapshot before it could create any new files
Also use snap autodelete
You can define which Snapshot copies you delete by entering the following options and their values:
Use trigger option to define when to begin automatically deleting snapshots copies
here is the description:
Defines when to begin automatically deleting Snapshot copies.
volume--begin deleting Snapshot copies when the volume reaches 98% capacity and the volume snap reserve has been exceeded.
snap_reserve--begin deleting Snapshot copies when the Snapshot reserve reaches 98% capacity.
space_reserve--begin deleting Snapshot copies when the space reserved in the volume reaches 98% capacity and the volume snap reserve has been exceeded.
Check whether the Snap autodelete policy is setup correctly.
On ascertaining that the policy has not been removing the snapshots despite being setup correctly,
check the volume option try_first.
Type the following command from the filer command line interface: filer_cli> vol options
Output similar to the following is displayed:
test_lab_filer> vol options voltest
nosnap=off, nosnapdir=off, minra=off, no_atime_update=off, nvfail=off,
ignore_inconsistent=off, snapmirrored=off, create_ucode=on,
convert_ucode=on, maxdirsize=83886, schedsnapname=ordinal,
fs_size_fixed=off, compression=off, guarantee=volume, svo_enable=off,
svo_checksum=off, svo_allow_rman=off, svo_reject_errors=off,
no_i2p=off, fractional_reserve=0, extent=off, try_first=volume_grow,
By default, the volume option try_first is set to volume_grow.
However, this setting conflicts with the Snap autodelete policy and effectively results in no snapshots getting deleted.
Modify the option volume_grow to snap_delete using the following command from the filer command line:
filer_cli> vol options try_first snap_delete
always monitor your system for functions like autodelete and autogrow when you deploy for first time
2011-04-29 01:20 AM
As others have tried to explain, snap reserve actually does "reserve" space for snapshots from the total size of the volume. Snapshot usage can grow out of the reserve limits, but the active filesystem can't "grow" into the space reserved for snapshots.
You either have a lot of file turnover or you have inadvertently added and deleted a lot of file during your migration or whatever you have been doing on that filesystem of late.
'snap list -V <volname>' (on the cli or however you prefer) will show you a bit more about which snapshot is using the space. 'snap delete -V <volname> <snapshotname>' will remove a snapshot if you need to get rid of an "unneeded" snapshot.
As others have pointed out, you can setup some triggers to do some of this "automagically", but you may have the negative side-effects that the system chooses to either delete or grow when you really didn't want that. The system can't really guess what you want, just do what you tell it, of course.