Bondage des canaux Ethernet AKA Faire équipe sur les systèmes Linux

Bondage des canaux Ethernet AKA Faire équipe sur les systèmes Linux

Bondage du canal Ethernet permet deux ou plus Carte d'interfaces réseau (Nic) à un seul virtuel Nic carte qui peut augmenter la bande passante et fournit une redondance de Cartes NIC. C'est un excellent moyen d'atteindre des liens redondants, des réseaux d'équilibrage de la tolérance aux défauts dans le système de production. Si un physique Nic est bas ou débranché, il déplacera automatiquement les ressources vers d'autres Nic carte. Canaliser/ /Nic Le lien fonctionnera avec l'aide de Bonding Driver dans Noyau. Nous en utiliserons deux Nic pour démontrer le même.

Bondage du canal Ethernet

Il y a presque six types de Lien de canal Les types sont disponibles. Ici, nous ne reviendrons que deux types de liaison de canal qui sont populaires et largement utilisés.

  1. 0: équilibrage de chargement (Tournoi à la ronde): Le trafic est transmis en ordre séquentiel ou à la mode à la ronde à partir des deux nic. Ce mode fournit un équilibrage de charge et une tolérance aux défauts.
  2. 1: Backup actif : Un seul nic esclave est actif à un moment donné. Une autre carte d'interface ne sera active que si la carte réseau esclave actif échoue.

Création de liaison de canal Ethernet

Nous avons deux Cartes Ethernet réseau je.e ETH1 et ETH2Bond0 sera créé à des fins de liaison. Besoin de SuperUser privilégié pour exécuter les commandes ci-dessous.

Équilibrage de la charge (tournoi à la ronde)

Configurer Eth1

Mentionner le maître des paramètres Bond0 et ETH1 interface comme un ESCLAVE Dans le fichier de configuration comme indiqué ci-dessous.

# vi / etc / sysconfig / réseau-scripts / ifcfg-eth1
Device = "eth1" type = Ethernet onoot = "oui" bootproto = "non" userctl = non maître = lim0 slave = oui
Configurer Eth2

Ici aussi, spécifiez le maître des paramètres Bond0 et ETH2 interface comme un ESCLAVE.

# vi / etc / sysconfig / réseau-scripts / ifcfg-eth2
Device = "eth2" type = "Ethernet" onboot = "oui" userctl = non # nm_controlled = yes bootproto = non maître = Bond0 slave = oui
Créer une configuration Bond0

Créer Bond0 et configurer l'interface de liaison des canaux dans le «/ etc / Sysconfig / Network-Scripts /»Répertoire appelé ifcfg-bond0.

Ce qui suit est un fichier de configuration de liaison de canal d'exemple de canal.

# vi / etc / sysconfig / réseau de réseau / ifcfg-bond0
Device = Bond0 OnBoot = Oui iPaddr = 192.168.246.130 Masque de réseau = 255.255.255.0 Bonding_opts = "mode = 0 miimon = 100"

Note: Dans la configuration ci-dessus, nous avons choisi des options de liaison mode = 0 je.e Tournoi à la ronde et miimon = 100 (Intervalles de sondage 100 ms).

Voyons les interfaces créées à l'aide de la commande ifconfig qui affiche "Bond0«Running comme le MAÎTRE les deux interfaces "ETH1" et "ETH2"Running comme DES ESCLAVES.

# ifconfig
lien Bond0 ENCAP: Ethernet hwaddr 00: 0c: 29: 57: 61: 8e INET addr: 192.168.246.130 Bcast: 192.168.246.255 Masque: 255.255.255.0 INET6 ADDR: FE80 :: 20C: 29FF: FE57: 618E / 64 SPOCE: Lien UP Broadcast Running Master MultiCast MTU: 1500 Metric: 1 RX Packets: 17374 Erreurs: 0 Dropped: 0 Overns: 0 Frame: 0 Paquets TX: 16060 Erreurs: 0 Dépose: 0 Dépurs.1 MIB) octets tx: 1622391 (1.5 MIB) ETH1 LIEN ENCAP: Ethernet Hwaddr 00: 0C: 29: 57: 61: 8E UP Broadcast Running Slave Multicast MTU: 1500 Metric: 1 Rx Packets: 16989 Erreurs: 0 Dropped: 0 Overuns: 0 Frame: 0 Paquets TX: 8072 Erreurs: 0 Débat: 0 Dépassement: 0 Carrier: 0 Collisions: 0 Txqueuelen: 1000 RX octets: 1196931 (1.1 MIB) octets TX: 819042 (799.8 kib) Interruption: 19 Adresse de base: 0x2000 ETH2 Lien ENCAP: Ethernet Hwaddr 00: 0c: 29: 57: 61: 8E Broadcast Running Slave Multicast MTU: 1500 Metric: 1 Rx Packets: 385 Erreurs: 0 Drop: 0 Overruns: 0 Frame: 0 Paquets TX: 7989 Erreurs: 0 Dépose: 0 Dépassement: 0 Carrier: 0 Collisions: 0 Txqueuelen: 1000 RX Bytes: 34624 (33.8 kib) octets tx: 803583 (784.7 kib) Interruption: 19 Adresse de base: 0x2080 LO LIEN ENCAP: LOOPBACK LOCAL INET ADDR: 127.0.0.1 masque: 255.0.0.0 INET6 addr: :: 1/128 Scope: Host Up Loopback exécutant MTU: 16436 METRIC: 1 PACKETS RX: 8 Erreurs: 0 Déprochage: 0 Délocations: 0 Frame: 0 Paquets TX: 8 Erreurs: 0 Drop: 0 Overnuns: 0 Carrier: 0 Collisions: 0 Txqueuelen: 0 Rx octets: 480 (480.0 b) octets tx: 480 (480.0 b)

