On Tue, Mar 27, 2018 at 4:59 PM, Leroy Tennison <[email protected]> wrote: > THANK YOU! That fixed it, I certainly appreciate the help.
Great news. If you found any Ubuntu information that was stale or incorrect, please do share so we can update/reply/fix so others can find a working solution. Ryan > > -----Original Message----- > From: Ryan Harper [mailto:[email protected]] > Sent: Tuesday, March 27, 2018 3:12 PM > To: Leroy Tennison <[email protected]> > Cc: [email protected] > Subject: [EXTERNAL] Re: LSB job for "raise network interfaces" times out but > configuration works > > On Mon, Mar 26, 2018 at 10:38 AM, Leroy Tennison <[email protected]> > wrote: >> I’ve found numerous posts on the web about this but all solutions fix >> the symptom, not the issue (adjust the networking timeout). >> Admittedly, the situation is more complex (bonding and bridging) but I >> would prefer something other than a work-around on production >> hypervisors. The >> configuration: >> >> >> >> /etdc/modprobe.d/bonding.conf: >> >> options bonding mode=1 miimon=100 downdelay=200 >> updelay=200 >> >> >> >> /etc/network/interfaces: >> >> source /etc/network/interfaces.d/* (empty directory) >> >> >> >> # The loopback network interface >> >> auto lo >> >> iface lo inet loopback >> >> >> >> # The primary network interface >> >> auto bond0 br0 enp2s0 enp3s0 >> >> >> >> iface enp2s0 inet manual >> >> bond-master bond0 >> >> >> >> iface enp3s0 inet manual >> >> bond-master bond0 >> >> >> >> iface bond0 inet manual >> >> bond-primary enp2s0 enp3s0 >> >> post-up ifenslave bond0 enp2s0 enp3s0 >> >> pre-down ifenslave -d bond0 enp2s0 enp3s0 >> >> >> >> iface br0 inet static >> >> address 10.222.110.95/24 >> >> gateway 10.222.110.1 >> >> up ip route add default via 10.222.110.1 dev br0 >> >> # dns-nameservers 10.222.110.1 >> >> dns-search ofc.datavoiceint.com colo.datavoiceint.com >> client.datavoiceint.com wifi.datavoiceint.com >> >> bridge_ports bond0 >> >> bridge stp off >> >> bridge_fd 0 >> >> bridge_maxwait 0 >> >> >> >> Because of the timeout, the DNS entries in /etc/network/interfaces >> aren’t applied to the system. I have worked around this by using >> /etc/resolvconf/resolv.conf.d/tail. >> >> >> >> Questions: >> >> Why is this happening? >> >> Is there anything I can do to prevent it while >> maintaining the bonding/bridging configuration? > > This may help: > > Ensure you've bridge-utils and ifenslave packages installed, and then I > suggest this restructuring of the interfaces file: > > auto lo > iface lo inet loopback > dns-nameservers 10.222.110.1 > dns-search ofc.datavoiceint.com colo.datavoiceint.com > client.datavoiceint.com wifi.datavoiceint.com > > auto enp2s0 > iface enp2s0 inet manual > bond-master bond0 > bond-mode active-backup > bond-primary enp2s0 > > auto enp3s0 > iface enp3s0 inet manual > bond-master bond0 > bond-mode active-backup > bond-primary enp2s0 > > auto bond0 > iface bond0 inet manual > bond-mode active-backup > bond-slaves none > bond-primary enp2s0 > > auto br0 > iface br0 inet static > address 10.222.110.95/24 > gateway 10.222.110.1 > bridge_ports bond0 > bridge_stp off > > > The changes I've made here are > > 1) drop up-down hooks, the bridge-utils/ifenslave packages already provide > scripts to do this > 2) set mode to active-backup, I suspect with bond-primary this is what you > want > 3) bond-primary takes a single interface, this interface is always preferred > over any other, in active-backup, it'll fail over to any other interface > that's been enslaved > I'm not aware of bond-primary accepting a list in case you've enslaved > more than two interfaces > 4) make use of bond-slaves none to deal with parallel ifup on physical > interfaces > 5) best-practices for bonding replicate the bond configration on slaves in > case one fails to come up, the config is always present > 6) drop use of bridge_maxwait as you don't have an anonymous bridge (no ip > address) so you must wait for the underlying device (bond0) to come up > > I'm not entirely sure why resolveconf wasn't picking up the dns-* settings > from the bridge, but I do think that the maxwait 0 mean that the bridge > wasn't waiting for the underlying interface (bond0) to be come available. In > general it's going to take non-zero amount of time for the bond to become > active after the interfaces are cold-plugged; so I think it's worth letting > the ifupdown hook scripts run with the defaults to see if that gets > everything configured. If it comes up fine, then from there you can see > about tweaking settings to lower the amount of time it's waiting. > > Hope that helps, > Ryan -- ubuntu-server mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-server More info: https://wiki.ubuntu.com/ServerTeam
