Projekt: Heimserver auf HyperV Basis mit Server 2012 R2 Datacenter und Storage Spaces

Hört sich doch schonmal interessant an.

Wieviele VMs werden schlussendlich laufen? Exchange oder dergleichen auch geplant? Welche Rollen(Dienste) genutzt?
 
Ich denk ich werd sicher mal mit Exchange / Sharepoint rumexperimentieren, und natürlich andere Dinge wie zb einen Ubuntu Buildserver für Openelec aufsetzen der nächtlich nen nightly Build macht - das frisst ganzschön und da zahlt sich die hohe Perf/W aus.

Ich habe jetzt folgendes gemacht:

  1. Testkonfig bestehend aus 1x 64GB SSD + 1x SATA II 80 GB HDD
  2. Mit dem Windows 7 USB Tool die Windows Server 2012 R2 Datacenter Edition auf den Stick gemacht
  3. vom Stick installiert auf die 64GB SSD
  4. RDP freigegeben
  5. PC Name geändert
  6. Teaming beider Netzwerkkarten aktiviert
  7. Die ASrock Intel INF für Chipsatz Treiber installiert, fand bei Intel auf die schnelle kein kompatibles Treiber Package für den C2750 und SATA III ging nicht out of box (nur SATA II an C2750)
  8. Windows gepatched
  9. die Rolle HyperV installiert (eig alles auf stock)
  10. im HyperV Manager ein Switch eingerichtet (Mainswitch mit der geteamten NIC)
  11. ne neue VM konfiguriert. Gen2. Iso rüberkopiert, ihr 8 Kerne und 2 Gb Ram gegeben.
  12. Windows Server 2012 R2 standard installiert, ebenfalls RDP und Namen angepasst
  13. testweise die 80GB Platte in der Host Datenträgerverwaltung "offline" geschalten und dann an die Vm durchgereicht (geht wunderbar)

Werde mir noch 2x 250Gb SSDs ordern - dann sofern möglich an den 2x SATA 3 den C2750 in Raid1 die Sache neu aufsetzen. Falls das nicht geht an im Bios zu Raid konfigurierbaren Marvels SATA III betreiben, spiegeln, und bootbar setzen. Darauf rennt dann der HyperV (Datacenter) mit samt VMs und virtuellen Platten zb für WriteBack Cache.

cb3buysr.jpg

Ergänzung ()

Frightener schrieb:
Das ist übrigens der Benchmark auf meinem Dell R720 mit 6 laufenden Server 2012 VMs.

intelridojur.jpg


das sind die langsamen Samsung F3 im Raid0 am Intel ICH ;) aber OT
Ergänzung ()

hiermit bestätige ich dass Spin Down bei durchgereichten Platten funktioniert - mit der Zeit die allerdings im Host eingestellt wird also nicht pro VM. (teste ich noch genau ob er nicht vllt nur den längeren Wert nimmt)

Ich kann mich täuschen aber sieht so aus als nimmt er die längere Zeit...
Ergänzung ()

Bestellnummer: XXX- Gesamtwert der Bestellung: € 284,99

Lieferung 1 : Auslieferung wenn alle Artikel verfügbar sind - sofort lieferbar

2 × SAMSUNG Festplatte MZ-7TE250BW 250GB SSD 840 EVO

dum di dum xD
Ergänzung ()

rofl und schon storniert

http://www.ebay.de/itm/SSD-Festplat...n&hash=item565f5cf890&clk_rvr_id=562359598393

hier grad für 120€

Gut das ich geschaut hab (siehe http://www.mydealz.de/)
 
Zuletzt bearbeitet:
Hi Krautmaster,

super Projekt, dass du da vor hast. In etwas abgespeckter Variante hab nächstes Jahr ähnliches vor.
Ich freue mich über jede Info und jeden Erfahrungswert den du hier postest.

Eine Frage hätt ich noch bezüglich OpenELEC. Willst du die OE VM auch nutzen um diese aktiv als MediaCenter zu nutzen, sprich Filme schauen, Musik hören etc. oder ist diese nur zum nightlies basteln ?

Wenn aktiv, funzt das denn in der Praxis schon zufriedenstellend und wie schließt du den Fernseher/Beamer und den AV Receiver usw. an ?
 
QLink schrieb:
H
Eine Frage hätt ich noch bezüglich OpenELEC. Willst du die OE VM auch nutzen um diese aktiv als MediaCenter zu nutzen, sprich Filme schauen, Musik hören etc. oder ist diese nur zum nightlies basteln ?

nur zum basteln auf Konsole.

Für alles andere gibts mein HTPC und diesen Thread hier:

https://www.computerbase.de/forum/threads/htpc-how-to-linux-xbmc-livetv-intel-ink-hd-beschl.882014/

:)