Redémarrer le service réseau et les interfaces devraient être OK.

# Redémarrage du réseau de services
Arrêt de l'interface Bond0: [OK] Arrêt de l'interface de bouclage: [OK] Interface de boucle de boucle: [OK] Bond d'interface Bond0: [OK]

Vérification de l'état de la caution.

# watch -n .1 CAT / PROC / NET / BONDING / BAND0
Échantillon

La sortie ci-dessous montre que Mode de liaison est L'équilibrage de charge (Rr) et ETH1 & ETH2 apparaissent.

Tous les 0.1s: Cat / Proc / Net / Bonding / Bond0 Thu sept.6.0 (26 septembre 2009) Mode de liaison: équilibrage de la charge (rond-robin) MII Statut: UP MII Intervalle de sondage (MS): 100 retard (MS): 0 Down Delay (MS): 0 Interface esclave: ETH1 MII Statut: Vitesse supérieure: duplex inconnu: défaillance de défaillance des liens inconnus: 2 addr hw permanent: 00: 0c: 29: 57: 61: 8e ID de file d'attente d'esclave: 0 Interface esclave: ETH2 MII Statut: Up Speed: Unknown Duplex: Unknown Link Faiche Count: 2 Addr HW permanent: 00: 0C: 29: 57: 61: 98 ID de file d'attente d'esclaves: 0

Créer une sauvegarde active

Dans ce scénario, Esclave Les interfaces restent les mêmes. Un seul changement sera là dans l'interface Bond ifcfg-bond0 au lieu de '0' ce sera '1'qui est montré comme sous.

# vi / etc / sysconfig / réseau de réseau / ifcfg-bond0
Device = Bond0 OnBoot = Oui iPaddr = 192.168.246.130 Masque de réseau = 255.255.255.0 Bonding_opts = "mode = 1 miimon = 100"

Redémarrez le service réseau et vérifiez l'état de la liaison.

# Redémarrage du réseau de services
Arrêt de l'interface Bond0: [OK] Arrêt de l'interface de bouclage: [OK] Interface de boucle de boucle: [OK] Bond d'interface Bond0: [OK]

Vérification de l'état du lien avec la commande.

# watch -n .1 CAT / PROC / NET / BONDING / BAND0
Échantillon de sortie

Le mode de liaison montre la tolérance aux défauts (active-dosage) et l'interface des esclaves est en place.

Tous les 0.1s: Cat / Proc / N… jeu sept.6.0 (2 septembre 6, 2009) Mode de liaison: tolérance aux défauts (dos actif) Esclave primaire: Aucun actuellement esclave actif: ETH1 MII Statut: UP MII Intervalle de sondage (MS): 100 délai supérieur (MS): 0 Détail (retard ( MS): 0 Interface esclave: ETH1 MII Statut: Up Speed: Unknown Duplex: Inconnu Link Faiche Count: 0 Permanent HW Addr: 00: 0C: 29: 57: 61: 8e Slave Fitre ID: 0 Interface esclave: ETH2 MII Statut: Vitesse de hausse: Duplex inconnu: défaillance des liens inconnus: 0 Addr HW permanent: 00: 0c: 29: 57: 61: 98 ID de file d'attente d'esclaves: 0

Note: Manuellement bas et en haut les interfaces esclaves pour vérifier le fonctionnement de Liaison de canal. Veuillez voir la commande comme ci-dessous.

# ifconfig eth1 down # ifconfig eth1 up

C'est ça!