Servervirtualisierung unter Windows

cuco

Moderator
Teammitglied
Registriert
1 Dez. 2011
Beiträge
7.178
Ich spiele mal wieder mit dem hypothetischen Gedanken, meinen Homeserver zur Workstation (und evtl. auch ein wenig zum Gaming) "umzubauen". Eigentlich gibt es gar nicht groß was umzubauen, denn Leistung besitzt er mehr als genug, maximal eine Grafikkarte käme noch in Frage, wenn Gaming auch eine Rolle spielt. Das Problem ist eigentlich immer die Software. Denn für mich kommt als Betriebssystem für eine Work- und Gamingstation nur Windows in Frage. Sich den ganzen Tag mit Virtualisierungen rumzuschlagen, um Spiele, Adobe Photoshop Lightroom oder Microsoft Office zu starten, ist nicht mein Ding. Da gibt es auch nichts dran zu rütteln - Hauptsystem mit Zugriff auf alle Ressourcen muss Windows sein in diesem Fall, wenn ich es denn umsetze.
Das Problem ist, dass der Dateiserver ein RAID6 per mdadm mit Verschlüsselung per LUKS/dm-crypt verwendet. Das lässt sich schwer auf Windows portieren ;) Auf einen Hardware-RAID-Controller möchte ich nicht setzen, obwohl ich sogar einen da hab.

In meinen Augen gibt es nur eine Lösung - Virtualisierung. Das habe ich sogar lange Zeit mit einer alten Version des Servers genau so gemacht. Windows Server 2008 (R2) als Hauptbetriebssystem, vmware Server zur Virtualisierung und darin zunächst ein Speziallinux für die Datenservergeschichte. Der Vorteil war: genau wie ich wollte, Windows als Hauptsystem, virtualisiertes Linux für den Datenserver.
Allerdings hatte ich einige Probleme:
- Festplatten ließen sich nur mit Tricks direkt in die virtuelle Maschine durchreichen. Nativ konnte vmware Server das nicht (mehr).
- Bei Ausfall einer HDD (und das kam vor), legte vmware Server mir das halbe System lahm, da es irgendwie nicht damit klar kam, dass Hardware für die virtuelle Maschine plötzlich fehlt. Damit bringt mir das RAID aber ja gar nichts mehr, wenn eh bei Ausfall einer HDD nichts mehr läuft.
- und die Performance hat immer wieder Probleme gemacht. Lese-/Schreibrate war immer sehr niedrig im Vergleich zu einem nativen Linux. Ein wenig geringer ist ja ok, aber es waren nur Bruchteile, die übrig blieben
- und als letztes: der Support für vmware Server 2 wurde eingestellt. Keine Erweiterungen mehr, keine Neuerungen, keine Bugfixes, kein gar nichts.

Daher bin ich derzeit halt nativ auf Ubuntu gewechselt, habe aber gleichzeitig den Workstation-Gedanken verworfen. Jetzt bin ich mal wieder am Überlegen. Das Windows ist nicht das Problem. Das Linux auch nicht. Problem ist die richtige Virtualisierung. Gibt es eine Virtualisierung, die folgendes erfüllt?
- performant (keine reine Softwareemulierung sondern Nutzen von VT-d/VT-x usw. - sollte aber quasi selbstverständlich sein)
- native Nutzung von HDDs möglich, keine Imagefiles auf den HDDs nötig
- möglichst keine Probleme, wenn nativ genutzte HDDs mal ausfallen
- Support noch nicht eingestellt
- "bezahlbar" (das schau ich mir dann im Detail an, erstmal zweitrangig)
- lauffähig auf einem nativ installierten Windows und in der Lage, Linux als Gastsystem zu nutzen
- weitere Features wie dynamische Speicherverwaltung uvm. sind zwar nett, aber kein muss. Schön wäre auch, wenn man virtuelle Maschinen automatisch beim Systemstart starten lassen kann wie, es bei vmware server der Fall war, ist aber auch nicht schlimm wenn das nicht der Fall ist.
... eben quasi eine Alternative (oder Nachfolger?) zu vmware Server 2.

Gibt es da was? Oder sollte ich den Workstation-Gedanken so ICH ihn vor habe, wieder einmal verwerfen?
 
Kann es sein, dass Hyper-V dies inzwischen alles bietet? Windows Server als Betriebssystem einzusetzen hatte ich eh überlegt und dank Dreamspark kostet es mich ja auch nichts...
 
Auch wenn ich hier jetzt Alleinunterhalter mache - es läuft noch nicht perfekt, aber HyperV kommt dem ziemlich nahe, was ich mir vorgestellt habe. Ich habe mit Hyper-V schon ein paar mal "gespielt" vor ein paar Jahren - aber da war das Ding noch nicht brauchbar. Aber jetzt, genial!
- performant ist es - ist ein "echter" Hypervisor :) Ich kann gerade in meinem Gastsystem keine (!) Geschwindigkeitseinschränkungen merken und messen gegenüber dem nativen Betrieb vorher
- native Nutzung von HDDs möglich
- muss allerdings nochmal schauen, wie sich der Hypervisor verhält, wenn eine HDD fehlt. Da war vmware Server dann nämlich plötzlich unbrauchbar.
- Support läuft besser denn je ;)
- bezahlbar ist er, da für mich kostenlos (wenn man NUR den Hypervisor einsetzt ohne Windows Server dahinter, ist er für alle kostenlos)
- läuft nativ auf Windows und kommt mit Windows und Linux Gästen klar, insbesondere mein Ubuntu als Gast läuft super :)
- dynamische Speicherverwaltung kann es zwar, derzeit aber nur mit Windows-Gästen. Für Linux kommts wohl noch. Ist aber ok so. Größtenteils läuft wohl nur die eine virtuelle Maschine, da ist es ok, wenn ich der den Speicher fest zuweise.
- virtuelle Maschinen werden automatisch beim Systemstart mitgestartet, wenn so konfiguriert

Probleme bisher noch:
- dynamische Speicherverwaltung ist unter Linux (noch) nicht funktionstüchtig
- als der ganze HDD-Controller weg war, hat auch HyperV Stress geschoben. Aber das ist ok. Wie es bei einzelnen HDDs ist, muss ich nochmal schauen. Wäre ja schön, wenn es dann weiter funktioniert.
- die Gasterweiterungen funktionieren noch nicht richtig. Und das ist derzeit noch wirklich sehr nervig :( HyperV meckert, ich solle die Gasterweiterungen aktualisieren. Aber für Ubuntu gibts keine Gasterweiterungen, angeblich soll auch alles inzwischen im Mainline-Kernel direkt schon enthalten sein. Ubuntu meldet mir auch, dass die entsprechenden Module geladen wurden und zum Teil funktionieren sie auch. Aber zum Teil nicht richtig. Die Netzwerkkarte läuft z.B. derzeit nur mit 10Mbit/s, was sehr doof ist, immerhin hatte ich sonst 1Gbit/s Zugriff aufs NAS und intern würde er die Geschwindigkeit auch weiterhin locker packen. Außerdem funktioniert das Herunterfahren per Gasterweiterung nicht richtig. Meist dauert es sehr sehr lange, bis sich die virtuelle Maschine dann abschaltet (mind. 30 Sekunden, eher ein paar Minuten), oft fährt sie auch gar nicht runter bzw. schaltet sich gar nicht aus, auch nicht nach vielen vielen Minuten. Das ist doof, da ein sauberes Herunterfahren und ein sauberer Neustart recht wichtig für mich ist, um Fernwartung zu betreiben und ganz besonders, wenn der Strom ausfällt und die USV den Befehl zum Herunterfahren gibt. Ich hoffe mal, es liegt wirklich nur an veralteten Gasterweiterungen im Linux-Kernel, die hoffentlich von Microsoft bald aktualisiert werden.
 
Zuletzt bearbeitet:
Wenn du es mit Spielen ernst meinst, wäre es nicht einfacher ein Dual Boot System aufzusetzen?

Könnte mir vorstellen, dass die Nutzer genervt sein könnten wenn der Server mal wieder lahmt weil du in ein heisses Gefecht verwickelt bist oder noch schlimmer du unnötig den Löffel abgibst weil der Server im Hintergrund am Anschlag gefordert wird?

Zum Glück sind die Zeiten vorbei, wo Spiele einen Rechner komplett abstürzen ließ aber trotzdem, ich wäre ganz schön sauer, wenn der Server mal wieder weg wäre weil dieser *** Administrator eine Runde Doom spielen musste und dabei der Rechner abgestürzt ist. :)
 
Zum Zocken auf HyperV brauchst du entweder einen HyperV Server mit entsprechendem Treiber für RemoteFX oder den vollen Server. Beides bedingt, dass du nicht auf der selben Maschine spielen kannst, da RemoteFX nur über RDP funktioniert. Kritischer ist da sogar noch der Client, da du mindestens Windows 7 Enterprise (Volumenlizenzkey) brauchst um RemoteFX überhaupt nutzen zu können.

Bezogen auf dein Szenario würde ich dir ganz klar Windows 8 empfehlen, da dieses den selben Hypervisor nutzt und bis auf die HA-Clusterbildung alle Features beherrscht wie auch die Server. Dafür ist es uneingeschränkt Spieletauglich und braucht kein Rumogern mit RDP.
 
Naja, die Ressourcenverteilung sollte sich gut hinbekommen lassen bei der Leistung die da drinsteckt. Theoretisch muss so gesehen außer der CPU quasi gar nix geteilt werden. Dual-Boot kommt nicht in Frage. Entweder da läuft nur der Serverteil hauptsächlich bestehend aus Fileserver drauf oder beides gleichzeitig. Da ich quasi der einzige Nutzer vom Gerät bin, sollten sich auch keine anderen beschweren ;) Na gut es laufen ein paar Serverdienste, auch Gameserver, aber bei denen ist es nicht so schlimm, wenn die mal laggen.

@qwali: Ich meine auch nicht den Bare-Metal-Hypervisor, sondern Hyper-V als Rolle unter Windows Server, aktuell Windows Server 2012. dann brauch ich kein RemoteFX oder sonstiges.
 
Falls du mit VMware liebäugelst, ich nutze VMware Workstation auf Linux und Windows Hosts.

Unter Linux Host ist es oft genug Glücksache ob man für den "Kernel of the Day" die notwndigen VMware Kernel Module gebacken bekommt. Manchmal klappt es nicht und man muss herumfrickeln oder Geld für eine neue Version in die Hand nehmen. Außerdem ist die Grafikunterstützung suboptimal. Mit dem VMware Grafiktreiber kommt Windows 7 z.B. am WINSAT nicht vorbei, sprich es gibt z.B. kein Aero.

Unter Windows Hosts hat man etwas mehr Glück aber ausgewachsene 3D Kracher habe ich nie in einer VM gespielt da man ja jedes Quäntchen mehr an Leistung immer gebrauchen kann.

Experimentiert habe ich auch mal mit ESXi aber das "nicht vertrauenserweckende Gehabe" trotz zertifizierter Hardware haben mich bewogen meine "berufliche Zukunft" nicht auf VMware zu setzen.
 
Also am ESX 7 geht Windows 7 sehr wohl mit Aero und auch mit Multi-Screen, hier zwar mit App-V und ähnlichem Zeug zusätzlich, aber es ist bei der Installation auch nativ gegangen.
 
Ich hab auch schon vor einiger Zeit mit so einigem experimentiert. Xen als Bare-Metal (Citrix XenServer und Oracle VM), Xen mit System "dahinter" (Suse Linux), VMware ESXi, Microsoft Hyper-V als Bare-Metal, Microsoft Hyper-V mit System dahinter (Windows Server 2008, Windows Server 2008 R2), VMware Server 2 und noch so einiges mehr.

Nicht hat mich "damals" zufrieden gestellt. Das große Problem bei den "echten" Hypervisors war, dass sie meist riesige Probleme mit Grafik und Grafikbeschleunigung hatten. Das hat sich inzwischen gebessert, ist aber immer noch mit Tricks usw. verbunden. Ich brauche aber ja nur ein Hauptsystem, dass vollen Zugriff auf die Hardware wie z.B. die Grafik hat - und der Rest braucht absolut keine Grafik. Daher will ich ein System (eben Windows) haben, welches absolut nativ läuft. Ohne Hypervisor, Emulierung, Virtualisierung oder sonstiges zwischen Hardware und diesem Windows. Die Gäste (vermutlich erstmal nur 1 Linux Gast) brauchen dagegen nur Direktzugriff auf die HDDs und sollten performant sein, Grafik ist mir dabei egal. Das hat damals bei meinen Tests kein System zuverlässig hinbekommen, lediglich VMware Server 2 war zu gebrauchen, das aber ja wie erwähnt eingestampft wurde. Nach aktuellem Stand erfüllt die Kombination aus Windows Server Betriebssystem (z.B. Server 2012) und dem neuen Hyper-V meine Ansprüche. Aber derzeit bekomme ich die Netzwerkkarte einfach nicht schneller als 10 Mbit/s :( Das ist derzeit das Hauptproblem und der einzige wirkliche Showstopper. Hyper-V meckert immer, dass die Gasterweiterungen/Integrationsdienste im verwendeten Linux-Kernel veraltet seien. Wo ich neuere herkriege (notfalls zum selbst kompilieren), hab ich bisher nicht gefunden.

VMware Workstation wäre vielleicht wirklich noch eine Idee. Kann man da HDDs durchschleifen bzw. nativ in der virtuellen Maschine nutzen? Beim VMware Server hat man es ja abgeschafft... Nachteil ist, dass das auf Desktop-Einsatz ausgelegt ist. Wenn mein Fileserver laufen soll, muss ich ihn immer manuell starten und das Fenster offen lassen, damit die Maschine auch weiterläuft. Vielleicht sollte ich mir das aber nochmal anschauen, wenn der Rest nicht klappt.
 
Zuletzt bearbeitet:
Ja, soweit war ich auch schon. Leider sind nur fertig kompilierte Versionen als rpm mit Installer für RHEL auf der CD. :( Kein Quellcode zum selbst kompilieren, keine Versionen für andere Systeme. Offensichtlich verlässt sich Microsoft hier zu sehr auf die Treiber, die sie dem Kernel-Image hinzugefügt haben. Dank veralteter Version hilft mir das aber wohl nicht weiter. Vielleicht sind sie im neuesten Kernel drin - dann muss ich mir aber wohl einen eigenen Kernel damit bauen oder die Treiber zurückportieren. Und von beidem hab ich absolut keine Ahnung.
 
Habe vorweg (also bevor ich angefangen habe, was selbst zu kompilieren) noch das hier gefunden: http://wiki.ubuntuusers.de/Mainline-Kernel
Damit habe ich zunächst den 3.5er Kernel aus Ubuntu 12.10 gegen den 3.6er Kernel ausgetauscht. Ergebnis: Das Herunterfahren klappt endlich sauber! Sowohl "ferngesteuert" aus Hyper-V als auch direkt aus der Maschine heraus. Die Netwerkkarte hat immer noch nur 10 Mbit/s :(
Dann hab ich Kernel 3.7 RC2 probiert. Herunterfahren/Neustarten aus der Maschine heraus klappt im Gegensatz zu 3.5 auch hervorragend. "Fernsteuerung" per Hyper-V klappt aber gar nicht und sorgt erst dafür, dass die Maschine nichts davon zu merken scheint, kurz später scheint sie dafür dann komplett zu hängen. Und Netzwerk hat immer noch nur 10Mbit/s, da Hyper-V nach dem Hochfahren der virtuellen Maschine immer noch meckert "Heruntergestuft. Ein Upgrade der Integrationsdienste ist erforderlich". Offensichtlich gibt es noch keine Netzwerktreiber - was sehr schade ist.
Werde nun erstmal Kernel 3.6 benutzen, ist immerhin derzeit der beste. Und dann mal schauen, ob ich noch eine Lösung für das Netzwerk finde.
 
kann man bei hyper-v auswählen, welcher nic emuliert werden soll?
 
Jein. Man hat nur die Wahl zwischen dem "alten" NIC, der wohl keine Treiber benötigt, aber maximal 10Mbit/s unterstützt (und bei mir überhaupt keine Verbindung bekommt) und dem neuen NIC, der Treiber benötigt und bei mir eben in HyperV immer automatisch als "runtergestuft" angezeigt wird, da die Integrationsdienste offensichtlich nicht neu genug sind im Linux-Kernel und dann auch nur noch 10Mbit/s erreicht. Aber keine weitere Auswahl, wo man z.B. 'nen E1000 emulieren könnte oder ähnliches.
 
Was hast Du eigentlich gegen Hardwareraids? Jetzt ausser, dass die schneller sind. Mir ist klar, dass nicht jeder eine DAS / MSA /WSS unter dem Schreibtisch aufstellen will, aber ein entsprechender G6 oder G7 Controller von HP (Sorry aber das können die mE besser, nur zum Spass verkaufen die nicht soviele Blades) passt auch in eine Workstation und bringt da doch einiges, vor allem wenn man ein Batterypack einbaut
 
1. Ich müsste noch einen weiteren Hardware-RAID Controller kaufen. Ich habe zwar momentan sogar einen im Einsatz, benutze ihn aber einfach nur als SATA/SAS-Controller ohne RAID-Funktion. Der wäre dann auch langsamer und voll belegt, ein Ausbau des RAIDs ist dann nicht mehr möglich und ist eigentlich dringend nötig. Das bedeutet dann aber auch wieder einen ordentlichen Berg an Kosten
2. In meinem Server sitzt potente Hardware (deswegen ja auch die Überlegung, das zur Workstation umzubauen). Wenn man dieser Hardware noch mehr Dienste abnimmt, langweilt sie sich ja noch mehr ;)
3. Ich persönlich finde die Möglichkeiten von mdadm unter Linux deutlich flexibler als die Möglichkeiten eines Hardware-RAID-Controllers. Auseinandergefallene RAIDs wieder zu assemblen, notfalls auch wenn sie nicht synchron sind, Chunksizes oder RAID-Level im laufenden Betrieb ändern, funktioniert direkt aus Linux heraus (keine Treiber für 'nen Controller, kein gar nix), vollkommen unabhängig von der Hardware wenn ich mal wieder (wie es oft vorkommt) am Basteln bin und Hardware oder Software austausche und vieles mehr.
4. Unabhängig vom Ausfall des Controllers - sonst brauche ich exakt den gleichen Controller wieder, was vielleicht auch in ein paar Jahren schwer wird, wenn ich auf andere Architekturen setze und er Controller nicht mehr dazu passt
und ganz wichtig: 5. Das RAID existiert ja schon als Software-RAID. Ich müsste erst einmal alle Daten "loswerden" und zwischenlagern, um das RAID neu einrichten zu können an einem Controller.

Einen HP G6/G7 Controller? Was genau meinst du? Ich finde bei Google dann Notebooks ^^ Eine BBU brauche ich auch nicht wirklich, habe schon ne USV. Gut, das Netzteil kann natürlich auch noch ausfallen. Aber ich will hier keine Hochverfügbarkeitslösung basteln ;)

Und ein Hardware-RAID ist schneller? Ich habe mal einige Benchmarks gemacht, bei mir war mdadm mit dem RAID 6 noch eine Ecke schneller, besonders bei Zugriffen mit vielen kleinen Dateien, als der Arecar ARC-1201-Hardware-RAID-Controller.

Und selbst wenn ich ein Hardware-RAID einsetze, kann ich immer noch kein LUKS nutzen ohne virtuelle Maschine - damit bin ich wieder am Anfang des Problems ;)
 
Ich dachte an Smart Array Controller, P822 zum Beispiel, fällt unter potente Hardware.
http://h18004.www1.hp.com/products/servers/proliantstorage/arraycontrollers/index.html
Abgesehen von den anderen Punkten, wenn Du heute Ersatzteile für steinalte HP G1 Server in der Bucht suchst gehts Dir besser als bei Thinkpad-Ersatzteilen. Das heißt was.

Diese Erfahrungen sind auch zukünftig anwendbar denke ich. Zum "Basteln" hat das Ding eh seine Onboard-Tools mit denen Du Hot-Spare, Raid-Level ändern, etc offen hast.
Das Batterypack des Controllers ist für dessen Write-Cache. Dessen Existenz wirkt sich unmittelbar und massivst auf die Perfomance aus.
http://www.ebay.de/itm/398648-001-3...ltDomain_0&hash=item19d53b970d#ht_1055wt_1082

Was die Plattform angeht, ich kenn jetzt nicht die Killerfeatures des LUKS.. iSCSI wirds nicht sein, oder?
 
800€ ist ne Stange Geld für 'nen zusätzlich anzuschaffenden Controller, wenn es die kostenlose Software (Linux/mdadm) mit der schon vorhandenen Hardware genau so schnell erledigen kann ;) Vor allen Dingen geht es um ein Datengrab mit Gbit-LAN Anschluss. Mehr als 100-120MB/s geht da nicht durch. Und ich komme jetzt trotz Verschlüsselung und Software-RAID schon auf >200MB/s. Bringt nichts, wenn es noch schneller wird.

iSCSI? Als Verschlüsselungs-Ersatz statt LUKS/dm-crypt? Hä? ^^
 
Ok. Falsch verstanden. Youngtimer wie 400er und 800er Controller sind "etwas" billiger als die neuesten Turbocontroller und können auch noch genug :) bei den Transferraten.

Wobei ich ehrlich nie einen Software-Raid-6 gesehen habe, ab Raid-4 war da immer Hardware im Spiel. Wenns Dir bei der Plattform nur um die Verschlüsselung der Volumes / Luns geht, da gibts doch genug Zeug, Bitlocker und Truecrypt-zum Beispiel.
An iSCSI dachte ich, weil ich mich gefragt habe, wie Du die Volumes entschlüsselt anbindest.
 
Zur Problemlösung kann ich nicht viel beitragen, möchte aber folgendes Aussagen aus meiner Erfahrung tätigen:
Der Kompatibilitäts-Netzwerktreiber von HyperV schafft 100mbit (auch real - gemessen etwas über 9MB/s mit FreeBSD). Ubuntu 12.04 braucht KEINEN Kompatibilitäts-NIC sondern funktioniert ohne Rumgemosche und Gebastel sofort mit dem "echten" HyperV-NIC. So nutze ich es und so schaff ich auch 90MB/s über LAN. Insofern wundert mich deine Aussage sehr :S
 
  • ok1.de
  • ok2.de
  • thinkstore24.de
  • Preiswerte-IT - Gebrauchte Lenovo Notebooks kaufen

Werbung

Zurück
Oben