HTPC besteht übrigens aus nem i3 SandyBridge und ner GT520 onboard (auf dem Zotac ITC Board), einer DVBSky S952 und einem OrigenAE Case
 
Zuletzt bearbeitet:
Krautmaster schrieb:
der ATOM Avoton ist vergleichsweise fix unterwegs. Plattform frosst nun genau 21W aus der Dose

nicht schlecht. Wenn nur das Board nicht so teuer wäre ;-)
 
hm ehrlich gesagt hatte ich eher mit 10-15W gerechnet da selbst ein Haswell auf nem Intel Board locker auf unter 20W idle kommt. Macht angesichts der Festplatten den Brei nicht so fett ;)

Heute kommen hoffentlich die 4x 4TB.
 
Ich sehe du nutzt Pass-through Disks. Sei dir bewusst, dass diese keine Live Migration und keine Snapshots unterstützen. Der Performancevorteil ist vernachlässigbar.
Zitat eines MS-Mitarbeiters zu dem Thema

[...], there is a slight performance difference between pass-through and virtual hard drives. But most people will never experience it. The difference is only really noticeable (with instrumentation to measure) when doing massive amounts of IO where you are attempting to push the limits of the physical environment. Given all the benefits of flexibility provided by virtual hard drives, it is a rare exception that will benefit from a pass-through disk.
 
ich hab auch nicht vor von 10 TB Daten Snapshots anzufertigen ;)

Schlag was vor wie es besser gehen sollte ... ich mein... einzelne virtuelle Platten auf die physikalischen verteilt ist doch auch gaga.

Wenn dann müsste ich das Storage Spaces direkt auf dem Datacenter machen und diesen Platz in den VMs nutzen oder?

Edit: Die 4x4 TB sind leider nicht gekommen heute =/
Ergänzung ()

So erste Ergebnisse mit NAS4FREE embedded

16GB RAM
4x4TB RAID5 (RaidZ)
Alle Platten an 4x SATA II vom C2750
PicoPSU 90W (der 84W Adapter kämpft glaub ich)

Ohne Kompression:

PC -> NAS


NAS -> PC


JZJB

PC -> NAS


NAS -> PC


Maximum (GZIP-9)

PC -> NAS


NAS -> PC



Verbrauch:

43W idle (drehende Platten)
Last (PC -> NAS) 52-64W schwankend
Ergänzung ()

Lokale Plattentests:



Jeweils 30GB lesen / schreiben

ohne Kompression:

-> NAS (260MB/s)


<- NAS (270MB/s)

Ergänzung ()

So Platten idlen nach 5 Min wie in NAS4FREE eingestellt. Damit wäre das auch geklärt, geht problemlos mit den WDs. 30W saugt die Kiste nun was aber auch etwas dem Linux geschuldet ist. Frisst per default 2-3W mehr als Win.

Spin-Down mit R5 geht also im NAS4FREE
Ergänzung ()

So: Erste Tests mit Storage Spaces:


-> Administration ist super, auch super flexibel...

aber...

die Parity Performance ist mit 25-30MB/s wirklich mega lausig (man denke an die 260MB/s vom ZFS...)

Edit:
Sage ich in der Datenträgerverwaltung "Raid5 erstellen" dann muss er erstmal recht lange eine Synchronisation aufbauen. Das kann ich schon von früher... in der Zeit ist es natürlich lahm aber wäre mit 60MB/s immernoch fixer als der Parity Volume auf dem Storage Pool.

Jetzt ist die Frage ob das die Parity Virtuellen Datenträger auf dem Storage Pool auch machen, nur im Hintergrund... transparent zum Anwender und dass ich vielleicht erst in 24h meine volle Perf. habe...


(Bild täuscht, wurde aufs R5 geschrieben nicht von da kopiert nur heißt am PC das Volume gleich und die Freigabe aufm Server E)
Ergänzung ()



