Linux-HA Logo

Heartbeat on OpenBSD

Yes, heartbeat is running on OpenBSD, and there is also a port for it in the OpenBSD ports CVS tree. As the port was imported after the OpenBSD 4.2 release it is only available for OpenBSD-current installations. The actual heartbeat version of the port is 2.1.3.

Heartbeat port for OpenBSD

The latest version of the port is 2.1.3. The port is tested to compile and run on i386, sparc and sparc64. Nevertheless, I also tested the port on OpenBSD 4.2 and 4.1, and needed only minor tweaks to the versions in the various *DEPENDS variables in the ports Makefile.

The Heartbeat port is divided into SUBPACKAGES. To the main package containing the main heartbeat stuff, there are a -gui and a -snmp subpackage.

Differences in heartbeat on OpenBSD compared to Linux

This section will explain the main differences between Heartbeat on Linux and OpenBSD.

File locations

Heartbeat user and group

The heartbeat user and group are called _heartbeat, following the OpenBSD user naming scheme, instead of using the hacluster:haclient combination. The standard user and group id is 596.

Additional resource scripts

Due to the fact that OpenBSD doesn't use the SystemV style system startup, there aren't LSB scripts available. So far, three additional resource scripts, for the OpenBSD apache, and for openvpn, and for Asterisk/Callweaver are added to the port. Further the pgsql and mysql resource scripts are patched to provide sane default values for OpenBSD.

Multicast based cluster on OpenBSD

To be able to setup a multicast based cluster you have to make sure you enable multicast_host in /etc/rc.conf or better in /etc/rc.conf.local. Make sure every node in your cluster has multicast enabled, then this works well.

Broadcast based cluster on OpenBSD

Setup of a cluster with communication based on broadcast does not work on OpenBSD. More on the reason about that can be found here: "Broadcast directive"[1].

OpenBSD related Heartbeat bugzilla entries

OpenBSD related bugs and problems are reported in the HeartbeatBugzilla[2]: Bugzilla[3]

The test cluster

The test cluster is a funny mixture of the following hardware:

Known problems

Port Version numbers

The version numbers of the port follow the official release version numbers. I try to update the port for interim releases too. Interim version have the added interim version number. Own additions/enhancements are maintained in the ports patchlevel p0.


References

[1]http://www.linux-ha.org/ha.cf#bcast
[2]http://www.linux-ha.org/HeartbeatBugzilla
[3]http://developerbugs.linux-foundation.org/buglist.cgi?bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&field0-0-0=product&type0-0-0=substring&value0-0-0=OpenBSD&field0-0-1=component&type0-0-1=substring&value0-0-1=OpenBSD&field0-0-2=short_desc&type0-0-2=substring&value0-0-2=OpenBSD&field0-0-3=status_whiteboard&type0-0-3=substring&value0-0-3=OpenBSD


This information provided courtesy of the Linux-HA project at http://linux-ha.org/