FreeHA - a Free, Portable High Availability system

This is the current home page of FreeHA. The goals of FreeHA are to provide a free, portable, easy to use (compared to alternatives) program to run nodes in a 'High Availability' Cluster. Its initial target is to run on any and all UNIXen, rather than any particular one.

There are no special drivers required. You can run the entire thing as a regular user process if you so desire.

FreeHA will let you run a service (program), or group of services, on a computer, but have one or more others running in standby mode. The service can be whatever kind of demon or program you would normally run on a UNIX box.

When and if the service fails on the initial node, one of the standby servers will automatically start the service(s) running on itself. Because of this automatic and normally fast restarting of the service, this sort of configuration is called a "Highly Available" cluster/configuration. "Highly Available", or "High Availability" == 'H.A.'

Why FreeHA?

Having done many cluster installs at this point in my life, I have noticed that people tend to spend big $$$ on really complicated 'Cluster Software', and then proceed to use only the very basic functionality of,
"Run this service on a node, but start it up on the other one if the main one fails".

It seems crazy to me to pay all that money, and only use a fraction of what you are paying for. Not to mention that there is no clustering software available, free or otherwise, for my favourite platform. So as usual, I figured if no-one else has done it by now, it's high time I wrote my own software to fill the void :-)

Echoing that sort of statement, is the openoffice-based presentation I gave at the LISA 2003 conference in San Diego.


What you will need to run FreeHA:
  1. Two or more computers that can compile the software
  2. Multiple network interfaces shared between them
    (Ideally, PRIVATE interfaces)
  3. Some kind of service, or services, that you want to make sure are running as close to "always" as possible.
Right now, you also need some minimal (teeny tiny) amount of shellscripting knowledge to start up your own services, until I get enough contributions of template scripts to cover a bunch of different areas.

Sample areas would include:

Install guide

More details on exactly what is involved in setting up an HA cluster, can be found in the HTML version of the install guide
There is also a blog about it

User guide

How to play with freeha, once the initial configuration is done

Status of project

Initial release date was July 21th, 2002. There have been no major complaints. I take that to mean that people are happy with it FreeHA. :-) Any minor complaints, I believe to be addressed now.

Platforms it is known to compile on: Solaris, Linux, BSD, OSF, AmigaOS.
It should also in theory work on MacOS X, although no-one has reported an attempt to do so.

New release: Nov 24th, 2006: 1.0.


Please try the latest version, freeha-1.0.tar.gz.

Please email me any comments. Address below.


The license for freeha is "BSD 3-clause" one: You may do what you like with it, so long as you dont hold me responsible for anything that may happen as a result of you using it. You also must give me credit in your copies of the code.
Other than that, Copy and modify as you like freely. I hope that you will contribute patches back to me. However, please note: I will most likely ignore large patches. Please keep patches small and localized. If you have a lot of features to add... please feed them to me one at a time.

Written by: Philip Brown
Bolthole Top Search