nach der Synch nur wenig besser... enttäuschend. Weshalb is das R5 in Win nur so schlecht im Vergleich zu ZFS und zum Intel Raid

Edit:

R5 im Win mit 4 Platten und 64k Cluster... schnell genug für Lan sicher... aber etwas Overhead wären mir lieber...


Im Vergleich dazu ein ATTO wenn ich die Platten eine Ebene "tiefer" einhänge, direkt an den HyperV Server und nicht auf der Server 2012 R2 VM drübe... unterschied ist gering
 
Zuletzt bearbeitet:
Krautmaster schrieb:
Ergänzung ()

hiermit bestätige ich dass Spin Down bei durchgereichten Platten funktioniert


Hi Krautmaster, ich habe vor kurzem die Funktion bei meinem Adaptec Raid Controller (Serie 5) eingestellt und wollte dich fragen wie du das verifiziert hast. In meinem Raum ist es leider so laut das man solche Veränderungen nicht wahrnehmen kann. An der angeschlossenen USV konnte ich auch keine Veränderungen in der Stromaufnahme sehen. Hast du noch Ideen, wie hast du es gemacht?

Grüße und schöne Weihnachten @all
 
auf meinem leisen Schreibtisch nicht schwer... =)

Anfassen, schaun ob sie vibrieren die HDDs
Ergänzung ()

Parity Storage Spaces is komischerweise weniger als halb so schnell wie Raid5 in Windows... dabei sollte es doch nix anders machen...
Scheint leider unnutzbar langsam zu sein außer man gibt sich mit 20-30MB/s zufrieden... lesen geht mit 113MB/s
 
Zuletzt bearbeitet:
wenn ich es richtig verstehe hast du Hyper-V installiert und in einer VM Nas4Free. Da hast du dann das RaidZ aufgebaut
 
zum testen da hab ich NAS4FREE direkt vom Stick gebootet, nicht in HyperV. Das haut nicht hin, der Ethernet Adapter wird nicht richtig erkannt, auch die durchgegebenen Platten nur an IDE und nicht am SCSI HyperV Controller, leider...

Ich stehe nun etwas auf dem Schlauch da die Performance in Windows Server 2012 R2 mit Storage Spaces und Parity so verdammt schlecht ist... da reizt mich ein RaidZ welches meine CPU gut auslastet mehr... da hab ich auch mit Kompression, Deduplication etc noch super Performance...

Problem ist halt, dass ich gern andere Sachen aufm Server mache die ne Windows Plattform voraussetzen.
Ergänzung ()

Heute werde ich nochmal sehen ob das NAS4FREE mit den ESXi Adaptern besser zurecht kommt. :-/
Ergänzung ()

Hm komisch, jetzt hab ich mein Parity Volume erstmal in ReFS formatiert, dann mit dem Command:

“set-FileIntegrity -Filename E:\ -enable $false”

FileIntegrity deaktiviert

-> getestet, fix

mit
“set-FileIntegrity -Filename E:\ -enable $true"

wieder aktiviert, auf NTFS formatiert... schieb nun gut 100 MB/s über die Leitung auf die Freigabe, strange

Ich dachte erst vllt liegt daran, dass ich der Server 2012 R2 VM statt dynamisch nun fix Ram zugeordnet habe... meine aber danach auch mal diese lächerlichen 20-30MB/ gesehen zu haben und auch ATTO is mau.
-> nach analsyse kann ich sagen dass er nur besser Cached nämlich eben das was ich ihm fix an Ram gegeben hab... nach 8 GB geht er wieder auf 20MB runter
 
Zuletzt bearbeitet:
Eddy2k schrieb:
Hi Krautmaster, ich habe vor kurzem die Funktion bei meinem Adaptec Raid Controller (Serie 5) eingestellt und wollte dich fragen wie du das verifiziert hast. In meinem Raum ist es leider so laut das man solche Veränderungen nicht wahrnehmen kann. An der angeschlossenen USV konnte ich auch keine Veränderungen in der Stromaufnahme sehen. Hast du noch Ideen, wie hast du es gemacht?

