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/