1

Redonder plusieurs cartes réseau sous Linux

Actu, Linux

closeCet article a été publié il y a 8 ans 1 mois 25 jours, il est donc possible qu’il ne soit plus à jour. Les informations proposées sont donc peut-être expirées.

Free-Data-center-14

Ceci n’est pas vraiment une nouveauté mais surtout une aide précieuse pour assurer une grande disponibilité réseau de vos serveurs montés sous Linux.

En effet Linux, vous permet d’utiliser plusieurs cartes réseau comme une seule grâce à un module kernel: le bonding.

Ce module vous permettra de transférer vos données plus rapidement grâce au load-ballancing ou de prévenir les dysfonctionnements de l’une de vos cartes afin que le serveur soit toujours joignable.

Le principe est simple, nous allons d’abord créer une carte réseau virtuelle qui utilisera les ressources de vos cartes physique afin qu’elles soient toutes reliées au réseau mais en passant par la carte virtuelle: bond0.

Voici donc une procédure simple afin de mettre en place rapidement cette redondance sur vos cartes.

Tout d’abord, nous allons créer le fichier de configuration de la carte bond0 dans le dossier /etc/sysconfig/network-scripts/ en tapant la commande suivante:

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

Et rajoutez les lignes suivantes dans le fichier:

DEVICE=bond0
IPADDR=192.168.1.100 //votre adresse ip
NETWORK=192.168.1.0 //l’adresse ip de votre reseau
NETMASK=255.255.255.0 //votre masque de sous-réseau
USERCTL=no
BOOTPROTO=none
ONBOOT=yes

Sauvegardez le fichier.

Maintenant nous allons éditer les fichiers de configuration des vos différentes cartes réseau:

Dans le même dossier, nous allons modifier les fichiers ifcfg-XXXX (où XXXX est le nom de votre carte réseau « eth0 », « eh1 »,….) en tapant la commande suivante:

# vi /etc/sysconfig/network-scripts/ifcfg-XXXX

Et remplacez ou rajoutez les lignes suivantes aux fichiers:

DEVICE=XXXX //à modifier avec nom de votre carte « eth? »
USERCTL=no
ONBOOT=yes
MASTER=bond0
SLAVE=yes
BOOTPROTO=none

Sauvegardez le fichier.

Nous pouvons alors charger le module de « bonding » dans le kernel.

Pour cela, il faut éditer le fichier de configuration des modules de kernel grâce à la commande suivante:

# vi /etc/modprobe.conf

Et ajoutez-y les lignes suivantes:

alias bond0 bonding
options bond0 mode=balance-alb miimon=100

Il ne reste plus qu’à tester la configuration:

Tout d’abord chargez le module de « bonding » puis redémarrez le service réseau afin de démarrer la carte bond0 en tapant les commandes suivantes:

# modprobe bonding

# service network restart

Vérifiez que la carte virtuelle est bien démarrée et que les cartes physique lui sont bien liées:

# less /proc/net/bonding/bond0

Qui vous retournera une sortie plus ou moins identique:

Bonding Mode: load balancing (round-robin)
MII Status: up
MII Polling Interval (ms): 0
Up Delay (ms): 0
Down Delay (ms): 0

Slave Interface: eth0
MII Status: up
Link Failure Count: 0
Permanent HW addr: 00:50:56:c0:00:08

Slave Interface: eth1
MII Status: up
Link Failure Count: 0
Permanent HW addr: 00:50:56:c0:00:01

Slave Interface: eth2
MII Status: up
Link Failure Count: 0
Permanent HW addr: 00:50:56:c0:00:03

Voila votre redondance est activée, vous pouvez vous amusez à débranchez les câbles Ethernet de vos carte un à un afin de vérifier que le serveur ne perd pas la connexion.

J’ai testé cette procédure sous Red Hat, Debian, et CentOS.

Si vous souhaitez plus d’informations sur les différentes commandes et en savoir plus sur les options avancées, voici la documentions officielle du « bonding »

 

Rédigé par

Tags: ,

Un Commentaire Voir les tweets