Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I have setup two node active/active ip failover with heartbeat and pacemaker following the link at zivtech on the two load balancers for the backend web servers. Two LBs has public ip each which is shared for failover and I checked if the ips are taken over by available lb if one lb fails and it's doing fine. Now I want to add one more load balancer for one more public ip failover(totally 3 ips) and I guess it's not possible with heartbeat. How do I do this? Any suggestions please?

Thanks!

EDIT:1

Tried directly adding 3rd node in ha.cf file with autojoin any but crm_mon didn't show the third node as if it's added neither Online nor Offline.

ha.cf:

ucast eth0 192.168.1.2
ucast eth0 192.168.1.3
ucast eth0 192.168.1.4
.....
node lb1
node lb2
node lb3
........
autojoin any

crm_mon -1:

============
Last updated: Mon Jan 16 22:29:20 2012
Stack: Heartbeat
Current DC: lb2 (47f9c1f7-e24b-4183-b9f0-9082e268578e) - partition WITHOUT quorum
Version: 1.0.8-042548a451fce8400660f6031f4da6f0223dd5dd
2 Nodes configured, unknown expected votes
3 Resources configured.
============

Online: [ lb1 lb2 ]

 site_one_ip    (ocf::heartbeat:IPaddr):    Started lb1
 site_two_ip    (ocf::heartbeat:IPaddr):    Started lb2
 site_three_ip  (ocf::heartbeat:IPaddr):    Started lb1
share|improve this question
    
Why do you think it's not possible to have a third ip? –  becomingwisest Jan 15 '12 at 15:55
    
Actually, I heard heartbeat is limited to 2 nodes! –  user53864 Jan 15 '12 at 16:12
    
If possible could you show me how do I do this with 3 ips with heartbeat alone or with pacemaker integration. –  user53864 Jan 15 '12 at 16:15
    
Note, i have not setup a three node heartbeat setup, nor have i used pacemaker.Try adding a node grandpa, to the /etc/ha.d/ha.cf and updating all the nodes. Be sure to copy the auth keys too. Then use the crm util to add a third ip. –  becomingwisest Jan 15 '12 at 16:30
1  
You might also look at replacing heartbeat with corosync. Heartbeat development has been discontinued in favor of corosync + pacemaker clusters. And corosync + pacemaker can have as many nodes as you want. –  Patrick Jan 15 '12 at 17:12
show 5 more comments

1 Answer

up vote 2 down vote accepted

Whoever in curious to know if heartbeat with more than 2 node is possible, then I say heartbeat is not limited to 2 nodes we can join more than 2 nodes. Actually I didn't copy the same authkey for the 3rd node. All the three nodes is listing now.

I Also tried Corosync, and one of the node I couldn't get online don't know why having all config and keys same, just started doubting the reliability of the Corosync which never happend in Heartbeat. Moreover, no support for Unicast in corosysnc didn't impress much.

Thanks!

share|improve this answer
1  
Thanks for confirming that Heartbeat does work with more than 2 nodes. Just a point of mention though, Corosync does support Unicast (as of version 1.3 (Nov. 2010) - unfortunately, most repositories don't yet have that version) - see this question for more info. –  cyberx86 Feb 10 '12 at 1:10
    
First of all Thank you revealing the secret!. I definitely don't leave Corosync if it supports and works with unicast as you said if I use 1.3. Is bindnetadd is required again specifying network id?. Just thinking how to install the version 1.3, if building from source works fine. –  user53864 Feb 10 '12 at 3:58
    
Corosync can be built from source, but I prefer to build binaries, since they have to be deployed to multiple nodes (and I try to avoid having development tools on production machines). bindnetaddr is required in the interface section - it is a network address, not an interface address (since you want it to remain the same across all configurations) - so, typically just zero out the last octal of the local interface address. (If you are building RPMs, the process differs slightly from the typical rpmbuild - just use ./autogen.sh && ./configure and make rpm). –  cyberx86 Feb 10 '12 at 12:23
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.