web-dev-qa-db-fra.com

RHEL 6.4: Mode 1 Collage de canaux ne pas échouer

Je suis en train de courir Rhel 6.4, Kernel-2.6.32-358.EL6.I686, sur un HP ML 350 G5 avec deux niques Broadcom Netxtreme II BCM5708 1000BASE-T. Mon objectif est de canaliser les deux interfaces dans un mode=1 paire de basculement.

Mon problème est que malgré toutes les preuves que la liaison est configurée et acceptée, tirant le câble de la primaire NIC amène que toutes les communications cessent.

iFCFG-Etho et IFCFG-ETH1

Premièrement, IFCFG-ETH0:

DEVICE=eth0
HWADDR=00:22:64:F8:EF:60
TYPE=Ethernet
UUID=99ea681d-831b-42a7-81be-02f71d1f7aa0
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=none
MASTER=bond0
SLAVE=yes

Ensuite, IFCFG-ETH1:

DEVICE=eth1
HWADDR=00:22:64:F8:EF:62
TYPE=Ethernet
UUID=92d46872-eb4a-4eef-bea5-825e914a5ad6
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=none
MASTER=bond0
SLAVE=yes

ifcfg-bond00

Fichier de configuration de mon lien:

DEVICE=bond0
IPADDR=192.168.11.222
GATEWAY=192.168.11.1
NETMASK=255.255.255.0
DNS1=192.168.11.1
ONBOOT=yes
BOOTPROTO=none
USERCTL=no
BONDING_OPTS="mode=1 miimmon=100"

/etc/modprobe.d/bonding.conf

J'ai un /etc/modprobe.d/bonding.conf fichier qui est peuplé donc:

alias bond0 bonding

sortie IP Addr

Le lien est opérationnel et je peux accéder aux services publics du serveur via l'adresse IP de l'obligation:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope Host lo
    inet6 ::1/128 scope Host 
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 1500 qdisc mq master bond0 state UP qlen 1000
    link/ether 00:22:64:f8:ef:60 brd ff:ff:ff:ff:ff:ff
3: eth1: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 1500 qdisc mq master bond0 state UP qlen 1000
    link/ether 00:22:64:f8:ef:60 brd ff:ff:ff:ff:ff:ff
4: bond0: <BROADCAST,MULTICAST,MASTER,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP 
    link/ether 00:22:64:f8:ef:60 brd ff:ff:ff:ff:ff:ff
    inet 192.168.11.222/24 brd 192.168.11.255 scope global bond0
    inet6 fe80::222:64ff:fef8:ef60/64 scope link 
       valid_lft forever preferred_lft forever

Module de noyau de liaison

...est chargé:

# cat /proc/modules | grep bond
bonding 111135 0 - Live 0xf9cdc000

/ SYS/Classe/Net

Les /sys/class/net Le système de fichiers montre de bonnes choses:

cat /sys/class/net/bonding_masters 
bond0
cat /sys/class/net/bond0/operstate 
up
cat /sys/class/net/bond0/slave_eth0/operstate 
up
cat /sys/class/net/bond0/slave_eth1/operstate 
up
cat /sys/class/net/bond0/type 
1

/ var/journal/messages

Rien d'inquiétude n'apparaît dans le fichier journal. En fait, tout semble plutôt heureux.

Jun 15 15:47:28 rhsandbox2 kernel: Ethernet Channel Bonding Driver: v3.6.0 (September 26, 2009)
Jun 15 15:47:28 rhsandbox2 kernel: bonding: bond0: setting mode to active-backup (1).
Jun 15 15:47:28 rhsandbox2 kernel: bonding: bond0: setting mode to active-backup (1).
Jun 15 15:47:28 rhsandbox2 kernel: bonding: bond0: setting mode to active-backup (1).
Jun 15 15:47:28 rhsandbox2 kernel: bonding: bond0: setting mode to active-backup (1).
Jun 15 15:47:28 rhsandbox2 kernel: bonding: bond0: Adding slave eth0.
Jun 15 15:47:28 rhsandbox2 kernel: bnx2 0000:03:00.0: eth0: using MSI
Jun 15 15:47:28 rhsandbox2 kernel: bonding: bond0: making interface eth0 the new active one.
Jun 15 15:47:28 rhsandbox2 kernel: bonding: bond0: first active interface up!
Jun 15 15:47:28 rhsandbox2 kernel: bonding: bond0: enslaving eth0 as an active interface with an up link.
Jun 15 15:47:28 rhsandbox2 kernel: bonding: bond0: Adding slave eth1.
Jun 15 15:47:28 rhsandbox2 kernel: bnx2 0000:05:00.0: eth1: using MSI
Jun 15 15:47:28 rhsandbox2 kernel: bonding: bond0: enslaving eth1 as a backup interface with an up link.
Jun 15 15:47:28 rhsandbox2 kernel: 8021q: adding VLAN 0 to HW filter on device bond0
Jun 15 15:47:28 rhsandbox2 kernel: bnx2 0000:03:00.0: eth0: NIC Copper Link is Up, 1000 Mbps full duplex
Jun 15 15:47:28 rhsandbox2 kernel: bnx2 0000:05:00.0: eth1: NIC Copper Link is Up, 1000 Mbps full duplex

