Wéi erstellen ech NIC Teaming oder Bonding an CentOS 8/RHEL 8


NIC Teaming ass d'Aggregatioun oder d'Verbindung vun zwee oder méi Netzwierklinken an engem eenzege logesche Link fir Redundanz an héich Disponibilitéit ze bidden. Déi logesch Interface/Link ass bekannt als Team Interface. Am Fall wou den aktive kierperleche Link erof geet, fänkt ee vun de Backup oder reservéiert Linken automatesch un a garantéiert eng onënnerbrach Verbindung zum Server.

Ier mir eis Ärmelen rullen, ass et entscheedend Iech mat de folgende Terminologien vertraut ze maachen:

  • Teamd - Dëst ass den flotten Teaming Daemon deen d'libteam Bibliothéik benotzt fir mat Teamgeräter iwwer de Linux Kernel ze kommunizéieren.
  • Teamdctl- Dëst ass en Utility deen d'Benotzer erlaabt eng Instanz vu Teamd ze kontrolléieren. Dir kënnt de Portstatus iwwerpréiwen an änneren, wéi och tëscht Backup an aktiven Zoustänn wiesselen.
  • Runner - Dëst sinn Unitéiten vum Code geschriwwen an JSON a gi fir d'Ëmsetzung vu verschiddenen NIC Teaming Konzepter benotzt. Beispiller vu Leefermodi enthalen Round Robin, Belaaschtung, Broadcast an aktive Backup.

Fir dëse Guide konfiguréiere mir NIC Teaming mam aktive Backup-Modus. Dëst ass wou ee Link aktiv bleift, während de Rescht am Standby ass a reservéiert als Backup Links am Fall wou den aktive Link erof geet.

Op dëser Säit

  • Installéiert den Team Daemon an CentOS
  • NIC Teaming an CentOS konfiguréieren
  • Test Network Teaming Redundanz
  • En Network Teaming Interface läschen

Ouni vill weider, loosst eis ufänken.

Teamd ass den Daemon dee verantwortlech ass fir en Netzwierkteam ze kreéieren dat als logesch Interface wärend der Runtime handelt. Par défaut gëtt et installéiert mat CentOS/RHEL 8. Awer wann, aus irgendege Grënn, et net installéiert ass, fuert de folgenden dnf Kommando aus fir se z'installéieren.

$ sudo dnf install teamd

Eemol installéiert verifizéiert datt Teamd installéiert ass andeems Dir de rpm Kommando ausféiert:

$ rpm -qi teamd

Fir NIC Teaming ze konfiguréieren wäerte mir dat praktescht nmcli-Tool benotzen dat fir d'Gestioun vum NetworkManager Service benotzt ka ginn. A mengem System hunn ech 2 NIC Kaarten déi ech verbannen oder kombinéieren fir eng logesch Teaminterface ze kreéieren: enp0s3 an enp0s8. Dëst kann an Ärem Fall anescht sinn.

Fir déi aktiv Netzwierkschnëttplazen ze bestätegen lafen:

$ nmcli device status

D'Ausgab bestätegt d'Existenz vun 2 aktive Netzwierkverbindungen. Fir méi Informatioun iwwer d'Interfaces wéi UUID ze sammelen, fuert de Kommando:

$ nmcli connection show

Fir en Netzwierk Teaming Link oder Interface ze kreéieren, wat eise logesche Link wäert sinn, wäerte mir déi existent Netzwierkschnëttplazen läschen. Duerno erstelle mir Sklaven-Interfaces mat de geläschte Schnëttplazen an associéieren se dann mam Teaminglink.

Mat hiren jeweilegen UUID's ausféieren d'Befehle hei ënnen fir d'Links ze läschen:

$ nmcli connection delete e3cec54d-e791-4436-8c5f-4a48c134ad29
$ nmcli connection delete dee76b4c-9alb-4f24-a9f0-2c9574747807

Dës Kéier wann Dir d'Interfaces iwwerpréift, mierkt Dir datt se ofgeschalt sinn a keng Verbindung mam Server ubidden. Prinzipiell gëtt Äre Server vum Rescht vum Netz isoléiert.

$ nmcli device status

