Internal virtual IP failure scenario
"Bryn Moslow" <[email protected]>
| Newsgroups | gmane.linux.highavailability.ultramonkey |
|---|---|
| Message-ID | <BC2A76AABABF8741A8ADEE62DB1350F8015EB7B4@exchange2.valvesoftware.com> |
Using the diagram at http://www.ultramonkey.org/3/topologies/ha-lb-eg.html for reference I seem to have run into a failure scenario that doesn't have an elegant solution. I've set up a 4 machine cluster almost identical to the diagram and it works wonderfully except if I pull the cable that would be connected to the 192.168.7.2 (or 192.168.7.3) interface in the example. If this interface loses connection there is no failover to the slave. I'm guessing this is for lack of a ping test to the Real Server network? (I *am* using a ping test on the External Virtual IP interface to the gateway.) I imagine the easy solution might be to add a ping test from the Director to the Real Server network somewhere. I don't like this solution as it depends on a single machine on the Real Server network. Ideally, I'd like a test that actually sees the connection go away on the Director's Internal interface and the Slave Director takes over if it has connectivity to the Real Servers. Am I missing an obvious configuration item to account for this scenario? Right now, if I pull that cable my test cluster is down. That's a huge single point of failure and I have seen it happen - more often due to human failure, but still a failure. Maybe pinging the broadcast and counting responses - that would be a sloppy custom test. Even just a link test (up or down) would be nice. I've even considered running another layer of UM3 on a couple of Real Servers to act as the Internal ping test target but I don't want to "anoint" any of the Real Server boxes and keep them just as dumb and simple and toaster-like as possible so I can bounce them around, replace them, spin up new ones at will... Thanks to everyone involved for the UM3 package by the way: It's a nice display of simple, effective elegance pulling several impressive projects into an easy to use package, literally - Debian, in my case. ;)