In a customer engagement, I found that that their bond0 and bond1 configurations look like this:
root@el01cn01:~# ipmpstat -i INTERFACE ACTIVE GROUP FLAGS LINK PROBE STATE eoib0 no bond1 is----- up disabled ok eoib1 yes bond1 --mb--- up disabled ok bond0_0 yes bond0 --mb--- up disabled ok bond0_1 no bond0 is----- up disabled ok
Notice that the active interface for bond1 is eoib1 while the active interface for bond0 is bond0_0
Although it is perfectly fine for the EoIB traffic and IPoIB traffic to go over different IB gateway, customer want like to re-configure it so that both type of traffic will go through the same IB gateway.
First of all, we turn on "standby" property for eoib1 and turn off "standby" property for eoib0 with the following commands:
root@el01cn01:~# ipadm set-ifprop -p standby=on -m ip eoib1 root@el01cn01:~# ipadm set-ifprop -p standby=off -m ip eoib0
The status of the IPMP groups look like this now:
root@el01cn01:~# ipmpstat -i INTERFACE ACTIVE GROUP FLAGS LINK PROBE STATE eoib0 yes bond1 ------- up disabled ok eoib1 yes bond1 -smb--- up disabled ok bond0_0 yes bond0 --mb--- up disabled ok bond0_1 no bond0 is----- up disabled ok
Then we forced a failover by detaching eoib1 from bond1 with the following command:
root@el01cn01:~# if_mpadm -d eoib1
The status of the IPMP groups look like this now:
root@el01cn01:~# ipmpstat -i INTERFACE ACTIVE GROUP FLAGS LINK PROBE STATE eoib0 yes bond1 --mb--- up disabled ok eoib1 no bond1 -s---d- up disabled offline bond0_0 yes bond0 --mb--- up disabled ok bond0_1 no bond0 is----- up disabled ok
Then we re-attach eoib1 back to bond1, because it is a standby interface, failback will not happen:
root@el01cn01:~# if_mpadm -r eoib1
That's how it looks like after the re-configuration:
root@el01cn01:~# ipmpstat -i INTERFACE ACTIVE GROUP FLAGS LINK PROBE STATE eoib0 yes bond1 --mb--- up disabled ok eoib1 no bond1 is----- up disabled ok bond0_0 yes bond0 --mb--- up disabled ok bond0_1 no bond0 is----- up disabled ok