Als nächst wäerte mir eng Team-Interface mam Numm team0 am aktive Backup Runner Modus erstellen. Wéi virdru gesot, benotzt den aktive Backup Runner Modus eng aktiv Interface a reservéiert déi aner fir Redundanz am Fall wou den aktive Link erof geet.

$ nmcli connection add type team con-name team0 ifname team0 config '{"runner": {"name": "activebackup"}}'

Fir d'Attributer ze gesinn, déi dem team0 Interface zougewisen sinn, fuert de Kommando:

$ nmcli connection show team0

Perfekt! Zu dësem Zäitpunkt hu mir nëmmen een Interface erop, dat ass den team0 Interface wéi gewisen.

$ nmcli connection show

Als nächst konfiguréiert d'IP Adress fir den team0 Interface wéi mat dem nmcli Kommando gewisen. Gitt sécher d'IP'en no Ärem Subnet & IP Adresséierungsschema vun Ärem Netzwierk ze zouzeweisen.

$ nmcli con mod team0 ipv4.addresses 192.168.2.100/24
$ nmcli con mod team0 ipv4.gateway 192.168.2.1
$ nmcli con mod team0 ipv4.dns 8.8.8.8
$ nmcli con mod team0 ipv4.method manual
$ nmcli con mod team0 connection.autoconnect yes

Duerno, erstellt Sklave Linken an assoziéiert d'Sklaven un den Teamlink:

$ nmcli con add type team-slave con-name team0-slave0 ifname enp0s3 master team0
$ nmcli con add type team-slave con-name team0-slave1 ifname enp0s8 master team0

Kontrolléiert de Status vun de Linken nach eng Kéier, an Dir wäert feststellen datt d'Sklavelinks elo aktiv sinn.

$ nmcli connection show

Als nächst, deaktivéieren an aktivéieren den Teamlink. Dëst aktivéiert d'Verbindung tëscht de Sklave Linken an dem Teamlink.

$ nmcli connection down team0 && nmcli connection up team0

Als nächst, kontrolléiert den Zoustand vun der Teamlinkverbindung wéi gewisen.

$ ip addr show dev team0

Mir kënne gesinn datt de Link mat der korrekter IP Adresséierung ass, déi mir virdru konfiguréiert hunn.

Fir zousätzlech Detailer iwwer den Teamlink ze recuperéieren, fuert de Kommando:

$ sudo teamdctl team0 state

Vun der Ausgab kënne mir gesinn datt béid Links (enp0s3 an enp0s8) erop sinn an datt den aktive Link enp0s8 ass.

Fir eisen Aktiv-Backup-Teammodus ze testen, trennen mir den aktuellen aktive Link - enp0s3 - a kontrolléieren ob deen anere Link erakënnt.

$ nmcli device disconnect enp0s3
$ sudo teamdctl team0 state

Wann Dir de Status vun der Teaming-Interface iwwerpréift, fannt Dir datt de Link enp0s8 ageschloen ass a Verbindunge mam Server servéiert. Dëst bestätegt datt eise Setup funktionnéiert!

Wann Dir d'Teaming-Interface/Link wëllt läschen an op d'Standard-Netzwierk Astellunge zréckkommen, bréngt als éischt den Teaminglink erof:

$ nmcli connection down team0

Als nächst läscht d'Sklaven.

$ nmcli connection delete team0-slave0 team0-slave1

Endlech, läschen der Teaming Interface.

$ nmcli connection delete team0

Zu dësem Zäitpunkt sinn all Interfaces erof an Äre Server ass net erreechbar. Fir Är Netzwierkschnëttplazen z'aktivéieren an d'Konnektivitéit erëm z'erreechen, lafen d'Befehle:

$ sudo ifconfig enp0s3 up
$ sudo ifconfig enp0s8 up
$ sudo systemctl restart NetworkManager

NIC Teaming bitt eng exzellent Léisung fir Reseau Redundanz. Mat 2 oder méi Netzwierkschnëttplazen kënnt Dir eng Teaming-Interface an all Leefermodus konfiguréieren fir eng héich Disponibilitéit ze garantéieren am Fall wou ee Link zoufälleg erofgeet. Mir hoffen datt Dir dëse Guide hëllefräich fonnt hutt. Hit eis a loosst eis wëssen wéi Är Erfahrung war.