[Linux-ha-dev] Occasionally heartbeat doesn't start...
lars.ellenberg at linbit.com
Mon Mar 12 05:43:24 MDT 2012
On Fri, Mar 09, 2012 at 11:52:56AM -0700, Alan Robertson wrote:
> I've been investigating an HA configuration for a customer. One
> time in testing heartbeat didn't start, because rpcbind had stolen
> its reserved port. Restarting rpcbind made it choose a different
> random port. This is definitely an interesting problem - even if it
> doesn't happen very often.
> The best solution to this, AFAIK is to make a file
> /etc/portreserve/heartbeat with this one line in it:
> and then add portrelease heartbeat to the init script.
"rpcbind" used to be "portmap".
You would need the portreserve daemon available, installed,
and started at the right time during your boot sequence.
So that's only a hackish workaround.
On Debian (Ubuntu, other derivatives) you'd simply add a line
to /etc/bindresvport.blacklist. But that may fail as well,
there have been reports where this was ignored for some reason.
So that again is just a workaround.
If you know exactly what will register with portmap (rpcbind),
you can tell those services to request fixed ports instead.
Typically you do, and those are just a few nfs related services.
So just edit /etc/sysconfig/* or /etc/defaults/*
to e.g. include -o and -p options for rpc.statd, and similar.
This really is a fix, as long as you know all services
that are started before heartbeat, and can tell them
to use specific ports.
: Lars Ellenberg
: LINBIT | Your Way to High Availability
: DRBD/HA support and consulting http://www.linbit.com
More information about the Linux-HA-Dev