On Fri, Sep 07, 2012 at 08:46:56PM +0000, Edward Ned Harvey (lopser) wrote:
> I believe these products exist, but I'm having difficulty finding
> them.  You want to provide HA virtualization... Meaning some VM
> should appear to always be up, even if half of the underlying
> hardware were to die.  At first blush, it would seem impossible ...
> Even the fastest network can't possibly keep up with the internal CPU
> state and memory of the guest VM.  But I would swear, some years ago,
> I saw or heard something intelligent ... The host OS is able to
> quickly snapshot and diff the guest machine state, so it does this at
> critical moments, like, when the guest OS is sending outbound network
> packets.  So you don't actually need to keep the complete guest
> machine state in sync between two machines; you only need to quickly
> send diffs at critical moments.  Then at any given moment, more than
> one host hardware can be hosting the identical internal system state
> for some guest VM.
> 
> From vmware, the product they call "High Availability" just restarts
> the server on other hardware.  (As far as I can tell from their tech
> docs.)  Plus, Vmware doesn't do storage... So you'll have to get your
> own HA storage separately.

VMware has Fault Tolerance ("FT") which essentially keeps a mirror VM
running on another host.  Literally a mirror.  If you open the console
of them both simultaneously you'll see your mouse cursor move on both
at the same time. :)

This lets you survive a host outage in any case with some drawbacks.

> 
> From virtualbox, you have live migration, but no HA.  (As far as I
> can tell.)
> 
> If you have a complex service, with apache, database, files, etc...
> The challenge is, what's the best way to make it HA?  You can do some
> database replication, and use a load balancer, and either NFS or
> iscsi with mirroring, to make the filesystem HA.  But that's a lot of
> stuff to possibly go wrong.
> 
> The best I can find so far is to simply mirror the underlying storage
> of the guest OS, so in a failure, you can quickly easily boot the
> guest on another host.  This is probably ok for a lot of purposes, a
> brief downtime in the event of failure.  But I like to aim high
> whenever possible...
> 
> Thanks for any comments/suggestions.

Best bet is still to make applications capable of surviving individual
VM failures, then distributing the application's VM's across multiple
environments IMO.  Not always practical though. :)

Ray
_______________________________________________
Tech mailing list
Tech@lists.lopsa.org
https://lists.lopsa.org/cgi-bin/mailman/listinfo/tech
This list provided by the League of Professional System Administrators
 http://lopsa.org/

Reply via email to