I often get questions regarding good ways to stress test home servers, especially new drives. As part of the in-development FreeBSD 8.x based Mesa ZFS Web Interface, sub.mesa has released 0.1.7-preview of the interface with a built-in benchmark that runs for 12+ hours on many systems. Running this a few times on a new build is probably a good way to stress your storage and find any early failure drives.
This week, using the benchmark as a burn-in tool, I found one of a new batch of a dozen Western Digital Green 2TB drives that failed during the benchmark. Also, sub.mesa does development of the Mesa ZFS Web Interface in Sun/ Oracle VirtualBox so for those folks not able to commit a full system to the benchmark, this can be run in a virtual machine to test disks, RAID controllers and etc.
Here are the details from the [H]ardforum topic where one can feel free to submit benchmark results (and please do to support the project):
MD5 livecd: 96526cde3336c41bbf787c0887c53916
This is a preview release only really useful for Benchmarking; it has no additional features. It has other changes over 0.1.6 though, but under-the-hood. One other change that might affect usability is the inclusion of new siis-driver, to be loaded by default. This is the new Silicon Image controller driver that works with most SiI-chips; making these controllers very well supported under FreeBSD.
How to benchmark your disks
1. Boot from livecd .iso
2. (optional) perform a ZFS-on-root installation on one of the disks you will NOT be testing; can be a very small disk or USB stick. This way you save 0.5GB of memory usage and you can do tuning in /boot/loader.conf
3. Format all disks with either GPT or DD via the interface
4. Go to the Disks->Benchmark page
5. Try a quick run first: set test size to 250MB, test rounds to 1, cooldown to 2 seconds. Check all the disks you want to test and click the Start Benchmark button.
6. For ‘official’ results, use the recommended defaults. 64GiB test size, 3 rounds and 5000 I/O requests for the random I/O test.
Anything else i need to do?
You don’t have to do anything after starting the benchmark; just wait for the first results to appear on your screen. The browser window will refresh automatically every 30 seconds, unless that window doesn’t have focus (meaning you have some other window or tab active and focussed instead).
When do i get my benchmark results?
The first results will appear when the first test, a single disk without RAID, is completed. It will then continue with 2 disks in RAID0, 3 disks.. etc. Then it will test other flavors like RAIDZ, RAIDZ2, RAID1, as well as nested configurations like RAID1+0 and RAID5+0 and RAID6+0. The first requires at least 4 disks (mirrors of 2 disks), the second requires 8 disks (RAIDZ’s of 4 disks) and the last requires 12 disks (RAIDZ2’s of 6 disks).
Note: benchmarking stresses the computer; if the system has fewer than 8GB RAM and your tuning parameters are not ‘watertight’ then it can crash your machine; after which it automatically reboots after 15 seconds. This happened now and then when testing with Virtualbox and 1.4GB RAM; which without tuning can make ZFS crash on I/O heavy workloads with the mentioned ‘kmem_malloc: kmem_map too small’ panic message.
Tip: to enable SSH access, login as root on the console (direct keyboard/monitor attached to the server; not via web-interface) and execute:
After you’ve entered and confirmed your password you can log in with user ssh using an SSH-client. A popular SSH client for Windows is PuTTY (high recommended!). Google putty to download; requires no installation.
Post your benchmark results!
I would very much appreciate to see your benchmark results; please post them here or in the 4K testing thread if you got 4K sector disks. Though a warning: with too low test settings, the random I/O scores in particular can be very erratic due to caching corrupting the scores; the default values should work well to prevent that and give you meaningful scores. But the default values take a long time to complete.
This is a cool project and a nice WebGUI alternative to FreeNAS so feel free to support sub.mesa’s efforts.