ich habe hier einen etwas betagten Debian Fileserver der nichts macht außer
einer Sambafreigabe.
Leider klagen mittlerweile einige Kollegen an den PCs über etwas lahme
Antwortzeiten.
Daher würde ich gerne (zunächst probehalber) dem Server eine Gbit NIC
verpassen und an diese dann mal einen der betroffenen PCs ranpatchen.
Im Erfolgsfall würde ich das Lan dann auf die beiden Karten verteilen.
Bevor ich das angehe, wollte ich daher hier fragen, ob ich in der smb.conf
gesondert auf die neue Karte verweisen muss oder ob ich davon ausgehen kann,
dass das System "automatisch" beide Karten nutzen wird.
Dabei stellt sich mir noch eine Zusatzfrage:
Der Server hat ja nur einen Namen im Netzwerk, mit zwei Karten aber 2 IPs.
Was passiert wenn ich dann von einem Windooof-Client aus auf \\server\daten
zugreifen will? Bzw. wie kann ich Clientseitig wählen über welche karte ich
reinkomme?
Danke vorab für jeden guten Rat zur Tat.
Grüße
Michael
Ich bin mir nicht ganz sicher, was du mit den zwei Karten erreichen
willst. Schneller wird es kaum werden, da sich die Karten ja wohl das
gleiche Netzwerkmedium teilen müssen und die Bandbreite dort kannst du
nicht erhöhen, indem du zwei Karten in einem Rechner benutzt. Wenn du
ausserdem sagst, dass der Fileserver etwas betagt ist (was heisst das,
wie sieht die Hardwarekonfiguration aus?), würde ich das Problem eher
auf dem Datenbus des Rechners als im Netz vermuten. Ein paar technische
Informationen wären hier ganz hilfreich. :)
Ich vermute, dass es Probleme geben wird, wenn du zwei Netzwerkkarten
zum selben Netz in einen Rechner packst. Die Datenpakete, die
rausgeschickt werden, werden mittels Routing-Tabelle über die
entsprechende Netzwerkkarte rausgeschickt.
Angenommen, du hast ein Netz 'lokal', darin den Server 'samba' mit zwei
Netzwerkkarten mit den Interfaces eth0 und eth1. Ein Client fragt auf
eth1 an (indem man z.B. statt des Namens die IP von eth1 angibt). Wenn
die Routing-Tabelle sagt, dass alle Pakete in das Netz 'lokal' über
eth0 gehen, werden die Antworten wohl auch über eth0 rausgehen. Damit
dürfte der Client dann aber Schwierigkeiten haben, da die Antworten nun
eine andere Absender-IP haben.
Sinnvoller wäre es, die langsamere Karte gegen eine schnellere zu
tauschen und dann zu sehen, wie sich das auf die Performance auswirkt.
Gruss
Thomas
> Dabei stellt sich mir noch eine Zusatzfrage:
> Der Server hat ja nur einen Namen im Netzwerk, mit zwei Karten aber 2 IPs.
> Was passiert wenn ich dann von einem Windooof-Client aus auf \\server\daten
> zugreifen will? Bzw. wie kann ich Clientseitig wählen über welche karte ich
> reinkomme?
>
> Danke vorab für jeden guten Rat zur Tat.
>
> Grüße
>
> Michael
>
Also automatisch geht da gar nichts. Falls die Karte wirklich der
Flaschenhals sein sollte, dann musst Du 2 Samba-Server parallel laufen
lassen und jeden auf eine eigene IP binden. Das hat in Deinem Fall aber
den Nachteil, daß "daten" von beiden bedient wird. Das sollte man auch
in 2 Bereiche trennen.
Ansonsten würde ich auch mal die Karte checken und evtl. eine neuere
verwenden und vor allem mal den Traffic untersuchen. Dein
Performanceeinbruch muss nicht unbedingt an der Hardware liegen.
--
Cheers / Gruesse
Robert
> Am Mon, 22 Jun 2009 10:28:10 +0200
> schrieb Michael Vogt <vogo...@web.de>:
>
>> Hallo,
>>
>> ich habe hier einen etwas betagten Debian Fileserver der nichts macht
>> außer einer Sambafreigabe.
>>
>> Leider klagen mittlerweile einige Kollegen an den PCs über etwas
>> lahme Antwortzeiten.
>>
>> Daher würde ich gerne (zunächst probehalber) dem Server eine Gbit NIC
>> verpassen und an diese dann mal einen der betroffenen PCs ranpatchen.
>> Im Erfolgsfall würde ich das Lan dann auf die beiden Karten verteilen.
...
>
> Ich bin mir nicht ganz sicher, was du mit den zwei Karten erreichen
> willst. Schneller wird es kaum werden, da sich die Karten ja wohl das
> gleiche Netzwerkmedium teilen müssen und die Bandbreite dort kannst du
> nicht erhöhen, indem du zwei Karten in einem Rechner benutzt.
Der Gedanke war, zunächst einen einzelnen PC direkt auf die zweite Karte zu
patchen um zu sehen ob eine solche 1:1 Anbindung einen deutlichen Gewinn
bringen würde.
> Wenn du ausserdem sagst, dass der Fileserver etwas betagt ist (was heisst
> das, wie sieht die Hardwarekonfiguration aus?), würde ich das Problem eher
> auf dem Datenbus des Rechners als im Netz vermuten. Ein paar technische
> Informationen wären hier ganz hilfreich. :)
Ich habe die Daten der Maschine nicht griffbereit :-/
Der Server ist ca 4 Jahre alt.
Aus dem Kopf weiss ich dass es eine onboard 10/100er Karte ist.
Die NIC geht auf einen einfachen Switch der dann insg. 10 PCs versorgt.
Diese laden sich einen Teil der Programme sowie alle Daten jeweils vom
Server (was leider Vorgabe des Herstellers war sonst hätte ich Softw. lokal
und Daten serverseitig)
Zwei IDE Platten laufen als gespiegeltes Raid an einem PCI-Raid-Controller.
CPU und Ram sind zu 2-10 % genutzt wenn ich in TOP reinsehe.
Leider weiss ich nicht, wie ich die Last der Netwerkkarte überwachen
könnte...
>
...
>
> Sinnvoller wäre es, die langsamere Karte gegen eine schnellere zu
> tauschen und dann zu sehen, wie sich das auf die Performance auswirkt.
>
Vor dem Hintergrund der Hardware NIC10/100 - Switch 10/100 - Nic10/100
würde mich dabei noch interessieren, ob eine 1000/100/10 am alten Switch
dann überhaupt die Chance hat mehr performance zu leisten.
>
>
> Gruss
> Thomas
Gruss zurück
Michael
...
> Ansonsten würde ich auch mal die Karte checken und evtl. eine neuere
> verwenden und vor allem mal den Traffic untersuchen. Dein
> Performanceeinbruch muss nicht unbedingt an der Hardware liegen.
>
Frage:
wie kann ich den Traffic mal loggen lassen?
am besten in der Form Zeit Traffic gesamt Traffic/Client
und das mal über 2..3 Tage am Stück?
Grüße
Michael
> Thomas Günther wrote:
>
> > Am Mon, 22 Jun 2009 10:28:10 +0200
> > schrieb Michael Vogt <vogo...@web.de>:
[...]
> Der Gedanke war, zunächst einen einzelnen PC direkt auf die zweite
> Karte zu patchen um zu sehen ob eine solche 1:1 Anbindung einen
> deutlichen Gewinn bringen würde.
1:1 Verbindungen dürften schon deshalb performanter sein, da sich beide
Rechner nicht das Netzwerk mit anderen Rechner teilen. Wenn es dir
darum geht, herauszufinden, ob ein einzelner PC mit 1GBit-Verbindung
schneller ist, als ein einzelner PC mit 100MBit-Anbindung, wäre das
eine Massnahme (würde ich auch so oder zumindest ähnlich testen).
[...]
> Ich habe die Daten der Maschine nicht griffbereit :-/
> Der Server ist ca 4 Jahre alt.
> Aus dem Kopf weiss ich dass es eine onboard 10/100er Karte ist.
Ich meine mich zu erinnern, dass Onboard-NICs vor einigen Jahren eine
bescheidene Performance nachgesagt wurde. Ganz sicher bin ich mir dabei
aber nicht.
> Die NIC geht auf einen einfachen Switch der dann insg. 10 PCs
> versorgt. Diese laden sich einen Teil der Programme sowie alle Daten
> jeweils vom Server (was leider Vorgabe des Herstellers war sonst
> hätte ich Softw. lokal und Daten serverseitig)
Wenn viel zu laden ist und die Rechner ansich das leisten könnten, wäre
Gbit schon die bessere Wahl. Da sollte dann auch kein Realtek oder
sowas verbaut werden. Ich fahre hier mit Intel ganz gut.
> Zwei IDE Platten laufen als gespiegeltes Raid an einem
> PCI-Raid-Controller. CPU und Ram sind zu 2-10 % genutzt wenn ich in
> TOP reinsehe.
Wie siehts denn da mit der Geschwindigkeit der Zugriffe auf die Platten
aus, was sagt z.B. hdparm -tT /dev/<einzelne Festplatte> ?
> Leider weiss ich nicht, wie ich die Last der Netwerkkarte überwachen
> könnte...
Ich könnte dir 'iptotal' oder 'iftop' anbieten. Beide sind zumindest
unter diesen Namen als Pakete mindestens seit Debian Etch dabei,
vermutlich aber schon vorher. Vielleicht helfen sie dir.
> > Sinnvoller wäre es, die langsamere Karte gegen eine schnellere zu
> > tauschen und dann zu sehen, wie sich das auf die Performance
> > auswirkt.
> >
> Vor dem Hintergrund der Hardware NIC10/100 - Switch 10/100 - Nic10/100
> würde mich dabei noch interessieren, ob eine 1000/100/10 am alten
> Switch dann überhaupt die Chance hat mehr performance zu leisten.
Nicht wirklich. Aber ein Gigabit-Switch in Verbindung mit einer
GBit-NIC im Server kann zumindest gleichzeitig mehr leisten, d.h. also
wenn mehrere Clients gleichzeitig auf den Server zugreifen.
Die Kosten sind nicht so wahnsinnig gross, zumindest was die NICs
angeht. Was ein 12- oder 16-Port-GBit-Switch kostet, weiss ich nicht.
Was mir noch so nebenbei einfällt, evtl. ist auch einer der Ports am
Switch kaputt oder im Switch selbst ein Defekt vorhanden.
Gruss
Thomas
[...]
Also von all dem, was ich bis jetzt gelesen habe, vermute ich ganz
stark, das deine Festplatten, sowie der RAID-Controller einfach nicht
mehr I/O-Operationen verkraften.
Das Problem beim Zugriff von 10 Leuten gleichzeitig auf die Festplatte,
sinkt die Datenrate immens. Ich würde in ein neues, schnelleres
Dateisystem investieren. Vielleicht ein RAID-5 mit S-ATA-Platten.
Es muss nichtmal ein Hardware-RAID-controller sein, wenn die CPU
halbwegs potent ist. Das software-raid von Linux ist sehr zuverlässig.
Also ich würde es dahingehend umbauen.
was sagt denn TOP in der 'wait'-spalte? (5.-Spalte) ... wenn dein
Rechner ziemlich hohe WAIT-Raten hat, dann wartet (wer hätte es gedacht)
meistens auf das BUS-System, in deinem Fall wohl die Festplatten.
Gruß,
Steffen
1. Ursache ermitteln.
in Frage kommen
- CPU-Last (bei samba auch nicht ganz ohne) -> top
- Disk-IO (bei meheren, gleichzeitig aktiven Usern und Desktopplatten
eigentlich immer ein Problem) -> da reicht es das ohr an die Platten zu
legen
- Netzwerk -> mit 10MBit gehen 7-10MB/s in Summe, mit GBit geht mehr,
aber es hängt stark von allen beteiligten Komponenten ab.
Ferner wäre zu prüfen, ob die Langsamkeit vorrangig beim Kopieren
riesiger Files oder eher beim allgemeinen Zugriff, wie Verzeichnis
auflisten, Kleinkram Kopieren etc. auftritt. Bei ersterem kommen
Netzwerk und CPU in Betracht, bei zweiterem vorrangig die Platten.
> Daher würde ich gerne (zunächst probehalber) dem Server eine Gbit NIC
> verpassen und an diese dann mal einen der betroffenen PCs ranpatchen.
> Im Erfolgsfall würde ich das Lan dann auf die beiden Karten verteilen.
Viel spaß.
> Bevor ich das angehe, wollte ich daher hier fragen, ob ich in der smb.conf
> gesondert auf die neue Karte verweisen muss oder ob ich davon ausgehen kann,
> dass das System "automatisch" beide Karten nutzen wird.
Das wird mit SMB überhaupt nicht funktionieren. Ein Server eine
IP-Adresse. Lediglich, wenn man ein paar dutzend Clients hat, könnte man
die vom DNS auf die IP-Adressen verteilen lassen. Ist aber Unsinn, wenn
dahinter zweimal der gleiche Server steht. Außerdem interessiert das
vmtl. Windows-Clients nicht, da die im lokalen Netz nicht den DNS,
sondern den Browser-Dienst zur Namensauflösung nutzen.
Um Netzwerkkarten zu Parallelisieren braucht man
- zwei identische Karten,
- einen Treiber, der selbige virtualisiert und als eine logische Karte
dem Betriebssystem offeriert und
- einen Switch, der zwei Ports in gleicher weise Bündeln kann.
Falls das nicht zufällig alles rumsteht, ist ein komplett neuer,
leistungstarker Server die einfachere und vmtl. auch billigere Lösung.
> Dabei stellt sich mir noch eine Zusatzfrage:
> Der Server hat ja nur einen Namen im Netzwerk, mit zwei Karten aber 2 IPs.
> Was passiert wenn ich dann von einem Windooof-Client aus auf \\server\daten
> zugreifen will?
Es wird immer die IP genommen, die der Browser-Dienst hinter diesem
Namen hinterlegt hat. Jedenfalls wen beide im selben Subnetz liegen.
> Bzw. wie kann ich Clientseitig wählen über welche karte ich
> reinkomme?
- 1. zwei Servernamen.
- 2. zwei komplett unabhängige Netzsegmente und routing dazwischen. Dann
hängt es von der physischen Verkabelung oder bei VLAN von der
Konfiguration ab.
> Danke vorab für jeden guten Rat zur Tat.
Mein Rat wäre, die Faxen zu lassen, und erstmal nach dem Engpass zu suchen.
Aber der ist letztlich eigentlich schon klar, wenn ich mir das andere
Posting so ansehe. Es sind die Platten (wie fast immer). Mehr dazu dort.
Marcel
Michael Vogt wrote:
> Zwei IDE Platten laufen als gespiegeltes Raid an einem PCI-Raid-Controller.
> CPU und Ram sind zu 2-10 % genutzt wenn ich in TOP reinsehe.
Ich tippe auf die Platten.
Zwei Raptoren rein, und das Problem sollte Geschichte sein.
> Leider weiss ich nicht, wie ich die Last der Netwerkkarte überwachen
> könnte...
Zu einer kritischen Zeit, wo gerade wieder wenig geht ifconfig, Ein,
zwei Minuten warten und nochmal ifconfig. Dann die Differenz bei 'TX
bytes' ausrechnen und durch die Zeit Teilen. Wenn es weniger als 5MB/s
gibt, ist die Netzwerkkarte unschuldig.
[Ich setzte jetzt mal voraus dass keine groben Konfigurationsfehler, wie
Switch auf Full-Duplex und Karte auf Half-Duplex vorliegen. Das würde
man aber bei ifconfig an den Kollisionen sehen. Die sollten 0 sein.]
>> Sinnvoller wäre es, die langsamere Karte gegen eine schnellere zu
>> tauschen und dann zu sehen, wie sich das auf die Performance auswirkt.
>>
> Vor dem Hintergrund der Hardware NIC10/100 - Switch 10/100 - Nic10/100
> würde mich dabei noch interessieren, ob eine 1000/100/10 am alten Switch
> dann überhaupt die Chance hat mehr performance zu leisten.
Nö, aber ein Switch mit ein, zwei Gigabit Ports ist auch nicht teuer.
Wenn die Verkabelung natürlich raus muss, wird das nix.
Marcel
Kann dem auch nur zustimmen. Genau wie Marcel sagt, hol dir
Leistungsfähige Platten.
Kannst ja testen, wie sehr die Geschwindigkeit einbricht, wenn du nur
einen Benutzer versorgst und was passiert, wenn 2 oder mehr Benutzer auf
dein system zugreifen. einfach den io-Durchsatz anschauen
Steffen