So, nach einigen Tagen Bastelarbeit möchte ich euch nun meinen Heimserver präsentieren.
Bitte verzeiht die schlechte Qualität der Bilder, ich hatte nur meine Handykamera parat.
Hardware
Intel® Core™ i3-2100
Asrock H67M
Kingston SSDNow S100 2,5" SSD 16 GB
Corsair XMS3 DIMM 8 GB DDR3-1333 Kit
4x Western Digital WD20EARX 2 TB im Softwareraid 5
be quiet! Straight Power E8 500W
Coolermaster 690II
Betriebssystem
Debian Squeeze
Softwareraid mittels mdadm
Benchmark mittels tiobench
Wenn jemand einen Vorschlag für ein besseres Benchmarktool für die Shell hat, bitte her damit! Die Daten sind irgendwie nicht ganz überzeugend.
Unit information
================
File size = megabytes
Blk Size = bytes
Rate = megabytes per second
CPU% = percentage of CPU used during the test
Latency = milliseconds
Lat% = percent of requests that took longer than X seconds
CPU Eff = Rate divided by CPU% - throughput per cpu load
Sequential Reads
File Blk Num Avg Maximum Lat% Lat% CPU
Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
2.6.32-5-amd64 2000 4096 1 ###### 99.07% 0.001 0.02 0.00000 0.00000 6756
2.6.32-5-amd64 2000 4096 2 742.50 27.62% 0.010 2506.80 0.00039 0.00000 2688
2.6.32-5-amd64 2000 4096 4 ###### 165.6% 0.011 1261.92 0.00000 0.00000 856
2.6.32-5-amd64 2000 4096 8 ###### 3059.% 0.002 16.02 0.00000 0.00000 436
Random Reads
File Blk Num Avg Maximum Lat% Lat% CPU
Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
2.6.32-5-amd64 2000 4096 1 ###### 119.4% 0.001 0.01 0.00000 0.00000 3906
2.6.32-5-amd64 2000 4096 2 ###### 864.8% 0.001 0.01 0.00000 0.00000 977
2.6.32-5-amd64 2000 4096 4 ###### 0% 0.001 0.01 0.00000 0.00000 0
2.6.32-5-amd64 2000 4096 8 ###### 2264.% 0.001 0.01 0.00000 0.00000 434
Sequential Writes
File Blk Num Avg Maximum Lat% Lat% CPU
Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
2.6.32-5-amd64 2000 4096 1 63.59 7.631% 0.040 9665.32 0.00039 0.00000 833
2.6.32-5-amd64 2000 4096 2 37.33 11.63% 0.193 21322.84 0.00313 0.00039 321
2.6.32-5-amd64 2000 4096 4 42.60 38.24% 0.174 3492.16 0.00098 0.00000 111
2.6.32-5-amd64 2000 4096 8 30.47 57.44% 0.280 11567.75 0.00195 0.00020 53
Random Writes
File Blk Num Avg Maximum Lat% Lat% CPU
Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
2.6.32-5-amd64 2000 4096 1 1.38 0.211% 0.002 0.01 0.00000 0.00000 651
2.6.32-5-amd64 2000 4096 2 1.27 0.389% 0.002 0.02 0.00000 0.00000 326
2.6.32-5-amd64 2000 4096 4 0.97 0% 0.003 0.08 0.00000 0.00000 0
2.6.32-5-amd64 2000 4096 8 1.04 1.486% 0.004 2.64 0.00000 0.00000 70
Erfahrungen
Da es sich hierbei um ein kleines Ferienprojekt handelt, in dem es hauptsächlich um Learning-by-Doing geht, ist das alles hier noch nicht der Weisheit letzter Schluss
Erste Probleme gab es beim Zusammenbau bzw. im ersten Testdurchlauf, da ein Metallstück einer nicht ganz sauberen Bohrung am Gehäuse mal kurzerhand das Mainboard kurzgeschlossen hat.
Glücklicherweise hab ich den Fehler schnell gefunden und die Hardware hat nichts abbekommen (zumindest nichts, was sich bis jetzt gezeigt hätte).
Debian wurde mittels USB-Stick und Netinstaller auf die SSD installiert.
Das Aufsetzen des Softwareraids mit mdadm war eigentlich gar kein Problem und ging selbst mit meinen geringen Kenntnissen recht schnell (manpage sei Dank).
Auch die Verschlüsselung mittels Luks und das anschließende Formatieren mit ext3 (mehr aus Gewohnheit als aus anderen Gründen) ging einfach von der Hand.
Schwieriger wurde es dann beim Startskript, welches das Raid noch vor der Anmeldung durch den User das PW abfragt und als /home mounted.
Das hatte ich bis dato noch nie gemacht und lief gemäß Try 'n Error und einigen Stunden googlen.
Momentan bin ich dabei mit stripe_cache_size die Geschwindigkeit des Raids noch zu optimieren.
Aktuell bekomme ich beim Kopieren per smb-Protokoll nur 33,5 MB/s. Es könnte aber auch an der Festplatte im Hauptrechner liegen, zumindest blinken die Lämpchen am Switch nicht kontinuierlich und die Festplatten-LED am Server scheint sich auch ab und zu zu langweilen, was sie beim Formatieren nicht getan hat. Des Weiteren gibt Tiobench auch 63 MB/s für einen File an (ich hoffe ich lese das richtig aus).
Ich hab leider noch kein Tool gefunden, was mir die Temperaturen ausgeben kann, lm-sensors unterstützt das System nicht. Wenn auch hier jemand einen Tip hätte, wäre ich sehr dankbar.
Laut htop ist der average load-Wert für 15 Minuten beim Kopieren 0,16 die Ramauslastung beträgt aktuell ~750MB (33,5 MB/s). Dabei laufen auf dem System momentan nur ein Samba- und ein SSH-Server.
Ausblick
Sobald ich die maximale Performance für das Raid ausgelotet habe, wird es wahrscheinlich daran gehen die File-Synchronisation zu organisieren.
Momentan hab ich da Unison im Auge, aber da muss ich mich erstmal genauer einlesen. Dann brauch ich noch einen UPnP-AV-Server für den Streamer im Netzwerk (mediatomb?!).
Zu guter letzt dann noch eine VM für Spielereien mit der Außenwelt: ftp, postfix, apache, TS... und was es sich noch so zu beherrschen lohnt
.
In diesem Sinne