Login
Login-Name Passwort


 
Newsletter
Werbung

So, 21. Mai 2006, 00:00

Projekt »Virtueller hochverfügbarer Linux-Server«, Teil 1: Planung

Dieser Artikel beschreibt ein Projekt, das den Bau eines Linux-Servers zum Ziel hat, der auf Dateiserver-Dienste und Virtualisierung optimiert ist. Daneben können auf ihm alle Dienste laufen, die ein Linux-Server anbieten kann. Weder Virtualisierung noch die Möglichkeit, zusätzliche Dienste zu starten, findet man auf handelsüblichen NAS-Servern für den SOHO-Bereich (Heimbereich und kleine Büros). Der Preis sollte nicht wesentlich über den im Handel erhältlichen Geräten liegen.

Vorwort

Für meine alternden Server/Dateiserver benötige ich allmählich Ersatz. Zur Zeit habe ich mehrere Server im Einsatz, die im Laufe der Zeit gewachsen sind. Mehrere davon sind jedoch schon wieder am Ende ihrer Plattenkapazität angelangt, und ein Verschieben von Daten zwischen den Servern ist auf Dauer zu umständlich.

Mein Hauptserver ist zudem sowohl für externe als auch für interne Zugriffe zuständig, was in Zukunft strikt getrennt sein sollte. Angesichts der Leistungsfähigkeit heutiger Rechner und der Möglichkeit, mittels Xen oder anderer Software mehrere virtuelle Server auf einem Rechner laufen zu lassen, schien es mir eine Überlegung wert, nach einem solchen System Ausschau zu halten.

Der Plan reift

Zunächst musste ich die Grundzüge des neuen Servers abstecken, also mir grob darüber klar werden, was ich eigentlich wollte. Nachdem ich mich schon ein wenig über die Hardware informiert hatte, wurde mit klar, dass ich mit dem neuen Server endlich auch die Chance hatte, meine Firewall auf ein neues Level zu heben, nämlich mit einer demilitarisierten Zone, in der der Server stehen würde, äußerem Router (mein DSL-Router) und innerem Router. Der innere Router ist aber nicht ganz so wichtig und kann auch entfallen, d.h. der NAS-Server könnte diese Funktion übernehmen.

Hardware

Die Erfahrung zeigt, dass für die Dateiserver die CPU-Leistung ziemlich irrelevant ist. Zwei meiner Server laufen mit 200-MHz-Pentiums und sind völlig ausreichend. Heutige Hardware besitzt ein Mehrfaches der Leistung, die für einen Server nötig ist. Warum also nicht alle Server konsolidieren und als virtuelle Maschinen auf einem Rechner laufen lassen?

Allerdings sollten Dateiserver-Dienste nicht alles sein. Auf meinem Server läuft so ziemlich alles, was nur vorstellbar ist - Email, IMAP, LDAP, Webserver, Datenbanken und so weiter. Insbesondere wenn man die Datenbanken mit hoher Leistung betreiben will, ist eine schnelle CPU und sehr viel RAM nötig.

Natürlich schaute ich mich ein wenig auf dem Markt um, ob ein fertiges System angeboten wird, das meinen Wünschen ungefähr entspricht. Datei- bzw. neumodisch NAS-Server gibt es auch fertig zu kaufen, doch meist nur mit einer Kapazität, die mir zu gering ist. Festplattenkapazitäten von einem Terabyte sind zwar erhältlich, aber nur vereinzelt. Zudem ist keines der handelsüblichen Geräte besonders flexibel. Virtualisierung unterstützt keines, manche bieten nicht einmal NFS an. Obwohl in vielen ein Linux-System läuft, ist dieses meist minimal gehalten und schwer zu ändern.

Auch die in den Servern eingebauten CPUs sagten mir nicht zu, da es sich meist um 32-Bit-CPUs handelt, die leistungsmäßig am unteren Ende rangieren. Für meine geplanten Datenbanken ist mehr Leistung und vor allem viel mehr RAM erforderlich. Zudem haben wir das Jahr 2006 und sind im 64-Bit-Zeitalter angekommen.