für FreeNAS gibts n Script, das zeigt dir an ob die HDDs im spindown sind, dafür gibst du in die konsole folgendes ein:
camcontrol cmd ada0 -a "E5 00 00 00 00 00 00 00 00 00 00 00"

ada0 natürlich entsprechend ersetzen. Sollte mit NAS4free auch funktionieren denke ich mal (hat ja beides FreeBSD als Unterbau). Für genauere Info hier der Thread im FreeNAS-Forum.
 
@Krautmaster:
Hyper-V unterstützt doch offiziell Freebsd und Linux.
Hast schon mal versucht, freebsd oder Linux in einer vm und dann dort zfs zu benutzen? Das will ich auf meinem Server versuchen.
 
das wäre ne idee... und dann...? ZFS manuell?

Ich meine NAS4FREE is schon ganz geil - prinzipiell fehlen da ja nur die HyperV Module etc. Wie würdest du das angehen?
 
ESXi hab ich bereits ausprobiert mit RDM. Problem: Bei RDM scheinen auch im ESXi 5.5 platten mit 2 TB + nicht wirklich zu klappen... ich seh die Platte in NAS4FREE mit 0MB und bekomm Block Size 0 Error beim Versuch zu formatieren.

Wenn ich manuell Virtuelle Platten auf die HDDs verteile gehts... aber nicht wirklich so schick wie ich dachte (50-60MB/s write).

Außerdem ist mir der Hyper-V vom Durchreichen der Platten lieber.

-> werde mal FreeBSD 10 RC testen, da sind die ganzen HyperV Module schon drin. Dann irgendwie was auf FreeBSD aufsetzen :) schau mer mal
Ergänzung ()


Hier ein sehr guter Thread zu Storace Spaces mit vielen Benches!


http://forums.servethehome.com/wind...0-serer-2012-r2-storage-spaces-tiering-2.html

So könnte das mit den 2x250GB SSDs morgen doch noch was werden.
Ergänzung ()

lol ich war si frei die zwei EVO 250GB SAMSUNG SSDS zu nehmen die hier schon rumliegen um mal Tests zu fahren, sieh an, auf einmal rockt das Parity sowas von wenn man die SSDs mit in den Pool wirft deutlich mehr.

SSDs hängen am Marvel Controller, werden wie die Platten durchgegeben:


Setting:

Code:
Get-StoragePool -FriendlyName TieredPool | Get-PhysicalDisk | ? MediaType -eq SSD | Set-PhysicalDisk -Usage Journal
New-StorageTier -StoragePoolFriendlyName TieredPool -FriendlyName SSD_Tier -MediaType SSD
New-StorageTier -StoragePoolFriendlyName TieredPool -FriendlyName HDD_Tier -MediaType HDD
New-VirtualDisk -StoragePoolFriendlyName TieredPool -FriendlyName HDD_Parity -UseMaximumSize -ResiliencySettingName Parity -ProvisioningType Fixed -WriteCacheSize 100GB




Performance:


Ergänzung ()

RealWorld Benches:

MP3 -> NAS



NAS -> MP3



ISO -> NAS


(hier limitiert die WS NIC, der alte Server schaufelt mit 113MB/ drauf)

NAS -> ISO



alle Speeds konstant auf ein mit Bitlocker verschlüsseltes NAS Volume mit Parity.

:) so bin ich happy damit. Zumal es mit Datacenter schönes Teaming der NIC gibt (meine WS hat nur ein GBE in Benutzung und Marvel Teaming unter WIn 8.1 geht iwi nicht...) - aber könnte vorteilhaft sein wenn ich zb was mit dem HTPC mache oder andere VMs auf das Volume zugreifen.
Ergänzung ()

Bisschen was zu tun hat die CPU schon bei 900 Mbit auf ein Verschlüsseltes Volume und einem Raid5 drunter.


Ergänzung ()

So also ich hab gestern angefangen zu kopieren:



Wie es scheint helfen die SSDs wirklich enorm, er schafft auch über die Größe des WriteCaches hinweg 100 MB + auf das Parity wegzuschreiben... kein Plan was MS da macht und wieso die einfache HDD Parity Performance so grottig ist aber mit ner SSd schafft man es wohl dann plötzlich Terabyteweise mit hoher Geschwindigkeit Daten zu verarbeiten.

Siehe:



