[Kaufberatung] Server für Virtualisierung mit KVM oder Xen

tillmo

Neuling
Thread Starter
Mitglied seit
07.10.2011
Beiträge
8
Hallo,

für ein Community-Projekt möchte ich einen oder mehrere Server anschaffen, auf denen virtuelle Maschinen mit KVM oder Xen laufen. Die VMs sind einerseits festplattenintensive Batch-Prozesse, andererseits virtualisierte Desktops, auf die über vnc zugegriffen wird. D.h. Durchgriff auf Grafikkarte etc. ist nicht so wichtig, schnelle Festplattenzugriffe aber schon.

Zwei Fragen:

1. Ist dafür VT-x ausreichend, oder sollte es VT-d sein?

2. Ist es eher empfehlenswert, einen großen oder mehrere kleine Server zu kaufen?

Gruß, tillmo

P.S.

Zum Budget: "Mehrere kleinere Server" heißt z.B. 3x um die 600,-, z.B. Lenovo ThinkServer TS130 SUT1GGE, Intel Xeon E3-1225 oder i3-2120, aufgerüstet 16 GB RAM. "Ein großer Server" für gut 1500,-, z.B. Intel i7-960 oder AMD Phenom II Hexacore, mit 48GB RAM
 
Zuletzt bearbeitet:
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
Hallo tillmo,

erstmal solltest du uns genauere Infos über deinen Preisrahmen geben. Es würde auch noch unheimlich helfen, wenn du beschreiben könntest was du dir als "Server" vorstellst. Desktop HW oder Server HW?. Wo steht der Server?

Wie viele Clients sollen dann arbeiten können?

In deinem fall würde ich auf SAS Festplatten setzen, da diese preiswerter als MLC SSDs sind aber im Raid noch ausreichend Performance bieten.

Zu deinen Fragen:

1. Vt-x reicht für Virtualisierung aus, Vt-d bringt eben die Durchschleifung von Schnittstellen mit sich. Ist abhängig von CPU und Chipsatz und damit auch vom Preis. Generell sollte man beides haben ;)

2. Ich würde lieber auf mehrere Server setzen, da im falle eines Ausfalls nicht alles steht.

mfg

mogel
 
Hi mogel,

erstmal solltest du uns genauere Infos über deinen Preisrahmen geben. Es würde auch noch unheimlich helfen, wenn du beschreiben könntest was du dir als "Server" vorstellst. Desktop HW oder Server HW?. Wo steht der Server?
mogel

Es sollte möglichst Server-HW sein, Preisrahmen so ca. 1500 Euro. Für die Aufstellung könenn wir einen Serverraum mitnutzen.

Wie viele Clients sollen dann arbeiten können?
mogel

10-15

1. Vt-x reicht für Virtualisierung aus, Vt-d bringt eben die Durchschleifung von Schnittstellen mit sich. Ist abhängig von CPU und Chipsatz und damit auch vom Preis. Generell sollte man beides haben ;)
mogel

D.h. VT-d bringt auch einen Vorteil bzgl. RAM- und Festplattenzugriffen? Grafik oder sonstige IO ist nämlich nicht so entscheidend.

Gruß, tillmo
 
Hier mal eine mögliche Konfiguration einen kleinen Servers, die knapp 500,- Euro kostet (davon könnten dann also mehrere beschafft werden):

AMD Phenom II X6 1055T Boxed, OPGA, "Thuban"
Asrock M3A UCC, Sound, G-LAN, SATA2-RAID
Samsung HD204UI 2 TB, SATA 300, Spinpoint F4 EcoGreen
4x Kingston ValueRAM DIMM 4 GB DDR3-1333
EVGA G210 Passiv, NVIDIA GeForce 210, 512 MB, Bus 64 Bit

Ist das für die Aufgabe empfehlenswert?

Gruß tillmo
 
Davon ist aber doch garnichts Server Hardware? Interessant wäre evtl auch bei mehreren Servern kleine HP Proliant ML110 G6 oder G7 - da liegst du teilweise unter 500€ mit nem quadcore Xeon.

Ich würde aber eher zu einem Server tendieren statt zu drei... Wieviel plattenplatz brauchst du denn?
 
Davon ist aber doch garnichts Server Hardware?
Das stimmt, aber mit der kleinen Lösung wollte ich ja bei 500,- Euro bleiben, und da habe ich nichts mit Server-Hardware gefunden

