2011-05-16 12:29 AM
Generally you can run reallocate on any volume. NetApp says the system will measure the filesystem and try to avoid reallocating if it will impact performance negatively. Now, that isn't something that I have tested for myself. Generally, your corner cases come in combination with deduplication because they can work "against" each other as the two processes have different goals: space saving vs. performance/defragmentation. Here, again, some understanding of how both work can help you to decide if you should run reallocate on a scheduled/incremental basis. When you add a few disks to an aggregate, for example, it may very well be a good idea to run a full reallocate job on your deduplicated volumes as well to insure performance across all disks. Very highly deduplicated volumes and very low deduplicated volumes probably won't suffer much from reallocate. Those that are in-between are more a matter of experience. The type of access pattern (frequent/infrequent, random, sequential, high/low change rate) will also be a factor to consider.
You will have more problems setting up a sensible schedule and monitoring the results than deciding what you are going to reallocate. Unfortunately, NetApp's new features are rarely accompanied by any sensible way of managing them. Reallocate has existed for over 5 years now and still there is no way to monitor results other than analyzing the logs.
2011-05-16 04:13 AM
Additionally keep in mind that if you have snapshots on volume, running reallocate may “grow” snapshots significantly. To the extent that volume runs out of space. Also may have huge impact on SnapMirror reansfer.
It could be avoided using “physical reallocation” (reallocate -p), but then problem is shifted from FlexVol to containing aggregate.
2011-05-18 04:00 PM
Be sure to check the Bug list for any burps on this.
I have seen an Ontap 7.3.X that can panic if it runs into a certain config on a reallocate
2011-05-19 01:08 AM
The chances of running into a bug are pretty even for almost all functionality you use on NetApp so that shouldn't be a criteria for using reallocate or not. I've used it for probably more than 4 years on lots of different platforms and load configurations without hitting any bugs that caused a panic. Other panics have occurred, but that is another discussion.
I don't think we need to scare anyone about panics and reallocate. If you have never panic'd a NetApp, then you just aren't using it right, hehe.