Hello again, I'm doing few more tests and now I'm wondering if this is possible to disallow CARP to have some resources on serverA and others on serverB?
Here is my tests (advbase=1 and advskew=0 for every interfaces on both servers): * Initial state root@obsd1:~# ifconfig HA |grep status status: master status: master status: master status: master root@obsd2:~# ifconfig HA |grep status status: backup status: backup status: backup status: backup * I unplugged em2 and em3 on obsd2 and em1 on obsd1: root@obsd1:~# ifconfig HA |grep status status: master status: invalid status: master status: master root@obsd2:~# ifconfig HA |grep status status: backup status: master status: invalid status: invalid obsd2 became master for em1 while obsd1 is master for everything else. Is there any (proper and automatic) way to avoid that ? I know that kind of situation will not happens often but... Thanks again! Le 06/07/2014 13:13, Mxher a écrit : > Le 06/07/2014 12:05, Otto Moerbeek a écrit : >> On Sun, Jul 06, 2014 at 10:59:16AM +0200, Janne Johansson wrote: >> >>> The sysctl for carp.preempt controls if they should all fail at the same >>> time. >> >> read carp(4). It contains answers to some questions asked. >> >> -Otto >> > >>> Den 6 jul 2014 10:12 skrev "Adam Thompson" <athom...@athompso.net>: >>>> I recall someone pointing out that interface groups of carp interfaces >>>> will all transition simultaneously. I find ifconfig(8) inconclusive; run >>>> your own tests and if that works, you have a built-in solution for keeping >>>> all the carp interfaces in sync. >>>> Then, use ifstated to manage the pppoe interfaces depending on ifstate of >>>> the relevant wan interface? You could set up a carp interface with no IP >>>> address bound, set it into the common if group and it would go up/down with >>>> the other carp ifs. >>>> Maybe. I haven't tried anything like that myself. >>>> -Adam > > I run some tests and this is working as expected! > > Only thing I see is that there will be no group failback if this is a > virtual carp interface which goes down. > > To be clear if the parent interface of carp2 goes down the whole group > will switch but not if carp2 goes down by itself (by an admin mistake > for example): > * initial states > root@obsd1:~# sysctl -a|grep preem > net.inet.carp.preempt=1 > root@obsd1:~# ifconfig HA |grep status > status: master > status: master > status: master > status: master > > root@obsd2:~# sysctl -a|grep preem > net.inet.carp.preempt=1 > root@obsd2:~# ifconfig HA |grep status > status: backup > status: backup > status: backup > status: backup > > > * states with carp2 down on obsd1 > root@obsd1:~# ifconfig carp2 down > root@obsd1:~# ifconfig HA |grep status > status: master > status: master > status: invalid > status: master > > root@obsd2:~# ifconfig HA |grep status > status: backup > status: backup > status: master > status: backup > > > * also unfortunately when carp2 goes UP again on obsd1 it still remains > on obsd2: > root@obsd1:~# ifconfig carp2 up > root@obsd1:~# ifconfig HA |grep status > status: master > status: master > status: backup > status: master > > root@obsd2:~# ifconfig HA |grep status > status: backup > status: backup > status: master > status: backup > > > Anyway I think this is an acceptable risk. > > > @Adam: I will now try to use ifstated to manage pppoe interfaces like > you suggest. > > > Thanks to everyone of you.