Network bonding sur linux : Différence entre versions
De wikiGite
(→Charger le module de « bonding » dans le kernel) |
|||
(3 révisions intermédiaires par un autre utilisateur non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
= Redonder plusieurs cartes réseau sous Linux = | = Redonder plusieurs cartes réseau sous Linux = | ||
+ | == Modes bonding == | ||
+ | Les modes peuvent être indiqués numériquement ou par des mots clés | ||
+ | # mode=0 ou mode=balance-rr : equilibrage de charge | ||
+ | # mode=1 ou mode=active-backup : sauvegarde active | ||
+ | # mode=2 ou mode=balance-xor : balance xor | ||
+ | # mode=3 ou mode=broadcast : broadcast | ||
+ | # mode=4 ou mode=802.3ad : Norme 802.3ad | ||
+ | # mode=5 ou mode=balance-tlb : balance TLB | ||
+ | # mode=6 ou mode=balance-alb : balance ALB | ||
− | == Configurer le réseau == | + | Le paramètre "miimon" (fréquence de monitoring des 2 interfaces, en millisecondes) est le seul paramètre obligatoire. |
+ | |||
+ | == Sur Debian == | ||
+ | Sur Debian vérifier que le paquet ifenslave-2.6 (pour kernel 2.6) est installé. | ||
+ | === Configurer le réseau === | ||
+ | Editer /etc/network/interfaces : | ||
+ | # network interface settings | ||
+ | auto lo | ||
+ | iface lo inet loopback | ||
+ | |||
+ | auto bond0 | ||
+ | iface bond0 inet static | ||
+ | address 192.168.37.110 | ||
+ | netmask 255.255.255.0 | ||
+ | network 192.168.37.0 | ||
+ | broadcast 192.168.37.255 | ||
+ | gateway 192.168.37.254 | ||
+ | slaves eth0 eth1 | ||
+ | |||
+ | === Charger le module de « bonding » dans le kernel === | ||
+ | Ajouter un fichier de configuration pour le module bonding : | ||
+ | vi /etc/modprobe.d/aliases-bond | ||
+ | Y ajouter : | ||
+ | alias bond0 bonding | ||
+ | options bonding mode=1 miimon=100 | ||
+ | |||
+ | Pour tester, charger le module de « bonding » puis redémarrer le service réseau : | ||
+ | # modprobe bonding | ||
+ | # /etc/init.d/networking restart | ||
+ | |||
+ | == Sur CentOS == | ||
+ | === Configurer le réseau === | ||
Créer le fichier de configuration de la carte bond0 dans le fichier /etc/sysconfig/network-scripts/ifcfg-bond0 : | Créer le fichier de configuration de la carte bond0 dans le fichier /etc/sysconfig/network-scripts/ifcfg-bond0 : | ||
DEVICE=bond0 | DEVICE=bond0 | ||
Ligne 12 : | Ligne 52 : | ||
Editer les fichiers de configuration des différentes cartes réseau (/etc/sysconfig/network-scripts/ifcfg-XXXX).<br> | Editer les fichiers de configuration des différentes cartes réseau (/etc/sysconfig/network-scripts/ifcfg-XXXX).<br> | ||
− | + | Remplacer ou rajouter les lignes suivantes aux fichiers : | |
DEVICE=XXXX //à modifier avec nom de votre carte « eth? » | DEVICE=XXXX //à modifier avec nom de votre carte « eth? » | ||
USERCTL=no | USERCTL=no | ||
Ligne 20 : | Ligne 60 : | ||
BOOTPROTO=none | BOOTPROTO=none | ||
− | == Charger le module de « bonding » dans le kernel == | + | === Charger le module de « bonding » dans le kernel === |
Editer le fichier de configuration des modules de kernel /etc/modprobe.conf, y ajouter : | Editer le fichier de configuration des modules de kernel /etc/modprobe.conf, y ajouter : | ||
alias bond0 bonding | alias bond0 bonding | ||
Ligne 29 : | Ligne 69 : | ||
# service network restart | # service network restart | ||
+ | == Vérifications == | ||
Vérifier que la carte virtuelle est bien démarrée et que les cartes physique lui sont bien liées : | Vérifier que la carte virtuelle est bien démarrée et que les cartes physique lui sont bien liées : | ||
# less /proc/net/bonding/bond0 | # less /proc/net/bonding/bond0 | ||
Ligne 53 : | Ligne 94 : | ||
Permanent HW addr: 00:50:56:c0:00:03 | Permanent HW addr: 00:50:56:c0:00:03 | ||
− | Débrancher les | + | Débrancher les cartes une à une afin de vérifier que le serveur ne perd pas la connexion (en mode 1, active backup. En load balancing le poste client est connecté sur une seule carte à un instant T et il perd quand même la connexion si c'est cette carte-là qui est débranchée : il faudra relancer la connexion). |
Version actuelle datée du 20 avril 2011 à 18:57
Sommaire
Redonder plusieurs cartes réseau sous Linux
Modes bonding
Les modes peuvent être indiqués numériquement ou par des mots clés
- mode=0 ou mode=balance-rr : equilibrage de charge
- mode=1 ou mode=active-backup : sauvegarde active
- mode=2 ou mode=balance-xor : balance xor
- mode=3 ou mode=broadcast : broadcast
- mode=4 ou mode=802.3ad : Norme 802.3ad
- mode=5 ou mode=balance-tlb : balance TLB
- mode=6 ou mode=balance-alb : balance ALB
Le paramètre "miimon" (fréquence de monitoring des 2 interfaces, en millisecondes) est le seul paramètre obligatoire.
Sur Debian
Sur Debian vérifier que le paquet ifenslave-2.6 (pour kernel 2.6) est installé.
Configurer le réseau
Editer /etc/network/interfaces :
# network interface settings auto lo iface lo inet loopback auto bond0 iface bond0 inet static address 192.168.37.110 netmask 255.255.255.0 network 192.168.37.0 broadcast 192.168.37.255 gateway 192.168.37.254 slaves eth0 eth1
Charger le module de « bonding » dans le kernel
Ajouter un fichier de configuration pour le module bonding :
vi /etc/modprobe.d/aliases-bond
Y ajouter :
alias bond0 bonding options bonding mode=1 miimon=100
Pour tester, charger le module de « bonding » puis redémarrer le service réseau :
# modprobe bonding # /etc/init.d/networking restart
Sur CentOS
Configurer le réseau
Créer le fichier de configuration de la carte bond0 dans le fichier /etc/sysconfig/network-scripts/ifcfg-bond0 :
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
Editer les fichiers de configuration des différentes cartes réseau (/etc/sysconfig/network-scripts/ifcfg-XXXX).
Remplacer ou rajouter les lignes suivantes aux fichiers :
DEVICE=XXXX //à modifier avec nom de votre carte « eth? » USERCTL=no ONBOOT=yes MASTER=bond0 SLAVE=yes BOOTPROTO=none
Charger le module de « bonding » dans le kernel
Editer le fichier de configuration des modules de kernel /etc/modprobe.conf, y ajouter :
alias bond0 bonding options bond0 mode=balance-alb miimon=100
Pour tester, charger le module de « bonding » puis redémarrer le service réseau :
# modprobe bonding # service network restart
Vérifications
Vérifier 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 retournera une sortie plus ou moins identique à ça :
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
Débrancher les cartes une à une afin de vérifier que le serveur ne perd pas la connexion (en mode 1, active backup. En load balancing le poste client est connecté sur une seule carte à un instant T et il perd quand même la connexion si c'est cette carte-là qui est débranchée : il faudra relancer la connexion).