Interessant wäre evtl auch bei mehreren Servern kleine HP Proliant ML110 G6 oder G7 - da liegst du teilweise unter 500€ mit nem quadcore Xeon.
Stimmt, das ist ein interessanter Tip! Ich habe ein Angebot für 320,- Euro gesehen. 16MB RAM müsste ich noch hinzukaufen, dann liege ich mit 4x Kingston 4GB 1333MHz DDR3 Non-ECC CL9 DIMM bei 400,-. Das ist wirklich unschlagbar! Festplatte ist allerdings nur 250GB, mit 2TB wären wir dann wieder bei rund 500,- Dennoch: es ist ja Server-Hardware, und schon zusammengebaut (mein anderes 500,- Euro-Angebot war Desktop-Hardware zum selbst zusammenbauen).

Diese günstigen Modelle haben allerdings alle einen G6950 (ohne VT-d), die mit einen Xeon E3-1220 oder X3430 (mit VT-d) kosten dann rund 100,- mehr. Lohnt sich die Investition?

Ich würde aber eher zu einem Server tendieren statt zu drei...

Das Problem ist ja, dass viele VMs und Batchprozesse parallel laufen. Drei Server haben 12 Kerne, die auch parallel auf 3 Festplatten zugreifen können. Kann ein großer Server mit 4 (oder 6 bei AMD) Kernen wirklich gleich schnell sein? Müsste dann ja 3x so schnell sein wie ein einzelner kleiner Server.

Edit: Ich sollte auch erwähnen, dass wir schon einen "großen" Server mit einem i7 920, 24 GB RAM und 6TB Platten haben, es geht jetzt also nur um die Erweiterung.

Wieviel plattenplatz brauchst du denn?
Wir haben derzeit 1,3TB an Images für die virtuellen Maschinen, Tendenz steigend. Mit 2TB Festplatte wären die sofort verfügbar. Bei 250GB müsste man dann die häufig nachgefragten cachen und die weniger nachgefragten übers interne Netz (Gigabit) holen, das dauert bei einem durchschnittlichen Image von 2GB schon ca. eine halbe Minute.

Gruß tillmo
 
Zuletzt bearbeitet:
Bei einem großen kannst du aber einen mit hyperthreading nehmen und hättest dann zumindest 8 threads...

Beim RAM für die Proliant musst du ECC nehmen, guck am besten mal in das Kingston kompatibilitätstool auf deren Homepage. (ich Verkauf übrigens gerade noch einen mit x3430 in meinem verkaufsthread, da ist auch noch die Remote-KVM Funktion dabei ;) bei Interesse meld dich per pn)

Wenn du lieber die einzelnen nehmen möchtest ist das durchaus ok, wenn stromverbrauch, anzahl der uplinks und Platz keine Rolle spielen weil ihr eh irgendwo eure Sachen "mit" unterstellt sowieso
 
Bei einem großen kannst du aber einen mit hyperthreading nehmen und hättest dann zumindest 8 threads...

Stimmt. Ich habe sogar für knapp 700,- Euro (bzw. 850,- bei Aufrüstung auf 16GB RAM und 2 TB Festplatte) einen mit 8 Threads gefunden: Lenovo ThinkServer TS130 TS / E3-1235 / 4GB DDR3-1333 / 2x500GB SATA HD / SATA RAID 0/1 RAID 1 / DVD-Brenner / LAN. Außerdem hat der VT-d. Das ist dann wohl doch das bessere Preis-/Leistungsverhältnis, zumal der Serveraufstellplatz auch nicht unbegrenzt ist... (falls wir nochmal erweitern wollen).

Die 2TB Festplatte sollte wohl 7200 rpm haben, ist SATA-600 auch wichtig, oder reicht SATA-300 ? Ist da sonst noch was zu beachten?

Beim RAM für die Proliant musst du ECC nehmen, guck am besten mal in das Kingston kompatibilitätstool auf deren Homepage.
Stimmt, da bin ich etwas naiv rangegangen. Die Kingston-Speichersuche für Lenovo ThinkServer TS130 spuckt aus "KTL-TS313E/4G 4GB 1333MHz ECC Module".
Ich habe in einem online-Shop gefunden: "KINGSTON 4GB DDR3 1333MHz ECC CL9 with Thermal Sensor". Ich hoffe mal, das passt dann?

(ich Verkauf übrigens gerade noch einen mit x3430 in meinem verkaufsthread, da ist auch noch die Remote-KVM Funktion dabei ;) bei Interesse meld dich per pn)

Gerne, aber jetzt geht es ja doch um einen größeren Server. Nun komme ich in deinen Verkaufsthread leider nicht rein, das System meldet, ich hätte eine verbotene Aktion gemacht...
 
10-15 Clients? Meinst du damit VMs oder Nutzer, die darauf zugreifen? Wieviele davon parallel? Du schreibst, ihr könnt einen Serverraum mitnutzen? Wenn das was professionelles ist, würde ich da ganz genau vorher klären, WIEVIELE Geräte und WAS FÜR WELCHE ihr da reinstellen dürft, da gibts oft stenge Anforderungen. Wir reden doch dann sicher von Rackservern oder?

