Přeskočit obsah

Nastavení bondingu (redundantní připojení serveru)

Debian

Nainstalovat balíček ifenslave:

apt-get install ifenslave

Editovat soubor /etc/network/interfaces a prepsat eth0 na nasledujici:

auto bond0  
iface bond0 inet static  
        address x.x.x.x  
        netmask x.x.x.x  
        gateway x.x.x.x  
        dns-nameservers 78.24.12.150 217.16.191.70  
        dns-search vshosting.cz  
        bond-mode 802.3ad  
        bond-xmit-hash-policy layer3+4  
        bond-lacp-rate 1  
        bond-miimon 100  
        bond-downdelay 200  
        bond-updelay 200  
        bond-slaves eth0 eth1

Ubuntu 16.04

Zde je nastavení obdobné jako u Debianu

Ubuntu 18.04 a novější

Vytvořte soubor /etc/netplan/config.yaml s následujícím obsahem:

network:
 version: 2
 renderer: networkd
 ethernets:
 eno1:
 dhcp4: no
 eno2:
 dhcp4: no
 bonds:
 bond0:
 addresses:
        - XXX.XXX.XXX.XXX/YY
 gateway4: XXX.XXX.XXX.XXX
 nameservers:
 addresses:  
 - 78.24.12.150  
 - 217.16.191.70
 interfaces:
        - eno1
        - eno2
 parameters:
 mode: 802.3ad
 mii-monitor-interval: 100

A potom spusťte netplan apply.

Centos 7 a 8

Nejprve je nastavit načítání modulu pro podporu bondingu.

modprobe --first-time bonding

Vytvoříme soubor ifcfg-bond0:

vi /etc/sysconfig/network-scripts/ifcfg-bond0

a vložíme

DEVICE=bond0  
NAME=bond0  
TYPE=Bond  
BONDING_MASTER=yes  
IPADDR=x.x.x.x  
PREFIX=xx  
ONBOOT=yes  
BOOTPROTO=none  
BONDING_OPTS="miimon=100 mode=4 lacp_rate=1 xmit_hash=1 downdelay=200 updelay=200"

Nastavíme oba interface, které chceme s bondovat (upravíme z výrazněné)

vi /etc/sysconfig/networks-scripts/ifcfg-encp0sX
HWADDR="08:00:27:04:03:86"  
TYPE="Ethernet"  
**BOOTPROTO="none"**  
DEFROUTE="yes"  
PEERDNS="yes"  
PEERROUTES="yes"  
IPV4_FAILURE_FATAL="no"  
IPV6INIT="yes"  
IPV6_AUTOCONF="yes"  
IPV6_DEFROUTE="yes"  
IPV6_PEERDNS="yes"  
IPV6_PEERROUTES="yes"  
IPV6_FAILURE_FATAL="no"  
NAME="enp0s8"  
UUID="a97b23f2-fa87-49de-ac9b-39661ba9c20f"  
ONBOOT="yes"  
MASTER=bond0  
SLAVE=yes

Stejně pro další interface.

Poté nahodíme interfacy.

ifup ifcfg-enp0sX

Pokud používáme Network Manager, provedeme ještě:

nmcli con reload

A nakonec restartuje síť.

systemctl restart network

Ověříme si stav bonding

cat /proc/net/bonding/bond0

Centos 6.5

Vytvoříme soubor ifcfg-bond0.

vi /etc/sysconfig/network-script/ifcfg-bond0

a vložíme

DEVICE=bond0  
BOOTPROTO=none  
ONBOOT=yes  
IPADDR=x.x.x.x  
NETWORK=x.x.x.x  
NETMASK=x.x.x.x  
USERCTL=no  
BONDING_OPTS="mode=4 miimon=100 lacp_rate=1 xmit_hash=1 downdelay=200 updelay=200"

Vytvoříme soubor bonding.conf

vi /etc/modprobe.d/bonding.conf

a vložíme

alias bond0 bonding

Upavíme konfiguraci eth0 a eth1.

vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth1  
MASTER=bond0  
SLAVE=yes  
USERCTL=no  
ONBOOT=yes  
BOOTPROTO=none

Stejně pro eth1.

Spustíme:

modprobe bonding
service network restart

A zkontrolujeme stav bondu

cat /proc/net/bonding/bond0