ONTAP Discussions

Fractional Reserve

nsitps1976
5,883 Views

I know this topic as been discussed my times and I have seen the many blogs etc on this, however, if someone can answer the following this would really help me understand this.....

With a volume to be used for a NAS environment we only have the snapshot reserve, in which locked blocks consume space until the reserve is full – So why with a volume to be used in a SAN do we have both the snapshot reserve and the fractional reserve???

1 ACCEPTED SOLUTION

aborzenkov
5,883 Views

First, snap reserve does not limit amount of blocks, consumed by snapshots. It limits amount of free space as seen by clients. When 100G volume has 20% snap reserve, clients will believe voume has size 80GB. This is done mostly to avoid confusion in free space calculation. But whatever snap reserve is set to, snapshots can still spill over and consume all available space.

Fractional reserve ensures that LUN will have free blocks to write into. Let’s assume you have 10G LUN on 15G volume. You fill it up and make snapshot. 10G are frozen and cannot be overwritten, so next 5G will fill up remaining free space and OS will complaint trying to write anything beyond that (file system will be unmounted, corrupted, may be OS crashes). Snap reserve does not protect you because as explained nothing prevents snapshots from “spilling over”. When fractional reserve is set to default 100%, snapshot creation would fail telling you not enough free space.

View solution in original post

7 REPLIES 7

aborzenkov
5,884 Views

First, snap reserve does not limit amount of blocks, consumed by snapshots. It limits amount of free space as seen by clients. When 100G volume has 20% snap reserve, clients will believe voume has size 80GB. This is done mostly to avoid confusion in free space calculation. But whatever snap reserve is set to, snapshots can still spill over and consume all available space.

Fractional reserve ensures that LUN will have free blocks to write into. Let’s assume you have 10G LUN on 15G volume. You fill it up and make snapshot. 10G are frozen and cannot be overwritten, so next 5G will fill up remaining free space and OS will complaint trying to write anything beyond that (file system will be unmounted, corrupted, may be OS crashes). Snap reserve does not protect you because as explained nothing prevents snapshots from “spilling over”. When fractional reserve is set to default 100%, snapshot creation would fail telling you not enough free space.

nsitps1976
5,883 Views

Ok, so what is the point in having a snapshot reserve limit then?

Also, why is this different from a NAS volume?

radek_kubka
5,883 Views

Ok, so what is the point in having a snapshot reserve limit then?

It is just a mark reminding you that you are about to fill up a volume, whilst you said upfront you want to reserve certain amount of space for snapshots. Many people (including myself) like setting snap reserve to 0% though.

Also, why is this different from a NAS volume?

Fractional reserve was intruduced to make sure LUNs won't go offline / get corrupted - no LUNs, no problem!

In other words: NAS is just a protocol & ONTAP controls the file system, the amount of free space, etc. LUN on the other hand is (with few exceptions) a black box to ONTAP - either it can fit into free space within a volume, or not, nothing in between.

Regards,
Radek

nsitps1976
5,883 Views

So with lun's is it best to not have a reserve set on the parent volume and instead us FR? --- This would make it easier to understand..

If I can have your best practice that would be good? - Also is it different if you want thin provisioning?

aborzenkov
5,883 Views

I would recommend you to read TR-3483 that contains very good explanation of LUN space management as well as thin provisioning.

nsitps1976
5,883 Views

TR-3438 is very good, thanks for pointing me to this.

So can you take snapshots if you do not define a snap reserve on the parent volume?

aborzenkov
5,883 Views

Yes.

Public