NIC Bonding/Teaming (Verständnisfrage)

Einrichten des lokalen Netzes, Verbindung zu anderen Computern und Diensten.
Antworten
weeeeeee
Beiträge: 9
Registriert: 11.02.2005 13:16:29

NIC Bonding/Teaming (Verständnisfrage)

Beitrag von weeeeeee » 07.01.2009 21:16:43

Abend,

ich steh grad massiv auf dem Schlauch und seh vermutlich vor lauter Wald keine Bäume mehr ;)

Die wiki-Suche hat nichts brauchbares ergeben, die Forensuche spuckt was aus [1] aber ich seh grad nicht, ob das bei meinem Problem weiterhilft. [2] ist auch ganz interessant, aber ich Blick da heut nimmer durch (und ist evtl nicht mehr ganz aktuell ?!?) ;)

Aber nun mal zur Sache.

Hypothetische Annahme, weil ich keine passende Testumgebung habe:

4 Server mit 2 x 1 Gbit Netzwerkschnittstelle, der Einfachheit halber eht0 und eth1
2 x 1Gbit Switch

Ist es möglich mittels NIC Bonding alle eth0 Karten an Switch 1 und alle eth1 Karten an Switch 2 zu hängen?

Ist es dann möglich auf allen Servern eth0 und eth1 zu koppeln, so dass beide Karten ...
a) die selbe IP haben ?
b) vom Kernel als nur ein Interfaces angesprochen werden ? (Sollte eigentlich ;) )

Kann ich auch bei 2 Switches den ALB Modus (adaptive load balancing) verwenden? Funktioniert das? Sind dann die Server mit 2x 1 Gbit angebunden?

Muss der Switch irgendwelche Anforderungen erfüllen oder langt ein gewöhnlicher Layer2 Switch?

Müssen die Switche miteinander verbunden sein?


Ich hoffe, jemand kann mich vom Schlauch runterholen ;)

Gruß

[1] http://debianforum.de/forum/viewtopic.p ... ic+bonding
[2] http://www.kernel.org/pub/linux/kernel/ ... onding.txt

mcdikki
Beiträge: 312
Registriert: 11.06.2007 18:14:45
Lizenz eigener Beiträge: MIT Lizenz

Re: NIC Bonding/Teaming (Verständnisfrage)

Beitrag von mcdikki » 07.01.2009 21:35:42

Hi,

also ich kann dir zwar nicht alle deine Fragen beantworten, aber ein paar.

Je nach Bonding type sind die Anforderungen an deine Hardware unterschiedlich.

Bei ALB und TLB benötigst du keinen Speziellen Switch, bei tlb alb aber eine NIC die ihre Mac IM BETRIEB ändern kann.

Ich habe hier mal ein paar gute Links, die mir sehr geholfen haben.

http://www.debianhelp.co.uk/bonding.htm
http://www.cyberciti.biz/howto/question ... -howto.php

Mit einem guten Switch der 802.3ad unterstützt, würde ich dir empfehlen diese Variante zu nehmen. SIe ist meiner meinung nach die beste.

Dadurch hättest du aber natürlich keine Sicherheit gegen den Ausfall eines Switches. Ich denke darauf zielst du ab, wenn du die beiden NICs eines Server an unterschiedliche Switches hängen möchtest.

Hoffe das hilft dir ein bischen weiter,
lg mcdikki
LINUX - Life is too short for reboot!

Samba PDC auf Debian Etch | 2xIntel Xeon 3GHz - 2048 MB RAM - RAID 10 mit 3Ware 9550SX-4LP und 4x80GB HDD SATAII

weeeeeee
Beiträge: 9
Registriert: 11.02.2005 13:16:29

Re: NIC Bonding/Teaming (Verständnisfrage)

Beitrag von weeeeeee » 07.01.2009 22:28:14

mcdikki hat geschrieben: Dadurch hättest du aber natürlich keine Sicherheit gegen den Ausfall eines Switches. Ich denke darauf zielst du ab, wenn du die beiden NICs eines Server an unterschiedliche Switches hängen möchtest.
Ja, beide NICs an unterschiedliche Switche ;) Und dabei will ich trotzdem noch den Bandbreitengewinn haben ;)

Punkt 12.2 bei [1] ist sehr interessant und geht in die Richtung wie ich es meine (ist [1] nicht mit ähnlich mit [2]?). Allerdings sollen beide Interfaces auf die selbe IP-Adresse hören (KO-Kriterium), sonst ist das ganze etwas witzlos ;) Und es soll noch dann funktionieren, wenn ein Switch ausfällt/getauscht wird o.ä.


[1] http://www.cyberciti.biz/howto/question ... -howto.php
[2] http://www.kernel.org/pub/linux/kernel/ ... onding.txt

mcdikki
Beiträge: 312
Registriert: 11.06.2007 18:14:45
Lizenz eigener Beiträge: MIT Lizenz

Re: NIC Bonding/Teaming (Verständnisfrage)

Beitrag von mcdikki » 07.01.2009 23:45:49

Ich schätze dass das nicht so gehen wird.

Denn der Switch muss ja wissen, wohin er die Pakete senden soll, es muss also ein route geben.

