Seit Beginn meiner Arbeiten an dem Projekt Microblaze References suche ich zur Absicherung der Entwicklungsergebnisse nach einer kostengünstigen Lösung für eine virtualisierte Compiler-Farm. Die verschiedenen virtuellen Entwicklungsumgebungen bilden die Grundlage der Kontinuierlichen Integration und sichern diesen Prozess zuverlässig ab. Die Virtualisierung spielt hierbei eine entscheidende Rolle in Bezug auf Flexibilität und Ausbaufähigkeit in noch unbekannter Zukunft. Ferner kann Virtualisierung dabei helfen, sich weitestgehend von realer Hardware zu trennen und die Handhabbarkeit von Softwarequellen definitiv zu garantieren.
Nach einigen ersten Versuchen auf einem bestehenden ESX Server und einer VirtualBox Umgebung auf dem Desktop habe ich mich nun für den Aufbau eines eigenständigen Servers speziell für die Virtualisierung entschieden. Warum? Das ist ganz einfach:
Im Ergebnis blieben nur zwei ernst zu nehmende Technologien aus der Open Source Gemeinde übrig: Xen und qemu/KVM. Nach dem Studium diverser Fachbeiträge in Zeitschriften, Onlineforen und Blogs habe ich Xen wegen unzureichender Dokumentationslage und einem zu geringen Anwenderkreis nicht mehr weiter betrachtet und einen ersten Gehversuch mit Qemu/KVM auf einem dedizierten Standard PC unternommen – vorweg genommen mit bisher recht erfreulichen Resultaten, denn es funktioniert prinzipiell Out-of-the-Box.
Im ersten Schritt sammelte ich mir Standardkomponenten diverser ausgedienter PCs zusammen, um mit Hilfe der (noch) aktuellen Ubuntu 10.04 LTS Distribution eine KVM Infrastruktur aufzubauen. Das sind im einzelnen:
Hersteller | Bezeichnung | Kosten | |
---|---|---|---|
Motherboard | Gigabyte | GA-965P-DS3 Rev. 3.3 | 15,00 € |
CPU | Intel | Core 2 Quad mit VT-d (Q9550) | 185,00 € |
Kühlung | Scythe | Ninia Mini (evtl.f. Overclock) | 15,00 € |
Speicher (neu) | Geil | 4x2GB Kit (GE24GB800C4DC) | 140,00 € |
Festplatte | Samsung | Spinpoint F1DT 750GB (HD753LJ) | 40,00 € |
Gehäuse (neu) | MS-Tech | ATX mit 400W Natzteil (LC-09B) | 35,00 € |
DVD Brenner | LiteOn | mit IDE Anschluss (iHAP122) | 25,00 € |
gesamt: | 455,00 € |
Nun mag man sich an dem Preis von nahezu 500 € für ein Auslaufmodell wie den Intel Core2 stören, aber der Zukauf von neuem Speicher bis zum Komplettausbau von maximal 8 GB und der Einbau einer Leistungsstarken 4 Kern-CPU mit geringer Verlustleistung ohne Anschaffung eines neuen Motherboards waren für mich wichtige Kriterien. Nach einem Wochenende Bastelarbeit konnte das System mit Software bestückt werden:
sudo apt-get update sudo apt-get upgrade sudo apt-get dist-upgrade
sudo apt-get install qemu-kvm
sudo apt-get install virt-manager
Alles in allem funktioniert diese KVM Box mit Standard PC Komponenten tadellos. Kenner werden aber schon gemerkt haben, dass dem System eine entscheidende Komponente fehlt. Diese Erkenntnis musste ich im Verlauf der ersten zwei Wochen schmerzlich selber erlangen. Der Weg über die Standardkomponenten führt zwar sehr schnell und preiswert zu einer brauchbaren Hardware, aber eine hochperformante Virtualisierung mehrerer Systeme gleichzeitig geht damit nicht abzubilden.
Ohne Lastverteilung auf mehrere Festplatten mit Hilfe eines RAID ergibt sich wie im vorliegenden Aufbau ein Engpass im Datendurchsatz zur Festplatte. Prinzip bedingt teilen sich alle virtualisierten Maschinen am Ende in der realen Hardware nur eine Festplatte. Das bedeutet, dass sich das gesamte Datenaufkommen aus mehreren Maschinen dort „hindurchquetschen“ muss.
Im hier geschilderten Fall kommt noch hinzu, dass das verwendete Motherboard nicht für einen Serverbetrieb mit hohem Datendurchsatz gedacht ist und dieser somit, bedingt durch den Chipset, nicht üppig ist. Kurzum, nach meinen Messungen erreiche der alte P965 Chipset (ICH8) mit genannter Festplatte gerade mal 40-60 MB/sec – das entspricht in etwa einem unterdurchschnittlichem Ethernet Anschluss, aber nicht einer modernen SATA Festplatte. Bereits ein durch das BIOS gestützter SoftRAID-Verbund des moderneren Intel X58 Chipset (ICH10) schafft bei einer RAID5 Konfiguration mit 4 Platten nahezu 170MB/sec.
Einzige Lösung des Duschsatzproblems ist die Anschaffung eines richtigen RAID Controllers und der Ausbau auf ein RAID10 oder als Kompromiss RAID5. Nach Sichtung diverser Foren und Veröffentlichung könnte hier ein eigenständiger RAID Controller von 3ware2) zum Einsatz kommen:
Kosten | ||||
---|---|---|---|---|
Hersteller | Bezeichnung | bei Alternate | bei Mindfactory | |
Controller | LSI/3ware | 9650SE-4LPML | 270,00 € 3) | |
gesamt: | 399,00 € | 396,00 € |
In Frage kommende Festplatten für RAID Dauerbetrieb (24/7):
64 MB 7200 U/min | Kosten | |||||||
---|---|---|---|---|---|---|---|---|
Hersteller | Bezeichnung | bei Alternate | bei Mindfactory | |||||
500 GB | Western Digital | WD5003ABYX | 115,00 € | 3x | 345,00 € | 100,00 € | 3x | 300,00 € |
1000 GB | Western Digital | WD1003FBYX | 155,00 € | 3x | 465,00 € | 140,00 € | 3x | 420,00 € |
— Stephan Linz 2012/03/17 16:04 Ich habe mir für ca. 400,00 € bei eBay einen 3ware RAID Controller samt 4x 2GB Festplatten von Western Digital ersteigert, wie ich denke ein fairer Preis. Genaueres folgt an dieser Stelle …
— Stephan Linz 2012/03/23 20:48 Ein erster Test mit dem neuen RAID Controller bestätigt meine Behauptung zum Thema Durchsatz auf die Festplatten. Mit der neuen Errungenschaft komme ich nun auf etwa 170 MB/sec.
— Stephan Linz 2012/03/24 00:12 So, Ubuntu 10.04.4 LTS ist installiert – Out-of-the-Box, ohne weitere Treiber von irgendwelchen zusätzlichen Medien nutzen zu müssen. Das Leben kann so schön sein. Nun werde ich mir noch die Administrationswerkzeuge von 3ware aufsetzen. Das hier scheint der richtige Einstieg zu sein …