Documente Academic
Documente Profesional
Documente Cultură
Agenda
The Space Problem how much to quote Terms and Concepts
Space Guarantees Snap Reserve Fractional Reserve Vol Autogrow and Snap Autodelete
The Problem
Customer asks for 20TB of usable storage for a SAN. How much storage do you configure in your quote?
The Problem
Why is this a problem?
Snapshots!!!!!!!!!!!!!!!
Why is this a problem?
Cost
The Problem
So, youve had the snapshot conversation with the customer.and you configure the 20TB usable quote with how much storage? 2x plus delta? i.e. ((2x20)+(20%)) = 44TB usable Why?
None
No space is reserved from the aggregate at volume creation time Space is taken from the volume as data is written Allows multiple volumes to use available space from an aggregate Any individual volume still is not allowed to take more space than its specified size Permits thin provisioning at the volume level
File
The same as none but allows individual LUNs (or files) to set space reservations to ensure they unless have adequate space Stick with guarantee=Volume you have good reason to do otherwise
2008 NetApp. All rights reserved. Confidential - NetApp Employees Only
volume
Aggr
none
Aggr
file
Aggr
volume
= unclaimed space Aggr = full space
none
= full space
NOTE: In reality, particular blocks are not claimed. The volume is simply given a space limit, and space is filled at random.
2008 NetApp. All rights reserved. Confidential - NetApp Employees Only
file
Aggr
2.
Example:
vol create sample_vol sample_aggr s file size 10g
2008 NetApp. All rights reserved. Confidential - NetApp Employees Only
2.
Example:
vol options sample_vol guarantee none
2008 NetApp. All rights reserved. Confidential - NetApp Employees Only
Enabled by default
Only to be disabled for thin provision of LUNs lun set reservation enable/disable lun create o noreserve (creates a thin provisioned LUN)
2008 NetApp. All rights reserved. Confidential - NetApp Employees Only
Does not allow LUNs to be created or files to grow into the snap reserve space
Snapshot data fills this space Traditionally set to 0 for volumes used with block protocols, but does not have to be zero in SAN environments.
Snap Reserve
Figure 1 - DEFAULT
Figure 2
Volume 1 Space Reservation
Snapshot Reserve Snapshot Overflow
20%
20%
Historically recommend setting Snap Reserve to 0 for block storage, but there are now reasons to reconsider this policy
2008 NetApp. All rights reserved. Confidential - NetApp Employees Only
Space is Reserved
guarantee = volume space reservation = enable = 25 GB 100 GB = LUN1 = LUN1 = vol1 = reserved =full
What happens if the LUN is not full when the snapshot is taken?
Only the amount of space filled is reserved
guarantee = volume space reservation = enable = 25 GB 100 GB = LUN1 = LUN1 = vol1 = reserved =full
What happens if fractional reserve is 25 percent and the LUN is 50 percent full when the snapshot is taken?
12.5 GB are reserved
guarantee = volume space reservation = enable = 25 GB 100 GB = LUN1 = LUN1 = vol1 = reserved =full
2008 NetApp. All rights reserved. Confidential - NetApp Employees Only
Try_first option determines whether auto_grow or auto_delete is attempted first The possible try_first values are: snap_delete volume_grow e.g. vol options try_first snap_delete
2008 NetApp. All rights reserved. Confidential - NetApp Employees Only
30GB
Fractional Reserve
30GB
TestLUN
Negatives
Requires 2X + space Puts us at a cost disadvantage versus competition
20GB
20GB
Available space
60GB
LUN
Negatives
Doesnt use shared space from the aggregate (unless auto_grow is also used) Until ONTAP 7.3 have to be cautious with using FlexClones
2008 NetApp. All rights reserved. Confidential - NetApp Employees Only
100% - 20 GB
Starting state - 100GB Volume - 2 x 40GB LUNs - snap_reserve = 20% - fractional_reserve = 0% Writing data to LUNs
LUN #2 40GB
Create snapshot #1 Create snapshot #2 Volume is 100% full Writes to LUNs are returned with out of space error messages
LUN #1 40GB
Application crashes!!
98% - 19.6GB
Starting state - 100GB Volume - 2 x 40GB LUNs - snap_reserve = 20% - fractional_reserve = 0% - trigger = snap_reserve - delete_order = oldest_first Writing data to LUNs Create snapshot #1 Create snapshot #2 Snapshot #1 is autodeleted Snapshot #2 is autodeleted
LUN #2 40GB
LUN #1 40GB
LUN
Preferred Configuration #2
Negatives
Volumes are not completely independent of one another
Always the case when using shared free space Growth in one volume can limit growth of another
2008 NetApp. All rights reserved. Confidential - NetApp Employees Only
Snapshot 4 65GB Snapshot 3 60GB Volume is 98% full Snapshot 2 75GB Snapshot1 100GB LUN2 95GB LUN1 - 95GB
2008 NetApp. All rights reserved. Confidential - NetApp Employees Only
Snapshot 4 65GB Snapshot 3 60GB Snapshot 2 75GB Snapshot1 100GB LUN2 95GB LUN1 - 95GB
2008 NetApp. All rights reserved. Confidential - NetApp Employees Only
Snapshot 5 145GB Snapshot 4 65GB Snapshot 3 60GB Snapshot 2 75GB Snapshot1 100GB LUN2 95GB LUN1 - 95GB
2008 NetApp. All rights reserved. Confidential - NetApp Employees Only
Snapshot 5 145GB Snapshot 4 65GB Snapshot 3 60GB Snapshot 2 75GB Snapshot1 100GB LUN2 95GB LUN1 - 95GB
2008 NetApp. All rights reserved. Confidential - NetApp Employees Only
Configuration Options
Guarantee: Volume fractional reservation: 0% snap reserve: Y% Trigger: volume Comment: Probably doesn't make sense unless NAS data being written into the same volume -Recommended config for auto delete - Easy to monitor free space - Use fractional reserve >0% if using SME or SMSQL - Meaningless - it will immediately delete every snapshot - Probably doesn't make sense unless NAS data being written into the same volume - Easy to monitor amount of snapshot data - Provides some time if autodelete/autogrow can't provide needed space - Snapshot creation will be disabled when the volume is full Default configuration for blocks space overhead is very expensive - Recommended config for auto_grow - Having fractional_reserve set > 0% would provide some time if autodelete or autogrow can't provide needed space, but can be confusing. Make fractional reserve >0% if SME or SMSQL is used. Having SnapReserve set to 20% would also allow a trigger setting of snap_reserve for snapshot deletes (if they were enabled but not for SQL or Exchange) and provide some snapshot buffer space. - Meaningless - it will immediately delete every snapshot - Allows the use of the volume full warnings before snapshot deletion starts - Allows preference to newer snapshots by allowing new snapshots to be created while deleting older - Allows prefrence to newer snapshots by allowing new snapshots to be created while deleting older - Meaningless - since fractional_reserve is 100%
Y% (or 0%) Y% Y% Y% Y% 0%
0% (or Y%) 0% 0% 0% Y% Y%
Recommendations - Exceptions
Size for performance first Beware effects on performance if disk space reduced DO NOT use snap auto delete
Instead use SME and SMSQL equivalents