Du schreibst von mehreren festplattenlastigen Prozessen...da empfinde ich selbst bei Verteilung auf mehrere physikalische Maschinen Platten mit 5400upm völlig absurd.

Ich verstehe den Punkt mit der Ausfallsicherheit noch nicht ganz...wie wichtig ist das für die VMs im Einzelnen? Wenn du mehrere Hosts hast, bringt das ja nicht automatisch Ausfallsicherheit für die einzelnen VMs sondern sorgt lediglich dafür, dass immer irgendwas irgendwie läuft, aber wenn gerade die physikalische Maschine tot ist, die die gerade benötigte VM hostet, hilft das nicht weiter.
 
Zuletzt bearbeitet:
10-15 Clients? Meinst du damit VMs oder Nutzer, die darauf zugreifen? Wieviele davon parallel?
Nutzer haben wir ca. 3000. 10-15 könnten parallel zugreifen, je mit einer VM. Dafür haben wir den existierenden i7 920-Server, plus die jetzt neu anzuschaffende Hardware.

Du schreibst, ihr könnt einen Serverraum mitnutzen? Wenn das was professionelles ist, würde ich da ganz genau vorher klären, WIEVIELE Geräte und WAS FÜR WELCHE ihr da reinstellen dürft, da gibts oft stenge Anforderungen. Wir reden doch dann sicher von Rackservern oder?
Der ThinkServer TS130 ist ein Tower. Wir können aber sowohl Rackserver als auch Tower aufstellen (in begrenztem Maß).

Du schreibst von mehreren festplattenlastigen Prozessen...da empfinde ich selbst bei Verteilung auf mehrere physikalische Maschinen Platten mit 5400upm völlig absurd.
Deshalb ja 7200 rpm. Oder lohnt sich eine 10000 rpm- oder gar 15000 rpm-Platte? Und/oder SATA-600?

Ich verstehe den Punkt mit der Ausfallsicherheit noch nicht ganz...wie wichtig ist das für die VMs im Einzelnen? Wenn du mehrere Hosts hast, bringt das ja nicht automatisch Ausfallsicherheit für die einzelnen VMs sondern sorgt lediglich dafür, dass immer irgendwas irgendwie läuft, aber wenn gerade die physikalische Maschine tot ist, die die gerade benötigte VM hostet, hilft das nicht weiter.
Die Ausfallsicherheit ist nicht ganz so kritisch. Es gibt natürlich einige Teile wie Datenbank sowie Loadbalancer für die Webserver, die möglichst nicht ausfallen sollen - aber auch hier brauchen wir keine Hochverfügbarkeit (mal schaun, wir könnten natürlich z.B. die Datenbank redundant auslegen und Multimaster-Replikation machen. Wie man den Loadbalancer redundant auslegen könnte, ist mir allerdings nicht klar). Die Batch-Prozesse zum Erstellen von VM-Images und die VM-Sessions selbst können bei Ausfall eines Servers einfach neu gestartet werden - die VM-Sessions sind nur zum Testen der VM-Images da.
 
Zuletzt bearbeitet:
Ich bring mal etwas Praxiserfahrungen von mir bzgl. Storage-Leistung rein: Ich habe in der Uni einen HyperV-Server laufen mit 6 virtuellen Maschinen. Der hat einen dedizierten Raid-Controller, ein Raid 1 mit 2x7,2k-Platten (Enterprise-Klasse) mit 3 WinXP-VMs drauf sowie ein Raid 1 mit 2x15k-Platten mit 3 Win7-VMs. Host-System läuft separat. Da läuft normalerweise nichts sonderlich festplattenlastiges in den VMs, nur normale Benutzer-An-/Abmeldungen, Programmstarts, reguläre Arbeit...die Benutzerdaten liegen auf externen Netzlaufwerken. Bei dem 7,2k-Datastore merken die Nutzer einen minimalen Unterschied, ob gerade 2 oder 3 VMs aktiv benutzt werden. Läuft in einer der VMs etwas festplattenlastiges, bspw. eine Programminstallation, Update-Installationen oder so, merken die anderen beiden das deutlich, aber es lässt sich noch ausreichend gut arbeiten. Läuft in 2 der 3 VMs etwas derartiges, ist der dritte deutlich behindert.
Im 15k-Datastore ist es so, dass es für die Nutzer nicht spürbar ist, ob 2 oder 3 VMs aktiv genutzt werden und es sich auch noch nicht spürbar auswirkt, wenn eine VM höhere Plattenlast verursacht. Erst wenn zwei VMs wirklich konstant sehr festplattenlastig arbeiten, merkt der Dritte minmale Einbußen. Die Einbußen sind bei normaler Arbeit dann immer noch weniger spürbar, als es bei den 7,2k-Platten ist, wenn dort EINE VM eine vergleichbare Last verursacht.
Der gefühlte Unterschied ist alles in allem sehr deutlich. Messungen gemacht hab ich nie, nur gelegentlich die Windows-Leistungsindikatoren beobachtet, die das Gefühlte bestätigen.

