ONTAP Discussions
ONTAP Discussions
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
df command shows you free space.
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
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
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.
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.
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.
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.
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.
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.
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?
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