Eine weitere Anforderung war, dass das System leise sein muss. Da der Rechner im Arbeitszimmer stehen wird, muss er entsprechend ausgestattet sein, also eher aus dem Angebot für den Heimbereich stammen. Er muss nicht so leise sein wie ein Gerät, das man ins Wohnzimmer stellt, aber je leiser, desto besser. Ein Unternehmens-Serversystem kommt damit nicht in Frage, da dies in der Regel viel zu laut ist.

Software

Der Server soll ausschließlich freie Software einsetzen. Mit Xen 3.0 steht eine sehr leistungsfähige und freie Softwarelösung zur Verfügung, die es erlaubt, mehrere Linux-Kernel auf virtueller Hardware auszuführen. Neben Xen gibt es auch andere Virtualisierungs-Software. Welche die beste Lösung darstellt, muss sich in einem Vergleich zu einem späteren Zeitpunkt zeigen.

Beim Betriebssystem war klar, dass ich bei Debian bleiben würde. Ich wollte einfach nur die bestehenden Systeme klonen, den Kernel durch einen mit Xen-Unterstützung ersetzen und dann weitermachen, als wäre nichts geschehen.

Die Festplatten sollen mit dem Volume Manager LVM2 verwaltet werden. Mindestens vier Platten sollen in einer RAID5-Konfiguration laufen. Da LVM noch kein RAID5 direkt unterstützt, muss zusätzlich ein noch etwas experimenteller Patch oder der Software-RAID-Treiber (md) zum Einsatz kommen. Zwecks Optimierung der Leistung werde ich mir auch Gedanken zum verwendeten Dateisystem machen müssen.

Mindestanforderungen

Den Wunschrechner selbst zu bauen, erschien mir aufgrund der obigen Überlegungen als die beste Alternative. Ausgehend von den aktuellen Festplattengrößen stellte ich folgende Mindestanforderungen an das System:

CPU64 Bit, Upgrade auf Dual/Quad-Core möglich
SATASATA-2, vier interne Anschlüsse
Festplattenmin. 4 x 250 GB (750 GB netto)
RAMBis 4 GB ausbaubar, ECC
USBUSB 2.0
EthernetGigabit-Ethernet on Board
Grafikon Board
GeräuschSehr leise
StromverbrauchModerat

Hardware

Es gibt eine Fülle von Optionen, besonders bei der CPU, welche sich wiederum auf das Board und das RAM auswirken. Nach kurzem Stöbern bei den Boards kam ich auf die Idee, nach einem Barebone zu suchen. Es dauerte nicht lange, und ich entdeckte ein vermeintlich ideales System: das ASUS Vintage-AH1, das für ca. 110 EUR zu haben ist. Echte Server-Barebones sind ein Mehrfaches teurer, aber Server-Hardware habe ich in den Vorüberlegungen bereits ausgeschlossen.

Das Board im ASUS Vintage-AH1 besitzt keine GBit-Netzwerkschnittstelle, so dass eine zusätzliche Karte für mich nötig wäre. Ich benötige aber sowieso evtl. zwei Netzwerkschnittstellen in dem Rechner. Ferner ist mir nicht klar, ob der integrierte SATA-Controller SATA-II unterstützt. Dies dürfte aber in der Praxis gleichgültig sein.

CPU

Mit dem ASUS-System ist bereits die Wahl auf eine AMD-CPU (Sockel 939) gefallen. Es kann sogar eine Dual-Core-CPU aufnehmen, aber bei Preisen von ca. 300 EUR aufwärts gegenüber 100 EUR für eine ausreichend schnelle 3000+-CPU scheint es mir am sinnvollsten, die billigste CPU zu nehmen, zumal für die Zukunft dann hochinteressante Aufrüst-Optionen bereitstehen. Zum Beispiel auf eine Dual-Core-CPU mit 2x1 MB Cache (Toledo-Kern), die derzeit noch etwas teuer ist. Wenn die Aufrüstung ansteht, werden dann auch die Virtualisierungs-Erweiterungen (Pacifica) verfügbar sein, und wer weiß, vielleicht gibt es dann bereits CPUs mit vier oder acht Cores. Dumm nur, dass AMD gerade angekündigt hat, dass neuere CPUs den neuen Sockel AM2 und nicht mehr den Sockel 939 verwenden, der damit zum Auslaufmodell wird.

Kommentare (Insgesamt: 0 || Kommentieren )
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung