« Using ThreadLocal to pass context information around in web applications | Main | Number of load balanced servers »
Sunday
Oct072007

Product: Wackamole

Wackamole is an application that helps with making a cluster highly available. It manages a bunch of virtual IPs, that should be available to the outside world at all times. Wackamole ensures that a single machine within a cluster is listening on each virtual IP address that Wackamole manages.

If it discovers that particular machines within the cluster are not alive, it will almost immediately ensure that other machines acquire these public IPs. At no time will more than one machine listen on any virtual IP. Wackamole also works toward achieving a balanced distribution of number IPs on the machine within the cluster it manages.

There is no other software like Wackamole. Wackamole is quite unique in that it operates in a completely peer-to-peer mode within the cluster. Other products that provide the same high-availability guarantees use a "VIP" method.

Wackamole is an application that runs as root in a cluster to make it highly available. It uses the membership notifications provided by the Spread toolkit to generate a consistent state that is agreed upon among all of the connected Wackamole instances.

Wackamole is released under the CNDS Open Source License.

Note: This post has been adapted from the linked to web site.

Related Articles

  • White paper on building HA/LB Clusters by Theo Schlossnagle.
  • Reader Comments (7)

    The content on the Whackamole website seems to be copyrighted to Johns Hopkins University, even though the software is open-source. Yet you copy-and-pasted your entire article from parts of their homepage.

    Your blog post seems to violate copyright.

    How many other articles "written" by you have I read that were copy-paste jobs?

    December 31, 1999 | Unregistered CommenterMatt J

    > How many other articles "written" by you have I read that were copy-paste jobs?

    I thought it was pretty self-evident that almost all of the product posts are simply pointers to the product, so it's their documentation as they are in the best position to explain their own stuff. If you visit their site it's pretty obvious what's happening. The point of these posts is just to let people know about products and services they may not have considered before. They are certainly usually new to me. There's no analysis or anything else going on as there is in the profiles.

    Update: I added a note saying the post was adapted from the content of the website and I will do so on all future posts that are similar in nature.

    December 31, 1999 | Unregistered CommenterTodd Hoff

    For me, as distributed system researcher, this blog is full of inspiration. To make an analysis for such systems is quite hard, even for the designers, so ¿How may anyone expect such deep analysis on a blog?.

    Go on doing this nice work.

    Joaquin

    December 31, 1999 | Unregistered CommenterJoaquin Salvachua

    I went to Johns Hopkins and actually had Dr. Amir as my advisor. He spoke about this as an idea a few years back. I am glad that he actually found the time to get his idea down in code. The impressiveness of this is great. I think one of his main problems to opening this product up to businesses is that he needs to get rid of its need to run as root. That works inside a computing lab at a major university, but it does not in the business world.

    December 31, 1999 | Unregistered CommenterErik

    Fair enough on all counts.

    I think the only problem was I assumed (as a reader) that I was hearing your voice on the blog; when I clicked through, I found I was wrong. That some posts represent your (or your colleagues) thoughts and reflections, and some don't, isn't immediately obvious once it comes through Google Reader.

    Thank you.

    December 31, 1999 | Unregistered CommenterMatt

    Wackamole is an IP failover tool. It directly manipulates the interfaces on the box and may at some point manipulate routes. Additionally it requires the daemon to generate raw unsolicited ARP traffic. All of those actions require root on tranditional UNIX systems. This is possible to do with capabilities on Linux and solaris (and some others) so that NET RAW capabilities are preserved whiel other privileges are dropped. Patches are welcome -- it's open source.

    December 31, 1999 | Unregistered CommenterTheo

    For me, as distributed system researcher, this blog is full of inspiration. To make an analysis for such systems is quite hard, even for the designers, so ¿How may anyone expect such deep analysis on a blog?.

    Go on doing this nice work

    December 31, 1999 | Unregistered CommenterAnonymous

    PostPost a New Comment

    Enter your information below to add a new comment.
    Author Email (optional):
    Author URL (optional):
    Post:
     
    Some HTML allowed: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>