GNU/Linux >> Znalost Linux >  >> Linux

Jak nastavit Linux Etherchannel Bonding pro síťové rozhraní HA

V Linuxu můžete pomocí etherchannel bonding kombinovat dvě nebo více fyzických síťových rozhraní (NIC) dohromady a vytvořit tak virtuální rozhraní.

IP adresa bude nakonfigurována na tomto virtuálním rozhraní. Pokud dojde k výpadku jednoho ze základních fyzických adaptérů, pak se ke zpracování komunikačního provozu použije druhý fyzický adaptér.

Následují různé typy režimů propojení etherchannel:

  • Režim 0 – zásada Round-robin (RR):Přenosy paketů se provádějí v sekvenčním pořadí. Například první paket je přenášen pomocí rozhraní a druhý paket je přenášen přes další rozhraní a tak dále. Tento režim poskytuje vyrovnávání zátěže a odolnost proti chybám.
  • Režim 1 – zásada aktivního zálohování:Přenos paketů probíhá pouze přes aktivní rozhraní a provoz je směrován přes záložní rozhraní pouze v případě, že aktivní rozhraní nefunguje.
  • Režim 2 – Zásady XOR:Tento režim vyrovnává odchozí provoz mezi aktivními porty. V tomto režimu je pro každou cílovou MAC adresu použit stejný slave server. To zajišťuje vyrovnávání zátěže a odolnost proti chybám.
  • Režim 3 – zásady vysílání:Přenáší vše na všech podřízených rozhraních. Tento režim poskytuje odolnost proti chybám.
  • Režim 4 ( 802.3ad ):Tento režim se používá k vytvoření skupin agregace odkazů, které sdílejí stejnou rychlost a duplexní nastavení.
  • Režim 5 ( balance-tlb ):Adaptivní vyrovnávání přenosové zátěže. Odchozí provoz je distribuován na základě aktuálního zatížení každého slave zařízení. Příchozí provoz přijímá aktuální slave zařízení. Pokud aktuální slave selže, pak další slave převezme příchozí provoz na základě MAC adresy.
  • Režim 6( balance-alb ):Adaptivní vyvažování zátěže. V tomto případě je příchozí provoz zpracován tak, aby se využívalo vyvažování zátěže napříč všemi podřízenými zařízeními. Vyrovnávání zátěže příjmu se provádí prostřednictvím vyjednávání ARP.

Nakonfigurujte Bonding v Redhat nebo CentOS

1. Vytvořte soubor ifcfg-bond0

Všechny konfigurační skripty sítě jsou umístěny v /etc/sysconfig/network-scripts v RHEL. Ověřte stav propojení rozhraní pomocí příkazu „ethtool“

Vytvořte soubor ifcfg-bond0 s níže uvedenými hodnotami a nahraďte jej správnou IP, NETMASK a příslušným režimem vazby (režim 0, 1,2 …), jak je uvedeno níže.

# cd /etc/sysconfig/network-scripts

# vi ifcfg-bond0
DEVICE=bond0
IPADDR=19.86.101.120
NETMASK=255.255.255.0
ONBOOT=yes
BOOTPROTO=none
USERCTL=no
BONDING_OPTS="mode=1 miimon=100"

2. Upravte soubory ifcfg-eth0 a ifcfg-eth1

Upravte soubory síťového rozhraní pro eth0 a eth1 tak, aby odrážely položky podobné následujícím. Ujistěte se, že máte definované parametry MASTER a SLAVE, jak je uvedeno níže.

# cat ifcfg-eth0
DEVICE=eth0
HWADDR=00:50:56:8E:0C:10
MASTER=bond0
SLAVE=yes
ONBOOT=yes
USERCTL=no
BOOTPROTO=none

# cat ifcfg-eth1
DEVICE=eth1
HWADDR=00:50:56:8E:0C:2A
MASTER=bond0
SLAVE=yes
ONBOOT=yes
USERCTL=no
BOOTPROTO=none

3. Vytvořte soubor bonding.conf

Vytvořte soubor bonding.conf s následujícím obsahem.

# vi /etc/modprobe.d/bonding.conf
alias netdev-bond0 bonding

4. Restartujte síťovou službu a ověřte propojení

Restartujte síťové služby:

service network restart

Ověřte stav lepení, jak je uvedeno níže.

Následující text označuje, že aktuální režim spojování je odolný vůči chybám.

# cat /proc/net/bonding/bond0
Ethernet Channel Bonding Driver: v3.6.0 (September 26, 2009)

Bonding Mode: fault-tolerance (active-backup)
Primary Slave: None
Currently Active Slave: eth0
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0

Slave Interface: eth0
MII Status: up
Speed: 10000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 00:50:56:8e:0c:10
Slave queue ID: 0

Slave Interface: eth1
MII Status: up
Speed: 10000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 00:50:56:8e:0c:2a
Slave queue ID: 0

Test můžete provést tak, že stáhnete jedno rozhraní, uvidíte, že druhé rozhraní bude aktivní a naopak.

Konfigurace Bonding na SuSE Linux

