Demonstrating ZFS pool write distribution
Published by Jim Salter // July 27th, 2017
One of my pet peeves is people talking about zfs “striping” writes across a pool. It doesn’t help any that zfs core developers use this terminology too – but it’s sloppy and not really correct. ZFS distributes writes among all the vdevs in a pool. If your vdevs all have the same amount of free space available, this will resemble a simple striping action closely enough. But if you have different amounts of free space on different […]
Read MoreVerifying copies
Published by Jim Salter // June 29th, 2016
Most of the time, we explicitly trust that our tools are doing what we ask them to do. For example, if we rsync -a /source /target, we trust that the contents of /target will exactly match the contents of /source. That’s the whole point, right? And rsync is a tool with a long and impeccable lineage. So we trust it. And, really, we should. But once in a while, we might get paranoid. And when […]
Read MorePSA: snapshots are better than ZVOLs.
Published by Jim Salter // June 16th, 2016
A lot of people new to ZFS, and even a lot of people not-so-new to ZFS, like to wax ecstatic about ZVOLs. But they never seem to mention the very real pitfalls ZVOLs present. What’s a ZVOL? Well, if you know what LVM is, a ZVOL is like an LV, but for ZFS. If you don’t know what LVM is, you can think of a ZVOL as, basically, a dynamically allocated “raw partition” inside ZFS. […]
Read MoreZFS: practicing failures on virtual hardware
Published by Jim Salter // May 16th, 2016
I always used to sweat, and sweat bullets, when it came time to replace a failed disk in ZFS. It happened infrequently enough that I never did remember the syntax quite right in between issues, and the last thing you want to do with production hardware and data is fumble around in a cold sweat – you want to know what the correct syntax for everything is ahead of time, and be practiced and confident. […]
Read Moretesting the resiliency of zfs set copies=n
Published by Jim Salter // May 9th, 2016
I decided to see how well ZFS copies=n would stand up to on-disk corruption today. Spoiler alert: not great. First step, I created a 1GB virtual disk, made a zpool out of it with 8K blocks, and set copies=2. me@locutus:~$ sudo qemu-img create -f qcow2 /data/test/copies/0.qcow2 1G me@locutus:~$ sudo qemu-nbd -c /dev/nbd0 /data/test/copies/0.qcow2 1G me@locutus:~$ sudo zpool create -oashift=12 test /data/test/copies/0.qcow2 me@locutus:~$ sudo zfs set copies=2 test Now, I wrote 400 1MB files to it […]
Read More- 1
- 2
- 3
- 4
- Next Page »