KVM, HA and Fencing

I have been reading about virtualization in KVM and I have reach the point of cluster and ha which was my goal to get to, I have worked with vmware vcenter and hyper-v clusters both with HA but I don’t remember to have the need for a Fencing Device in any of them, in Hyper-v I even set up a cluster in vmware workstation for testing and I didn’t need more that set up quorum in the right way to make it work, but it seems that it is required to have fencing devices in the linux virtualization kvm world to avoid split brain (suse ha extention, opensuse, red hat, proxmox…) . with this in mind I think that live migration is the far that I will get with KVM until a similar vmware and hyper-v approach come into existence, I mean a fencing alternative.

AFAIK clustering has little to do with virtualization, so it doesn’t matter if you’re using KVM, VMware, Hyper-V, etc.
In all cases fencing is implemented <in> the virtual machine, if you’re running any kind of Linux it’s implemented as a separate component. If your storage nodes are Windows, then it’s built-in if you’re running Windows Datacenter or if you’re running something like Starwind it’s built into the clustering component.

If your clustering is implemented in some way <only> in virtualization, you’d have to describe and be specific.

Also, I assume that some clustering setups particularly in a non-production lab might not include fencing… But, you wouldn’t want to do that in “the real world.”


You are right it may be implemented in some other way or those product (Hyper-v and Vcenter) have some other kind of mechanism to archive the fencing because as I said it is not mentioned in those product as it does for linux (no HA without Fencing), even if you are mounting a well tested production enviroment.

Now, I think clustering has very much to do with virtualization as it is one of the primary goal when you are virtualizing physical server, when a sales person is selling a virtualization product the first thing to offer is clustering and HA, imagine a world where you put all your eggs in one basket, you can’t sale that to an IT manager, that is why I think Clustering is very tied to virtualization in one way or the other, may be not technically but it is in fact.

This is for Vcenter

How does HA work? When HA is enabled, a couple of things occur. Firstly, an HA agent is installed on each host in the cluster after which they start communicating with one another. Secondly, an election process (Figure 1) selects a host from the cluster to be the Master, chosen using criteria such as the total number of mounted datastores. Once a Master is elected, the remaining hosts are designated as slaves. Should the Master go offline, a new election takes place and a new Master is elected.

The main task of the Master is to periodically poll vCenter Server, pulling state information for the slave hosts and protected virtual machines. If a host failure occurs, the Master uses network and datastore heartbeating to verify that a slave has in fact failed. This 2-factor monitoring method ascertains that a slave has really failed and not simply ended up being partitioned (unreachable but still exchanging datastore heartbeats) or isolated (slave fails to contact other HA agents and network isolation address).

It is important that you select at least two datastores (Figure 2) when setting up “Datastore heartbeating” from “vSphere HA”. You’d still be able to set up HA using only one datastore but for added redundancy VMware suggest that you specify a minimum of two datastores. You should also note that you cannot include VSAN datastores.

Technically speaking,
That description still says that an HA agent is installed into each node cluster.

But then,
The more I thought about this,
Virtualization nowadays instrument their Guests, so technically speaking if a technology wanted to implement any monitoring technology like an HA heartbeat, it’s possible to do so without installing the agent all the way in the Guest… Its possible to accomplish objectives simply by monitoring the exposed sensors on the outside of the Guest.

AFAIK this way of doing more with sensors than simply displaying is not widely implemented.
If VMware is doing this, then they should be lauded for some original thought and execution… I’d expect that over time other competing technologies will do the same.
Note though that if an Agent isn’t properly installed into the Guest, actions in response to sensors may be limited.