ZFS on top of GELI

Dan Naumov dan.naumov at gmail.com
Tue Jan 12 00:24:30 UTC 2010


On Tue, Jan 12, 2010 at 1:29 AM, K. Macy <kmacy at freebsd.org> wrote:
>>>
>>> If performance is an issue, you may want to consider carving off a partition
>>> on that SSD, geli-fying it, and using it as a ZIL device.  You'll probably
>>> see a marked performance improvement with such a setup.
>>
>> That is true, but using a single device for a dedicated ZIL is a huge
>> no-no, considering it's an intent log, it's used to reconstruct the
>> pool in case of a power failure for example, should such an event
>> occur at the same time as a ZIL provider dies, you lose the entire
>> pool because there is no way to recover it, so if ZIL gets put
>> "elsewhere", that elsewhere really should be a mirror and sadly I
>> don't see myself affording to use 2 SSDs for my setup :)
>>
>
> This is  false. The ZIL is used for journalling synchronous writes. If
> your ZIL is lost you will lose the data that was written to the ZIL,
> but not yet written to the file system proper. Barring disk
> corruption, the file system is always consistent.
>
> -Kip

Ok, lets assume we have a dedicated ZIL on a single non-redundant
disk. This disk dies. How do you remove the dedicated ZIL from the
pool or replace it with a new one? Solaris ZFS documentation indicates
that this is possible for dedicated L2ARC - you can remove a dedicated
l2arc from a pool at any time you wish and should some IO fail on the
l2arc, the system will gracefully continue to run, reverting said IO
to be processed by the actual default built-in ZIL on the disks of the
pool. However the capability to remove dedicated ZIL or gracefully
handle the death of a non-redundant dedicated ZIL vdev does not
currently exist in Solaris/OpenSolaris at all.

- Sincerely,
Dan Naumov


More information about the freebsd-stable mailing list