High Availability Cluster on Opensuse 12.2 - Advice needed


I have two servers running opensuse 12.2 one cloned from the other. I want to create a system where if the master server fails, the cloned server takes over. From what I have read I need a 2 node high-availability configuration. This is where it has become confusing. I have been reading about heartbeat, cluster-glue, pacemaker, resource-agents corosync etc. Heartbeat seems to be missing from the 12.2 dvd and repository…is this true and why? I have read online that it has been dropped from the repository for current builds.

So my question is what is the best approach to facilitate failover management for my 2 node system and what application(s) are best suited to my needs on this platform. I am thinking of using rsync (or lsyncd) to achive mirroring of the backup server. I won’t be using shared storage.



I haven’t looked at this in awhile…

Looks like there has been some major changes.

A number of traditional pieces you list which are consistent with RH HA seem to have been replaced with “Corosync” HA extensions. I checked, there are a number of Corosync packages at software.opensuse.org.

I couldn’t find openSUSE specific documentation, but skimming the following SUSE documentation looks like it’s applicable to openSUSE, too.
High Availability Guide


Re: your use of rsync

YMMV, of course if the data is relatively static then it should not be an issue but ordinarily it’d be inadvisable because it can’t guarantee mirrored data at all times and at some point running rsync with shorter intervals becomes an overhead and resources headache.

Depending on your situation, you might also consider DNS Round Robin to use both/all servers actively to provide simple load balancing as well as automatic redundancy and availability without the complexity of HA clustering.


Bignige wrote:
> Hi,
> I have two servers running opensuse 12.2 one cloned from the other. I
> want to create a system where if the master server fails, the cloned
> server takes over. From what I have read I need

I think that what you need is going to depend an awful lot on what these
servers actually do and what availability you actually need.

The requirements to keep a web server online are different to those for
an email server, for example. And a real-time price feed has very
different requirements to a stock transfer system.

If you describe what you’re trying to do, people will be able to provide
better advice.

Hi Thanks…yes after much reading online and googling I found that Corosync can be used and is included in current builds together with pacemaker (crm) and the ‘Hawk’ web gui interface for pacemaker. I have installed these packages as well as the ‘Resource Agents’ and quickly managed to setup a vitual ip resource.I pointed a windows client at the virtual ip and then pulled the network cable from one server and the client stayed connected to the other server. I also set up a resource to email me when there is a failover. I havent tested it fully yet but it seems to work nicely.

I and just looking at various ways to sync data between the servers. reading up on lsyncd, rsync, and unison. my concern is what happens if a server failsback. the two machines need to be synced before the connection is allowed to the failback machine.



Basically it is an email (dovecot imaps) and fileserver (samba) with an internet gateway for a windows network. I just want to have one server take over if the main server fails. I’m not concerned with individual applications failing ( as is the case with many of the “how to’s” which are written for e.g. Apache)

As mentioned above I think a virtual ip will do the trick provided I can ensure data is synced. lsyncd should work on the fly in one direction but the tricky situation is failback which I need to consider in depth.