Donc quel est le problème?!

Yanking Le câble réseau d'ETH0 provoque la sombre de toutes les communications. Quel pourrait être le problème et quelles mesures supplémentaires dois-je prendre pour résoudre ce problème?

ÉDITER:

Dépannage supplémentaire:

Le réseau est un seul sous-réseau, simple VLAN fourni par un commutateur Procurve 1800-8g. J'ai ajouté primary=eth0 à ifcfg-bond0 et redémarrer les services de réseautage, mais cela n'a changé aucun comportement. J'ai vérifié /sys/class/net/bond0/bonding/primary Les deux avant et après l'ajout primary=eth1 Et il a une valeur nulle, ce que je ne suis pas sûr est bon ou mauvais.

Voie /var/log/messages lorsque eth1 Le câble a-t-il été supprimé ne montre rien de plus que:

Jun 15 16:51:16 rhsandbox2 kernel: bnx2 0000:03:00.0: eth0: NIC Copper Link is Down
Jun 15 16:51:24 rhsandbox2 kernel: bnx2 0000:03:00.0: eth0: NIC Copper Link is Up, 1000 Mbps full duplex

J'ai ajouté use_carrier=0 à ifcfg-bond0 's BONDING_OPTS Section Pour activer l'utilisation de MII/EthTool IOCTLS. Après avoir redémarré le service réseau, il n'y avait pas de changement de symptômes. Tirant le câble de eth0 provoque la cessation de toutes les communications de réseau. Encore une fois, pas d'erreurs dans /var/log/messages Enregistrer pour la notification selon laquelle le lien sur ce port est tombé en panne.

11
Wesley

LIRE. TON. Configs.

Et quand ça échoue ...

LIRE. TOUS. LES SORTIES.

Voyez-vous ce qu'il y a dans ifcfg-bond0? Non, vous comprenez Qu'est-ce que c'est en ifcfg-bond0?
[.____] quoi dans le monde des pingouins glissants est miimmon=100?
[.____] Oh je suis désolé, tu voulais dire miimon=100?

Ouais, je pense que vous vouliez dire miimon et pas miimmon.

En outre, un grand cadeau est que lorsque vous redémarrez votre service réseau, vous voyez ceci:

service network restart
Shutting down interface bond0:                             [  OK  ]
Shutting down loopback interface:                          [  OK  ]
Bringing up loopback interface:                            [  OK  ]
Bringing up interface bond0:  ./network-functions: line 446: /sys/class/net/bond0/bonding/miimmon: No such file or directory
./network-functions: line 446: /sys/class/net/bond0/bonding/miimmon: No such file or directory
                                                           [  OK  ]

Portez une attention particulière à tout ce que vous tapez et lorsque vous faites votre faute de frappe inévitable, faites une attention particulière à chaque sortie que vous voyez.

Vous êtes une mauvaise personne et vous devriez vous sentir mal.

21
Wesley

Essayez de spécifier l'un des NICS comme l'esclave principal.

DEVICE=bond0
IPADDR=192.168.11.222
GATEWAY=192.168.11.1
NETMASK=255.255.255.0
DNS1=192.168.11.1
ONBOOT=yes
BOOTPROTO=none
USERCTL=no
BONDING_OPTS="mode=1 miimmon=100 primary=eth0"

Plus de documentation à partir de RH :

primaire = Spécifie le nom de l'interface, tel que Eth0, du périphérique principal. Le périphérique principal est la première des interfaces de liaison à utiliser et n'est pas abandonnée à moins qu'elle échoue. Ce paramètre est particulièrement utile lorsqu'un NIC dans l'interface de liaison est plus rapide et, par conséquent, capable de gérer une charge plus grande. Ce paramètre n'est valide que lorsque l'interface de liaison est en mode de sauvegarde active. Reportez-vous à /usR/Share/doc/kernel-Doc-/documentation/networking/bonding.txt Pour plus d'informations.

2
dmourati

Ajoutez l'option de liaison suivante Downdelay = XXXX dans MILISEC qui échoue à une ETH après avoir été détectée comme ayant échoué et définir l'esclave principal sur le reste. Si ce paramètre n'est pas dans la liaison_opt, la liaison détecte l'échec (parce que vous incluez Miimom = aaaa), mais il n'éteint jamais l'ETH0. Vous pouvez voir cela se produire en examinant le fichier/proc/net/liaison/bondx.

Quoi qu'il en soit, avec Rhel 6.3 (presque la même version que la même version), nous avons plusieurs autres problèmes liés au collage associé à l'échec du dos, Dupliqué Mac Addr vus de l'interrupteur.

bonne chance.

2
mcw