Tuesday, June 10, 2014

Avoid filling zpools beyond 80% of their capacity

Keep pool space under 80% utilization to maintain pool performance. Currently, pool performance can degrade when a pool is very full and file systems are updated frequently, such as on a busy mail server. Full pools might cause a performance penalty, but no other issues. If the primary workload is immutable files (write once, never remove), then you can keep a pool in the 95-96% utilization range. Keep in mind that even with mostly static content in the 95-96% range, write, read, and resilvering performance might suffer.

•    Issues specific to 80% full zpool are:
o    If the zpool is fragmented and has less free space available, then it will take longer and require more CPU cycles in the kernel to find a suitable block of free space for each write.  This results in lower write performance if the zpool has less than 20% free space. This issue is addressed by the following document:

SunAlert: ZFS(zfs(1M)) filesystem(5) Performance May Drop Significantly if the ZFS Pool Becomes Full (Doc ID 1019947.1)

Bug 15418573 / 6596237 - Stop looking and start ganging

Even with the fix, write performance still degrades as the pool becomes more fragmented and running with less than 20% free. There is another bug open to address the short coming.

Bug 15702274 / 7026795: Stop looking and start ganging, really
The fix is still being worked by ZFS sustaining.

No comments:

Post a Comment