[OT] Hardware SATA Portmultiplier + Ubuntu
Peter Jakobi
jakobi at acm.org
Son Jan 13 12:25:43 GMT 2008
On Sun, Jan 13, 2008 at 09:51:42AM +0100, Michael Windelen wrote:
> Hallo Liste,
>
...
> gerne an meinen DC-300e (von Dawicontrol) einen Portmultiplier hängen um
> Ihn von 2 auf 6 Platten zu erweitern. Die zwei Platten die daran hängen
> sind Mitglied in einem Softraid Level 5.
Raid*5* mit *2* Platten!?
> Habe ich mit irgendwelchen Problemen unter Linux mit Portmultipliern zu
> rechnen? Wird die Performance stark einknicken (nicht so relevant da der
> Platz "nur" zur Datensicherung gebraucht wird)? Kann man einfach jeden
> beliebigen Portmultiplier benutzen?
0. Vorab aber: Wieso einen Portmultiplier und einen Ansatz, der nach
JBOD riecht _fuer_ _ein_ _RAID_, statt eine Enclosure, die mehrere
Platten als eine einzelne SATA-Platte exportiert?
1. Es kaeme auf den Versuch an, wie der Kernel skaliert, bei massiv
parallelen gleichzeitigen Zugriffen durch den Raid-Layer unter hoher
Last (zB Raid-Repair).
2. Im Nicht-Raid JBOD Betrieb merke ich mit einem custom 2.6.19-rc1
mit dem damaligen experimentellen SATA-Multiplier-Support von Tejun
unter Centos 4.5 keine Probleme, und die S-ATA Platten sind schneller
im Zugriff als die P-ATA Platten, selbst wenn Quelle und Ziel ueber
den Multiplier gehen. Etwaige Bugs, Korruption, logs: nichts
dergleichen bemerkt. Natuerlich waere ein Software-Raid ein etwas
gruendlicherer Test fuer den Treiber als meine Nutzungsart.
Die Hardware: RAID bus controller: Silicon Image, Inc. SiI 3124 PCI-X
Serial ATA, lauft als PCI Karte mit einem P III auf einem alten ASUS
P2B, mit einem Intel 82545GM Gigabit Ethernet Pro/1000 MT, der
tatsaechlich auch der CPU bei hoher Netzlast noch einige Zyclen
ueberlaesst, im Gegensatz zu den normalen CPU-Killer Netzwerkkarten a
la Real-Tek.
Unter richtiger Last merkt man aber schon, dass ich hier die
Flaschenhaelse PCI Bus, CPU und Ram so ausbalanciert habe, dass sie
alle 3 zugleich zuschlagen, weit vor etwaigen Flaschenhaelsen in
Kernel, SATA oder Pro/1000MT Karten, die Dich eher interessieren
wuerden :>.
Aussage also nur: Es geht problemlos unter maessiger Last / JBOD, ev.
aber nur mit obsoletem Custom Kernel des Multipliers wegen. Wie sehr
und welche Performance-Flaschenhaelse ein reines Software-Raid auf
moderner HW zB beim Restaurieren einer Platte nach Austausch in Kernel
und Silicon triggert, ist mit obiger gemaechlicher Konfiguration nicht
testbar/vorhersagbar.
3. Kernel Status (damals zumindest):
Der 2.6.19-rc1 Kernel stammt aus dem GIT des Entwicklers Tejun Heo
selbst (September 06?, war das aktuellste, was ich Anfang 07 fand);
das Rebasing war unmoeglich, weil keiner von denen, die auf der LKML
prahlten, es vorwaerts portiert zu haben, es zustande brachte, seinen
Versions- und Patchstand zu beschreiben.
Keine Ahnung, ob der Patch schon im offiziellen Kernel ist, und
inwieweit andernfalls Tejun an Patch auf aktuellere Versionen
vorwaertsportiert hat.
Bzgl. Dawi-Control: Ich habe mich AUSSCHLIESSLICH auf die Sil
Portmultiplier konzentriert, weil das die einzigen waren, die damals
geruechteweise vernuenftig mit Portmultiplier-SATA-JBOD-Enclosures
einzusetzen waren. Dawi soll den SiI3132 haben. Sollte also klappen,
wenn er dem 3124 vergleichbares Verhalten zeigt. Ggf. Spezifikation
der Chips pruefen oder Rueckgabemoeglichkeit vereinbaren.
--> Also seh Dir die aktuellen Kernelsource zB von ubuntu 7/10 oder
8/04-to-be an, das relevante Modul ist sata_sil24 von Tejun Heo. Ich
hatte im Februar mir einen Stand September(?) 06 2.6.19rc1 Kernel aus
Heo's git libata-tj gebacken, der relevante Branch heisst pmp. Im
worst-case koenntest Du den ausgepackten Stand aus dem git von mir als
tarball bekommen und fuer core2/64bit uebersetzen.
Wenn's schiefgeht, hat er glaube ich damals nur die 1. und 3. Platte
gesehen; mit laufendem Multiplier-Driver im Kernel dann alle 5 im
JBOD, wenn auch die Reihenfolge der physischen Einschuebe zu den
Devices etwas umsortiert wird (was aber auch eine Unart der Enclosure
sein kann).
--
cu
Peter
jakobi at acm.org