ONTAP Discussions

Free space of a thin volume

MOHAN1985
8,602 Views

Hi,

I have thin volumes and thick volumes present within a aggregate, please let me know if there is a Data Ontap command or a way to find the free space for each volume (thick, thin).

Below is an example a scenario,

Consider a aggregate aggr0 with space 100GB, it has volumes as below

Volume    type    size

==================

vol1         thick    30 GB

vol2         thick    30 GB

vol3         thin     100 GB

vol4         thin     100 GB

Let me know how to compute free space for each of the volumes.

Thanks,

Mohan

11 REPLIES 11

aborzenkov
8,530 Views

df command shows you free space.

MOHAN1985
8,530 Views

df command shows % capacity which the percentage of used space. Specifically in case of thin volumes, we cannot use this value of % used capacity as they have options to grow and the actual allocated capacity of thin volume remains unknown. Take the below scenario,

Aggregate total space  = 100GB

Vol1  - thick - with 10GB size and 1 GB used. Here, free space of the volume is 9 GB

Vol2 - thin - with 200GB size and 5 GB used. Here, free space of the volume is 195 GB which is greater than aggregate space and is incorrect.

So, Is there a way to determine the free space of a thin volume?.

Thanks,

Mohan

aborzenkov
8,530 Views

If space actually available in aggregate is less than volume “virtual” size, df shows actually available space in aggregate. At least, it did it every time I tried

MOHAN1985
8,530 Views

Yes, I agree. But, I need to calculate the free space within a volume irrespective of space guarantee(thin,thick). Is there a command that lists this or can I do the calculation using a script.

YEKYAWTHARMYINT
8,530 Views

you can use df command to find out the free space. if you want to know allocated and used spaced exactly, you can use aggr show_space aggr_name command.

aborzenkov
8,530 Views

I am afraid, I do not quite understand what you mean. Thin volumes share space in aggregate; that's the main reason to create thin volume in the first place.

MOHAN1985
8,530 Views

Yes, thin volumes do share space in a aggregate. So does that mean there can be no free space for a individual thin volume?. Below is a scenario,

Aggr2 - 50GB

vola - thick - 20GB -of which 40GB is used

volb - thin - 30GB - of which 10GB is used.

volb - thin - 30GB - of which 20GB is used.

In this case, total size of all volumes is greater than aggregate size as thin volumes share aggregate space. How does the thin volume operate here?.

In the above example, what is the free space of each of the thin volume.

YEKYAWTHARMYINT
8,530 Views

Hi Mohan,

You scenario won't be happened, because your used space is greater than your aggregate size. You can over commit but cannot over use beyond aggregate size. here is the scenario,

Aggr1 - 100GB

Vol Name   Thin / Thick  Commited space     Used space

VolA          Thick               50gb                     10gb

VolB          Thick               20gb                       5gb

VolC          Thin                 50gb                      10gb

VolD          Thin                  50gb                        10gb

So you total commited size is 170gb.

From aggregate level, aggregate total size is 100gb, use will be 90gb (70gb two thick volumes and 10 each for two thin volumes). at that time u can't create the thick volume with over 10gb size.

but form volume point of view, volA has 40gb free space, volB has 15gb free space, both volC and volD has 40gb each.

in real world, you will get the aggregate overcomitted alert and two thin volume not possible to grow beyond 10gb.

aborzenkov
8,530 Views

So does that mean there can be no free space for a individual thin volume?

Yes.

vola - thick - 20GB -of which 40GB is used

That's impossible. You cannot use more space than volume size. It is true for both thick and thin volumes. Your total data on a volume may exceed it though if you are using deduplication and/or compression. But that's different story.

In this case, total size of all volumes is greater than aggregate size as thin volumes share aggregate space. How does the thin volume operate here?.

First space for thick volumes is reserved. What remains is shared between all thin volumes. Yes, you can create thin volumes with size greater than containing aggregate size. You won't be able to fill them with more data than is available on aggregate though. So in your example two thin volumes have max 30G of free space (50G aggregate - 20G thick volume). If you put 30G in one volume, another one does not have any free space.

MOHAN1985
6,935 Views

Thanks for the response. So is there a way out in determining the free space of thin volume?

Take the scenario below,

Aggr1

Size 100 GB used 70GB Free 40 GB

Vol1 - thick - 40 GB size - 20GB used - 20GB free

Vol2 - thin - 100 GB size - 20GB used - 80GB free

Vol3 - thin - 100 GB size - 30GB used - 80GB free

Here, the total used space by all volumes is 70GB, 180 GB is free. (which is incorrect).

How to determine the free space at each volume level irrespective of whether it is thick or thin?. Is there a command that gives the data?.

Is there a relation or a formula that can be used to calculate free space at the volume level?

MICHAELWW
6,935 Views

When you want to thin provision the LUN size and make the volume size less than the LUN

Guarantee =volume

LUN Reservation=off

Fractional_reserve =0%

Snap_reserve =0%

Auto_delete = Volume

Auto_grow = on

Try_first = autogrow

Public