Chcete-li nakonfigurovat bonding na nejnovější verzi SuSE, můžete buď použít YaST, nebo můžete upravit systémové soubory, jak je uvedeno níže:

Ověřte aktivní rozhraní pomocí následujícího příkazu:

ethtool  eth0 | egrep "Speed|Duplex|Link"

Pokud není stav Speed, duplex &Link neznámý, může být rozhraní ve stavu nečinnosti. Zkuste vyvolat rozhraní pomocí „ifconfig up“. Pokud odkaz stále nevidíte, rozhraní není připojeno k přepínači.

1. Vytvořte soubor ifcfg-bond0

Přihlaste se ke stroji pomocí konzole. Vytvořte ifcfg-bond0 v /etc/sysconfig/network a definujte IP adresu a slave rozhraní, která lze použít.

V následujícím příkladu jsem pro propojení použil režim aktivní zálohy, což znamená, že komunikační provoz a selhání, při kterém začne fungovat záložní rozhraní, zvládnou pouze aktivní rozhraní.

# cd /etc/sysconfig/network

# cat ifcfg-bond0
BONDING_MASTER=yes
BONDING_MODULE_OPTS='mode=active-backup miimon=100'
BONDING_SLAVE0='eth0'
BONDING_SLAVE1='eth1'
BOOTPROTO='static'
IPADDR='192.168.1.85/24'
BROADCAST=''
STARTMODE='auto'

2. Upravte soubory ifcfg-eth0 a ifcfg-eth1

Upravte slave rozhraní tak, aby nemělo IP adresu, masku sítě. Výstup by měl být podobný následujícímu:

# cat ifcfg-eth0
DEVICE='eth0'
BOOTPROTO='none'
STARTMODE='onboot'
NAME='82545EM Gigabit Ethernet Controller (Copper)'

# cat ifcfg-eth1
DEVICE='eth1'
BOOTPROTO='none'
STARTMODE='onboot'
NAME='82545EM Gigabit Ethernet Controller (Copper)'

3. Upravte soubor modprobe.conf

Upravte soubor /etc/modprobe.conf a přidejte níže uvedené 2 řádky, abyste zahrnuli ovladač propojení s volbami.

alias bond0 bonding
options bond0 miimon=100 mode=1

Poznámka:Možnosti můžete ignorovat, pokud jste je již zahrnuli do souboru /etc/sysconfig/network/ifcfg-bond0.

4. Restartujte síťovou službu a ověřte propojení

Po nastavení propojení restartujte síťovou službu:

rcnetwork restart

Ověřte, že je spojovací rozhraní aktivní a IP je správně nakonfigurována. Také se ujistěte, že se můžete připojit k serveru pomocí IP adresy.

# ifconfig bond0
bond0     Link encap:Ethernet  HWaddr 00:50:56:8E:00:26
          inet addr:192.168.1.85  Bcast:192.168.1.1  Mask:255.255.255.0
          UP BROADCAST RUNNING MASTER MULTICAST  MTU:1500  Metric:1
          RX packets:28420409 errors:0 dropped:0 overruns:0 frame:0
          TX packets:151985 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:2362560309 (2253.1 Mb)  TX bytes:17330542 (16.5 Mb)

Chcete-li otestovat správné fungování spojovacího rozhraní, přihlaste se do konzole a stáhněte aktivní rozhraní pomocí „ifconfig eth0 down“. Ověřte, že se stále budete moci přihlásit k počítači pomocí stejné adresy IP nebo názvu hostitele. Stav aktivního rozhraní můžete ověřit v níže uvedeném souboru

Jak je znázorněno níže, eth0 nefunguje, ale síťové připojení k počítači stále není ztraceno, protože jsme nastavili propojení a rozhraní eth1 je stále aktivní.

# cat /proc/net/bonding/bond0
Ethernet Channel Bonding Driver: v3.5.0 (November 4, 2008)

Bonding Mode: fault-tolerance (active-backup)
Primary Slave: None
Currently Active Slave: eth1
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0

Slave Interface: eth0
MII Status: down
Link Failure Count: 1
Permanent HW addr: 00:50:56:8e:00:26

Slave Interface: eth1
MII Status: up
Link Failure Count: 0
Permanent HW addr: 00:50:56:8e:7e:20

Linux
  1. Jak nastavit statickou IP adresu na Debian Linuxu

  2. Jak nakonfigurovat převzetí služeb při selhání a vysokokapacitní síťové vazby v systému Linux

  3. Jak nastavit Network Bonding Ubuntu 20.04

  1. 10 Linuxových příkazů pro diagnostiku sítě

  2. Jak nastavit oprávnění Sudo pro uživatele v Linuxu

  3. Jak vymažu statistiky rozhraní v systému Linux

  1. Linux – Jak zrušit sdílení sítě pro aktuální proces?

  2. Jak nakonfigurovat propojení rozhraní (NIC Teaming) na Oracle Linux 6

  3. Jak nastavit klíče SSH pro přihlášení k ssh „bez hesla“ v systému Linux