Nun gibt es ja beim Bonding zwei arten wie der ankommenden Verkehr auf die Karten verteilt werden kann.
1. Es wird die MAC der Karten angepasst, so dass immer nur eine NIC die "MAC des Servers hat", dass ginge dann auch über 2 Switches, allerdings ist unklar ob das dann auch mit den Routen passt, denn jeder Switch hält ja eine MAC Tabelle vor, nun gibt es dann aber an dem Switch, an dem die User hängen für eine MAC zwei Ports, einen zu jedem Switch. Könnte zum Problem werden.
2. Der Switch verteilt die Pakete auf die beiden Ports für den Server, dafür müssen aber natürlich beide NICs am gleichen Switch hängen, da er es ja verwaltet.

Insofern denke ich, dass es so wie du es möchtest nicht geht.

Die Frage ist jetzt, wofür benötigst du diese hohe Ausfallsicherheit in Kombi mit 2 GBit Bandbreite?
Wenn du das wirklich brauchst (nicht bloss gerne haben möchtest weil es so cool ist :mrgreen: ), dann solltest du ehr mal in Richtung Loadbalancer und Mirrorserver schauen.

lg mcdikki
LINUX - Life is too short for reboot!

Samba PDC auf Debian Etch | 2xIntel Xeon 3GHz - 2048 MB RAM - RAID 10 mit 3Ware 9550SX-4LP und 4x80GB HDD SATAII

Benutzeravatar
kindascared
Beiträge: 24
Registriert: 28.11.2008 10:32:23
Lizenz eigener Beiträge: GNU General Public License

Re: NIC Bonding/Teaming (Verständnisfrage)

Beitrag von kindascared » 08.01.2009 10:23:02

die switche sollten zumindest im active-backup mode gelinkt sein ( Inter Switch Link schimpft sich der spass wohl).

Mal eine ganz andere Frage...dir ist schon klar das deine hardware bei 2Gbit 240MB/s schaffen muss...in deinem fall würde ich einfach nur active backup bonding mode 1 laufen lassen. dafür brauchst du ifenslave2.6 guckst dir dann mal die usr/doc/ifenslave sachen an und dann passt das.

unter etch funktioniert das ganze nämlich anders als in lenny...da muss man ein bischen aufpassen
Good Night, and Good Luck.

Benutzeravatar
TRex
Moderator
Beiträge: 8371
Registriert: 23.11.2006 12:23:54
Wohnort: KA

Re: NIC Bonding/Teaming (Verständnisfrage)

Beitrag von TRex » 08.01.2009 11:39:35

240MB/s 8O

Das musst ausm RAM bedienen, um die komplette Bandbreite zu nutzen...gibts Festplatten, die sowas schaffen?
Jesus saves. Buddha does incremental backups.
Windows ist doof, Linux funktioniert nichtDon't break debian!Wie man widerspricht

weeeeeee
Beiträge: 9
Registriert: 11.02.2005 13:16:29

Re: NIC Bonding/Teaming (Verständnisfrage)

Beitrag von weeeeeee » 08.01.2009 12:19:46

kindascared hat geschrieben:die switche sollten zumindest im active-backup mode gelinkt sein ( Inter Switch Link schimpft sich der spass wohl).
Mal eine ganz andere Frage...dir ist schon klar das deine hardware bei 2Gbit 240MB/s schaffen muss...in deinem fall würde ich einfach nur active backup bonding mode 1 laufen lassen. dafür brauchst du ifenslave2.6 guckst dir dann mal die usr/doc/ifenslave sachen an und dann passt das.
Ok, ifenslave ist ein guter Hinweis, werd dem mal weiter nachgehen. Loadblanacing etc ist mit am Start (bzw. in der Planungsphase). Am Ende wird es wohl so aussehen, dass 12-16 Server mit unterschiedlichen Funktionen da stehen werden. MySQL-Cluster (dbnodes und 2 LBs(aktiv-passiv)) und Apache-Webserver mit 2 Loadbalancern vorgeschaltet (auch aktiv/passiv)). Die 2 Loadbalancer für die www-Server teilen sich eine virtuelle IP-Adresse, die User kommen nur über die Loadbalancer bzw. die IP auf die Webserver. Das heißt, alle Server haben 2 NICs, die 2 www-loadbalancer haben 3 NICs (je 2 davon im internen Netz). Also alle Server im internen Netz haben 2 NIC und sollen redundant angebunden werden (ko-kriterium), ein ,,nice to have'' wäre, wenn man im Normalbetrieb auch die volle Bandbreite der beiden internen Netze kombinieren könnte (warum soll das nur vor sich hin gammeln? ;) )

Vereinfacht soll das so aussehen:

sv= Server
LB= Loadbalancer (www)

Linke Seite: eth0
Rechte Seite: eth1

|-sv1-|
|-sv2-|
|-sv3-|
|-sv4-|
|-sv5-|
|-svX-|
|-lb1-|

Die User sind über eine dritte NIC an LB1 angeschlossen.

Könnte ,,balance-rr (round robin)'' evtl. der passende Modus sein? Was für Anforderungen müssen dann an die Switche gelten? Wie verhält es sich im Fehlerfall?

@TRex2003: Ist ja nicht nur eine Mühle, sondern ein ganzer Haufen. Und ein Teil davon (MySQL Cluster) liefert die Daten wirklich aus dem Ram.

Antworten