Other Is CTL HA replacing HAST?

I recently saw a commit for CTL HA and it appears it supports various implementations of HA clustering. Seems compelling to play around with so I might take a crack at it. Is HA going the way of CTL or it HAST here to stay?

Thanks
 
I think they solve slightly different problems.

HAST replicates your entire storage and allows you to failover to a completely standalone node when the primary goes down. From what I can see, CTL-HA requires both nodes to be able to see the same disks (and it's not easy or cheap to get hardware that'll do this). Depending on the configuration the secondary can be active all the time or just standby, but always needs to be talking to the same disks as the primary because the actual data isn't being replicated anywhere.

What I'm not clear on is if it's possible to use any sort of logical volume management under CTL-HA. It's fairly common to run ZFS on some disks, then export a file or ZVOL via CTL. I can't see this being possible with CTL-HA as you wouldn't be able to make the pool visible on both nodes at the same time. Using a hardware RAID card may be possible if both nodes were connected to the same disks and had the same configuration but I'm not sure whether any RAID read/write cache would be a problem.

Of course I could be getting this completely wrong. I don't have any clear information on how this works or should be used, just a few commit messages, the most interesting one being this one:
Reimplement CTL High Availability.

CTL HA functionality was originally implemented by Copan many years ago,
but large part of the sources was never published. This change includes
clean room implementation of the missing code and fixes for many bugs.

This code supports dual-node HA with ALUA in four modes:
- Active/Unavailable without interlink between nodes;
- Active/Standby with second node handling only basic LUN discovery and
reservation, synchronizing with the first node through the interlink;
- Active/Active with both nodes processing commands and accessing the
backing storage, synchronizing with the first node through the interlink;
- Active/Active with second node working as proxy, transfering all
commands to the first node for execution through the interlink.

Unlike original Copan's implementation, depending on specific hardware,
this code uses simple custom TCP-based protocol for interlink. It has
no authentication, so it should never be enabled on public interfaces.

The code may still need some polishing, but generally it is functional.
Hopefully once this is fully functional in FreeBSD there'll be some man pages and/or examples of how it can be used. It's being developed by iXsystems so obviously their main interest is implementing it for their own TrueNAS gear but with any luck they'll show us how to use it as well.
 
As was told, CTL HA supports several operation modes. Primary node always require media access, while secondary may have it or not. If secondary node has no media access, it can forward all requests to primary node. This mode can be used with ZFS, but it supposes that during HA failover ZFS pool should be exported on old primary node and imported on new (one that was secondary before).
 
Back
Top