Nach 6 TB quasi immer auf 100 MB/s und bei den MP3s dürfte der alte Server mit dem Intel Raid limitieren da zZ nur 2GB ram und Truecrypted.
Ergänzung ()

Hm ich hab eben ein ganz ganz merkwürdiges Problem:

Meine SAMSUNG EVOS tauchen nicht in der Datenträgerverwaltung auf, keine VM läuft und keine hat die Platten zugeordnet...

Im Gerätemanager sind sie aber da und auch mittels SAMSUNG Software konnte ich ein FW Update durchführen... sehr dubios, sowas hab ich noch nicht gesehen und es liegt auch nicht am C2750 denn Umstecken auf Marvel bringt auch nichts... die SSDs kommen einfach nicht richtig im OS an.



jemand ne Idee?
Ergänzung ()

Kleines Update von den Errungenschaften heute:

  • man braucht minimum 2 SSDs / Tier
  • da ich 2 Tiers habe (4x4TB Parity und 5x2TB Parity) brauch ich quasi 4 SSDs
  • Um das zu vermeiden hab ich nun folgendes gemacht:

  1. beide SSDs (a 250GB) an die untere Schicht, also die HyperV Ebene (DataCenter Edition) angehängt
  2. ein Mirror von 100GB erstellt (Hier landen die VMs die wichtig sind)
  3. die rechtlichen 135GB / SSD in NTFS formatiert
  4. auf jede dieser 135GB Partitionen zwei Virtuelle Platten mit je 65GB gepackt
  5. der Fileserver VM diese 4 "SSDs" mitgegeben


Nun habe ich theoretisch 4x 65GB SSDs auf dem Fileserver verfügbar, logisch dass für Ausfallsicherheit jedes Tier sowohl eine Virtuelle SSD aus der Partition 1 und aus der Partition 2 mitgegeben werden muss, keinesfalls dürfen beide Virtuellen SSDs eines Tiers auf derselben physikalischen SSD sein.

Nun, was macht das an Performance aus? Überraschend wenig. Ich habe den Write Back Cache auf 20GB gestutzt (scheint auch bei 200GB wegschreiben nichts auszumachen) - vielleicht nehme ich auch nur 10GB denn ich denke es ist von Vorteil wenn fürs Journal mehr zur Verfügung steht..

Das Ganze sieht nun so aus:


Wir erstellen also zunächst einen Pool aus den zwei SSDs und den Platten die man hinzufügen will.

Damit Windows Server die Virtuellen Platten auch als SSD erkennt muss man folgendes Kommando absetzen:

Code:
get-storagePool TieredPool | get-physicaldisk | FT Friendlyname, Size, Mediatype

listet alle Platten dies Pools:

Code:
Friendlyname                                                               Size MediaType
------------                                                               ---- ---------
PhysicalDisk5                                                       68987912192 UnSpecified
PhysicalDisk7                                                       68987912192 UnSpecified
PhysicalDisk1                                                     3999956729856 HDD
PhysicalDisk2                                                     3999956729856 HDD
PhysicalDisk3                                                     3999956729856 HDD
PhysicalDisk4                                                     3999956729856 HDD

Nun verwandeln wie dir UnSpecified -> SSD mit

Code:
get-storagePool TieredPool | get-physicaldisk | ? mediatype -eq "UnSpecified" |set-physicaldisk -mediatype SSD

voila, alle UnSpecified Platten ( Virtuelle Platten) sind damit als SSD markiert.

Code:
get-storagePool TieredPool | get-physicaldisk | FT Friendlyname, Size, Mediatype

Friendlyname                                                               Size MediaType
------------                                                               ---- ---------
PhysicalDisk5                                                       68987912192 SSD
PhysicalDisk7                                                       68987912192 SSD
PhysicalDisk1                                                     3999956729856 HDD
PhysicalDisk2                                                     3999956729856 HDD
PhysicalDisk3                                                     3999956729856 HDD
PhysicalDisk4                                                     3999956729856 HDD

Mit den weiteren 2 SSDs mach ich mir also ein weiteren Pool bestehend aus den 5x 2 TB. :)
Ergänzung ()