Letztlich kommt es drauf an, wie wichtig einem schnelle Live-Reaktionen in der Benutzerinteraktion sind bzw. wie oft die VMs auch unbenutzt vor sich hin arbeiten. Wenn da ständig jemand davor sitzt, nervt jeder Sekundenbruchteil Wartezeit bei Mausklicks natürlich den Benutzer. Wenn irgendwelche Batch-Skripts womöglich über Nacht laufen, kann es hingegen u.U. völlig egal sein, ob die nach 2 oder 4 Stunden abgearbeitet sind.
 
Hm, das klingt ja so, als ob mehrere kleine Server mit vielen VMs besser klarkommen würden als ein großer. Oder zumindest sollten es bei einem großen Server mehrere Platten sein, und zwar so, dass nicht zu viele VMs auf dieselbe Platte zugreifen.

Der Anwendungsfall ist hier eine Mischung aus Batch-Prozessen (bei denen es nicht so sehr auf die Reaktionszeit ankommt) und Desktop-Virtualisierung zum Testen (und da sollte die Reaktionszeit natürlich nicht zu lang sein). Allerdings werden bei der Desktop-Virtualisierung keine Programme installiert (das läuft über den vorherigen Batch-Prozess).
 
Das mit der Verteilung auf mehrere Platten ist das entscheidende. Dann kommt auch ein einzelnes entsprechend gut ausgestattetes System gut mit vielen VMs klar. Mein Eindruck ist, dass in den meisten Virtualisierungsumgebungen CPU-Leistung und Netzwerk selten ein Problem darstellen. Ram und Storage limitieren sehr schnell. Beim Ram lässt sich das schnell und leicht erkennen und relativ leicht vorab berechnen. Beim Storagesystem ist es subtiler: Es ist schwieriger festzustellen, zu messen, vorherzusagen und es unterliegt größeren Schwankungen, ist also deutlich komplexer in der Bewertung und wird allgemein gern unterschätzt.
Measuring Performance on Hyper-V ist vielleicht ganz interessant als Anhaltspunkt zum Messen, wenn ihr bereits was laufen habt, ich vermute, dass das auf andere Virtualisierungslösungen halbwegs übertragbar sein dürfte. Gibt noch deutlich ausführlichere Dokumente von Microsoft (und sicher auch den anderen Anbietern) mit Tipps zur Bemessung und Einrichtung des Storage.

Würde dringend zu richtiger Server-Hardware raten, neben Fernwartungskomfort und besserer Kompatibilität kommen die Sachen meist auch besser mit hoher Last klar, wonach es hier für mich durchaus klingt, vor allem langfristig. Grad bei Platten geht das leider richtig ins Geld.
 
Nachdem ich aufgrund von therealJMCs Postings in Richtung größerer Server nachgedacht habe, motiviert mich dein Posting nun eher zur Google-Strategie: viele kleine billige Server, die durch ihren Paralleleinsatz dann Leistung bringen.

Performance measuring ist eine gute Idee. Wir nutzen kvm unter Ubuntu, ich werde mal suchen, was es dazu gibt.
 
Das ist nicht, wofür ich mit meinen Postings plädieren wollte. Halte ich für 10-15VMs für nicht nötig...dann langweilen sich wieder andere Komponenten. Entscheidend ist einfach, dass 10-15 VMs auf einer Platte miserabel laufen würden.
 
Naja - das Problem ist eher ein anderes:

Son Google-Container ist halt etwas größer als ein Serverraum den man "mitbenutzen" darf - du hast davor noch gesagt, dass Platz ja auch endlich ist - das alles gilt es zu bedenken. Ebenso wie Stromverbrauch, Kühlungsbedarf etc... - also einen oder zwei Server unterzustellen in unserem Serverraum hier oder im Cage im RZ würde ich auch nicht für problematisch halten, aber bei 5 Stück würde ich das schon anders sehen: Mehr verbrauchte Switchports, mehr verbrauchte Steckdosen, mehr Platzverbrauch, mehr Abwärme etc... Wenn man halt irgendwo "untergemietet" ist sollte man sowas vorher immer abklären - in seinen "eigenen" 4 Wänden sieht das natürlich anders aus.

Ich kenn auch Racks im RZ in denen nur mini-itx Systeme drinliegen auf 42HE - locker mal 80 Stück mindestens. Dafür ist aber auch die gesamte Rückwand voll mit Lüftern um halbwegs die Wärme rauszubekommen, obwohl es im RZ echt gut kalt ist...
 
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh