GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So richten Sie Linux Etherchannel Bonding für die Netzwerkschnittstelle HA ein

Unter Linux können Sie mithilfe von Etherchannel-Bonding zwei oder mehr physische Netzwerkschnittstellen (NIC) miteinander kombinieren, um eine virtuelle Schnittstelle zu erstellen.

Die IP-Adresse wird auf dieser virtuellen Schnittstelle konfiguriert. Wenn einer der zugrunde liegenden physischen Adapter ausfällt, wird der andere physische Adapter verwendet, um den Kommunikationsverkehr zu verarbeiten.

Die folgenden sind verschiedene Arten von Etherchannel-Bindungsmodi:

  • Modus 0 – Round-Robin (RR)-Richtlinie:Paketübertragungen erfolgen in sequentieller Reihenfolge. Beispielsweise wird das erste Paket über die Schnittstelle übertragen und das zweite Paket über die nächste Schnittstelle usw. Dieser Modus bietet Lastausgleich und Fehlertoleranz.
  • Modus 1 – aktive Sicherungsrichtlinie:Die Paketübertragung erfolgt nur über die aktive Schnittstelle und der Datenverkehr wird nur dann über die Sicherungsschnittstelle geleitet, wenn die aktive Schnittstelle ausgefallen ist.
  • Modus 2 – XOR-Richtlinie:Dieser Modus gleicht den ausgehenden Datenverkehr über die aktiven Ports aus. In diesem Modus wird für jede Ziel-MAC-Adresse derselbe Slave zur Übertragung verwendet. Dies bietet Lastausgleich und Fehlertoleranz.
  • Modus 3 – Broadcast-Richtlinie:Dies überträgt alles auf allen Slave-Schnittstellen. Dieser Modus bietet Fehlertoleranz.
  • Modus 4 (802.3ad):Dieser Modus wird verwendet, um Link-Aggregation-Gruppen zu erstellen, die dieselben Geschwindigkeits- und Duplexeinstellungen verwenden.
  • Modus 5 (balance-tlb):Adaptive Lastverteilung beim Senden. Der ausgehende Datenverkehr wird basierend auf der aktuellen Last auf jeden Slave verteilt. Eingehender Datenverkehr wird vom aktuellen Slave empfangen. Wenn der aktuelle Slave ausfällt, übernimmt ein anderer Slave den eingehenden Datenverkehr basierend auf der MAC-Adresse.
  • Modus 6 (balance-alb):Adaptive Lastverteilung. Dabei wird der eingehende Verkehr gehandhabt, um Lastausgleich über alle Slaves hinweg zu verwenden. Der Empfangslastausgleich erfolgt durch ARP-Aushandlung.

Bonding in Redhat oder CentOS konfigurieren

1. ifcfg-bond0-Datei erstellen

Alle Netzwerkkonfigurationsskripte befinden sich unter /etc/sysconfig/network-scripts in RHEL. Überprüfen Sie den Verbindungsstatus der Schnittstellen mit dem Befehl „ethtool“

Erstellen Sie eine Datei ifcfg-bond0 mit den folgenden Werten und ersetzen Sie sie durch die richtige IP, NETMASK und den entsprechenden Verbindungsmodus (Modus 0, 1, 2 …) wie unten.

# 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. Ändern Sie die ifcfg-eth0- und ifcfg-eth1-Dateien

Bearbeiten Sie die Netzwerkschnittstellendateien für eth0 und eth1, um Einträge ähnlich den folgenden widerzuspiegeln. Stellen Sie sicher, dass Sie die MASTER- und SLAVE-Parameter wie unten gezeigt definiert haben.

# 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. Bonding.conf-Datei erstellen

Erstellen Sie die Datei bond.conf mit folgendem Inhalt.

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

4. Starten Sie den Netzwerkdienst neu und überprüfen Sie die Verbindung

Starten Sie die Netzwerkdienste neu:

service network restart

Überprüfen Sie den Bindungsstatus wie unten gezeigt.

Das Folgende zeigt, dass der aktuelle Bindungsmodus Fehlertoleranz ist.

# 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

Sie können den Test durchführen, indem Sie eine Schnittstelle herunterfahren und sehen, dass die andere Schnittstelle aktiv ist und umgekehrt.

Bonding unter SuSE Linux konfigurieren

Um Bonding auf der neuesten Version von SuSE zu konfigurieren, können Sie entweder YaST verwenden oder alternativ die Systemdateien wie unten gezeigt ändern:

Überprüfen Sie die aktiven Schnittstellen mit dem folgenden Befehl:

ethtool  eth0 | egrep "Speed|Duplex|Link"

Wenn der Geschwindigkeits-, Duplex- und Verbindungsstatus unbekannt ist, befindet sich die Schnittstelle möglicherweise im ausgefallenen Status. Versuchen Sie, die Schnittstelle mit "ifconfig up" aufzurufen. Wenn Sie den Link immer noch nicht sehen, ist die Schnittstelle nicht mit dem Switch verbunden.

1. ifcfg-bond0-Datei erstellen

Melden Sie sich über die Konsole bei der Maschine an. Erstellen Sie ifcfg-bond0 unter /etc/sysconfig/network und definieren Sie die IP-Adresse und die Slave-Schnittstellen, die verwendet werden können.

Im folgenden Beispiel habe ich den Active-Backup-Modus für das Bonding verwendet, was bedeutet, dass nur die aktiven Schnittstellen den Kommunikationsverkehr und Fehler handhaben, bei denen die Backup-Schnittstelle zu arbeiten beginnt.

# 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. Ändern Sie die ifcfg-eth0- und ifcfg-eth1-Dateien

Ändern Sie die Slave-Schnittstellen so, dass sie nicht über die IP-Adresse, Netzmaske verfügen. Die Ausgabe sollte ungefähr so ​​aussehen:

# 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. Bearbeiten Sie die modprobe.conf-Datei

Bearbeiten Sie die Datei /etc/modprobe.conf und fügen Sie die folgenden 2 Zeilen hinzu, um den Bonding-Treiber mit Optionen einzuschließen.

alias bond0 bonding
options bond0 miimon=100 mode=1

Hinweis:Sie können Optionen ignorieren, wenn Sie sie bereits in die Datei /etc/sysconfig/network/ifcfg-bond0 aufgenommen haben.

4. Starten Sie den Netzwerkdienst neu und überprüfen Sie die Verbindung

Starten Sie nach dem Einrichten des Bondings den Netzwerkdienst neu:

rcnetwork restart

Stellen Sie sicher, dass die Bonding-Schnittstelle aktiv ist und die IP-Adresse ordnungsgemäß konfiguriert ist. Stellen Sie außerdem sicher, dass Sie den Server über die IP-Adresse verbinden können.

# 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)

Um zu testen, ob die Bonding-Schnittstelle korrekt funktioniert, melden Sie sich bei der Konsole an und fahren Sie die aktive Schnittstelle mit „ifconfig eth0 down“ herunter. Stellen Sie sicher, dass Sie sich weiterhin mit derselben IP oder demselben Hostnamen bei der Maschine anmelden können. Sie können den Status der aktiven Schnittstelle in der folgenden Datei überprüfen,

Wie unten gezeigt, ist eth0 ausgefallen, aber die Netzwerkverbindung zum Computer geht immer noch nicht verloren, da wir Bonding eingerichtet haben und die eth1-Schnittstelle immer noch aktiv ist.

# 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. So richten Sie eine statische IP-Adresse unter Debian Linux ein

  2. So konfigurieren Sie Failover und Hochverfügbarkeits-Netzwerkbindung unter Linux

  3. So richten Sie Sudo-Berechtigungen für Benutzer in Linux ein

  4. Linux – Wie kann ich die Netzwerkfreigabe für den aktuellen Prozess aufheben?

  5. So konfigurieren Sie die Schnittstellenbindung (NIC-Teaming) unter Oracle Linux 6

So teilen Sie den Drucker im Netzwerk unter Linux

So richten Sie die Multi-Faktor-Authentifizierung für SSH unter Linux ein

3 Möglichkeiten, eine Netzwerkschnittstelle in Linux zu konfigurieren

Verwenden von ifstat für Linux-Netzwerkstatistiken

So richten Sie die Netzwerkbindung in Ubuntu 20.04 ein

So fügen Sie eine Route unter Linux hinzu