Ich habe soeben im anständigen Pre-Weihnachts-Suff nach ca 2,5l gutem Bier den Worst Case Simuliert, eine der beiden SSDs abgesteckt, formatiert, wieder angekloemmt. -> das Konstrukt aus SSDs und hDDs bleibt voll erreichbar, bekommt ein schönes Warndreieck. Hab dann die virtuellen SSDs neu erstellt, musste erst die neue SSD dem Pool hinzufügen, dann dem Virtuellen Datenträger sagen "Virtuellen Datenträger reparieren" dann konnte ich nach kurzer Zeit die 3. SSD im Pool (die defekte) entfernen.

Der Virtuelle Datenträger springt auf "aktiv" und ist nach wenigen Minuten wieder ohne Dreieck. Währen der ganzen Zeit aber voll erreichbar ink aller Daten die ich drauf hatte.

Grob gesagt: Schau einfach dass genug "funktionierende" Datenträger im System sind, falls ja sag "reparieren" und danach kannst du überflüssige Datenträger entfernen.
Ergänzung ()

Wichtig!

Naja, ich hab mich jetzt schon öfters gewundert weshalb ich Platten einfach "verliere" ... das Problem dehnt sich aus und wird doch etwas komplexer als gedacht.
Wenn ich die Platten in einen Pool nehme, dann erkennt Windows diese nur noch im Gerätemanager und nicht mehr in der Datenträgerverwaltung. Das führt zwangsläufig zu dem Problem, dass wenn ich die Datacenter Editions Ebene, also den Hypervior reboote, ich die Fileserver VM nicht mehr Booten kann da die Einstellungen Platten durchgeben wollen, die das System in der Hypervisor Ebene nicht mehr finden kann =(

Ich kann schlecht sagen ob das von MS so bedacht wurde oder gar beabsichtigt ist... aber defakto kann man dann quasi nicht Storage Pools / Tiers in einer VM betreiben da mit erstmaligem Reboot des Hosts alle Platten "verschwinden" und nicht mehr der VM zuzuordnen sind.

-> ich werde den Pool wohl auf der Ebene "darunter" machen müssen.
 
Zuletzt bearbeitet:
ziehmlich viel Aufwand für ein Storage ;-) Habe mir einen 3 Raid Controller in der Bucht geschossen. Denn werde ich per VT-d an die VM zum spielen weiterreichen und mal mit Nas4Free herumspielen-
 
dafür hab ich in dem Case kein Platz :p

Der Aufwand ist nun eig sogar sehr gering - hab jetzt das Tiered Storage ja direkt auf dem Windows Server 2012 R2 eingerichtet, welches direkt auf der HW läuft und zugleich noch Hyper V Server spielt.

Da gehts wirklich kinderleicht und schnell. Damit ich halt nicht für beide Raid5s (4x4 und 5x2TB) a2 SSDs nehmen muss hab ich meine 2 SSDs halt mit je 2 virtuellen Platten versehen die ich ins Tier mit aufnehme statt eben die ganzen SSDs, geht 1a und ich kann die zwei SSDs noch als Mirror nehmen um VMs (wichtige) darauf abzulegen.

:)

Press nun über 1 Stunde lang mit 980 Mbit Daten über die Leitung, 113MB/s.



Kann man SSDs mit ner Schreibleistung von 14TB nach 3 Tagen wieder zurückschicken?

Edit:

Im Prinzip reichen wirklich extrem kleine SSDs / Virtuelle Platten für das WriteBack Caching. Zunächst habe ich sie Thick angelegt, nun thin und es macht keinen Unterschied. Die Größe kommt wohl einfach dem angegeben WriteBack Cache gleich:



Ich habe nun über 150GB gemirrorten SSD Speicher um VMs darauf abzulegen und ich finde die sache mit den ledglich 43GB großen virtuellen Platten für den SSD Cache hat sogar einen Vorteil:

Ich kann diese einfach im Fehlerfall irgendwo, egal ob auf HDD / SSD / externe Platte, einfach neu als 43GB (thin) SSD anlegen und damit im Falle eines Crashes direkt wieder für Sicherheit sorgen.
 
Zuletzt bearbeitet:
Edit:

Weiterer Vorteil ist auch dass Kopieren aufs NAS nicht auf das Andrehen der schlafengelegten Platten wartet sondern direkt auf die SSDs Cached.
Auch Dinge wie "Eigenschaften" von Ordnern abrufen geht um ein vielfaches schneller.
 
Zurück
Oben