emeriks
Goto Top

Windows 2016 Hyper-V und VHDS

Hi,
ich habe einen physichen Hyper-V Host mit Windows Server 2016 DC.
Der Host ist nur zum Test.
Er hat nur eine SSD.

Ich will 2 VM erstellen, welche sich neben ihren System-VHDX eine gemeinsame VHDS teilen sollen.

Das Erstellen der VHDS geht ohne Weiteres. Nur wenn ich diese VHDS an die beiden VM's anhängen will, dann kommt:
Der Speicher, in dem sich die virtuelle Festplatte befindet, unterstützt die Freigabe virtueller Festplatten nicht.

Ich suche mich jetzt schon dumm und dämlich, um eine Aussage darüber zu finden, was denn für Hyper-V unter Win10/2016 ein für VHDS unterstützter Speicher ist. Ich finde einfach keine klare Aussage.
In einigen Foren habe ich gefunden, dass untere Win2012 R2 für freigegeben VHDX eine SMB 3.0 Freigabe funktionieren würden.

Ich brauche aber eine VHDS (das hat was mit VEEAM zu tun). Der Win2016 Hyper-V meckert aber auch, wenn ich die VHDS in eine Freigabe auf einem anderen Windows 2016 Server lege. Das ist doch dann eine SMB 3.0 Freigabe?

Weiß jemand, wie das mit den VHDS eingerichtet werden muss?

E.

Content-Key: 338586

Url: https://administrator.de/contentid/338586

Ausgedruckt am: 19.03.2024 um 03:03 Uhr

Mitglied: ArnoNymous
ArnoNymous 22.05.2017 aktualisiert um 14:37:31 Uhr
Goto Top
Moin,

welches OS läuft denn in deinen VMs?
VHDS wird wohl nur von WIN10/2016 unterstützt.
Mitglied: psannz
psannz 22.05.2017 um 15:37:21 Uhr
Goto Top
Sers,

https://blogs.technet.microsoft.com/askpfeplat/2015/05/31/how-shared-vhd ...

Artikel ist zwar für den 2012R2, passt aber auch auf den 2016er.

Wenn Hyper-V die VHD(X)-Dateien auf einer SMB Freigabe finden soll, dann muss es eine Applikationsfreigabe sein. Eine einfache Standardfreigabe reicht da nicht.

Grüße,
Philip
Mitglied: emeriks
emeriks 22.05.2017 um 21:00:02 Uhr
Goto Top
welches OS läuft denn in deinen VMs?
Noch gar keins. Ich komme ja nicht mal dazu, die VHDS an die VM's zu hängen.

VHDS wird wohl nur von WIN10/2016 unterstützt.
Ja. Bezogen auf den Host.
Mitglied: emeriks
emeriks 22.05.2017 um 21:09:08 Uhr
Goto Top
https://blogs.technet.microsoft.com/askpfeplat/2015/05/31/how-shared-vhd ...

Artikel ist zwar für den 2012R2, passt aber auch auf den 2016er.
Danke. Aber hier muss ich erstmal herausfinden, ob VHDS wirklich nur eine neue Bezeichnung für "shared VHDX" oder ob das nicht doch noch was anderes ist.

Wenn Hyper-V die VHD(X)-Dateien auf einer SMB Freigabe finden soll, dann muss es eine Applikationsfreigabe sein. Eine einfache Standardfreigabe reicht da nicht.
Sorry, aber was bitte ist eine "Applikationsfreigabe"?
Mitglied: emeriks
emeriks 22.05.2017 um 21:35:01 Uhr
Goto Top
Ich habe jetzt noch einen Artikel gefunden.
http://www.tech-coffee.net/shared-virtual-hard-disks-in-hyper-v-2016/

Ich hatte es genauso gemacht wie dort beschrieben. Allerdings kommt bei mir beim "Next, specify the location of the VHDS file." mein eingangs genannter Fehler.

Beim Versuch, die VHDS mittels Powershell anzuhängen, bekomme ich den selben Fehler, sogar mehrmals wiederholt. face-sad
Add-VMHardDiskDrive : Fehler beim Hinzufügen des Geräts "Virtual Hard Disk".  
Der Speicher, in dem sich die virtuelle Festplatte befindet, unterstützt die Freigabe virtueller Festplatten nicht.
Für die Zuordnung "D:\Hyper-V\VHDs\ABC-FSC-Disk1.vhds" können keine Informationen abgerufen werden.  
Der Speicher, in dem sich die virtuelle Festplatte befindet, unterstützt die Freigabe virtueller Festplatten nicht.
"ABC-FSC01": Fehler beim Hinzufügen des Geräts "Virtual Hard Disk" (ID des virtuellen Computers  
F9AD1087-75C9-454B-920A-CDE223B0CDF1).
Der Speicher, in dem sich die virtuelle Festplatte befindet, unterstützt die Freigabe virtueller Festplatten nicht.
"ABC-FSC01": Es können keine Informationen für die Anlage "D:\Hyper-V\VHDs\ABC-FSC-Disk1.vhds" abgerufen werden (ID  
des virtuellen Computers F9AD1087-75C9-454B-920A-CDE223B0CDF1).
Der Speicher, in dem sich die virtuelle Festplatte befindet, unterstützt die Freigabe virtueller Festplatten nicht.
In Zeile:1 Zeichen:1
+ Add-VMHardDiskDrive -VMname ABC-FSC01 -path D:\Hyper-V\VHDs\ABC-FSC-D ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Add-VMHardDiskDrive], VirtualizationException
    + FullyQualifiedErrorId : OperationFailed,Microsoft.HyperV.PowerShell.Commands.AddVMHardDiskDrive


Können diese Mistdinger etwa nur von einem Cluster Volume aus gemounted werden? Das würde bedeuten, dass ich schon für meine Testumgebung zwei physische Hyper-V Host benötige, welche auch noch einen geteilten Storage haben müssten, sprich SAN.

Was aber dagegen spricht ist der von mir genannte Artikel. Laut Screenshots werden hier die VHDS von C:\... gemounted, was ja nun nur äußerst unwahrscheinlich ein Cluster Volume sein kann.
Mitglied: ArnoNymous
ArnoNymous 22.05.2017 aktualisiert um 23:16:09 Uhr
Goto Top
Zitat von @emeriks:


Was aber dagegen spricht ist der von mir genannte Artikel. Laut Screenshots werden hier die VHDS von C:\... gemounted, was ja nun nur äußerst unwahrscheinlich ein Cluster Volume sein kann.

Nope, es ist auch im Beispiel ein CSV, siehe: "c:\ClusterStorage\VMStorage01\"

Vielleicht hilft dir das ja für deine Testumgebung weiter:
https://msdn.microsoft.com/de-de/library/hh831359(v=ws.11).aspx
Mitglied: emeriks
emeriks 23.05.2017 aktualisiert um 08:34:34 Uhr
Goto Top
Nope, es ist auch im Beispiel ein CSV, siehe: "c:\ClusterStorage\VMStorage01\"
Sorry, aber das verstehe ich nicht. "ClusterStorage" ist nur ein Wort.
Für mich sind CSV nichts weiter als herkömmliche Shared Volumes eines Failoverclusters, welche um die Funktionalität des gleichzeitigen Schreibens von allen Nodes erweitert wurden. Und C:\ ist in 99,9% aller Fälle %SYSTEMROOT%. Ich glaube nicht, dass der Blogger für ein Testszenario eine gebogene Installation verwendet hat, bei welcher C:\ nicht %SYSTEMROOT% war. Davon ausgehend kann C:\ also kein Shared Volume sein, also auch kein CSV.

Aber um es noch einmal zu verdeutlichen:
Ich kann VHDX auf einem anderen Win2016 Server in einem Share lagern und von dort aus starten. Hier geht es aber um VHDS. Die bekomme ich dort zwar abgelegt aber ich kann sie von dort aus nicht an die VM mounten. Das ist das Problem.

Die Frage ist also, wie muss ich in einer simplen Testumgebung einen Storage herrichten, damit ich dort abgelegte VHDS auch an eine VM hängen kann?

Edit: Übrigens habe ich selbiges Verhalten an zwei verschiedenen Host. Einmal Hyper-V unter Win10 Pro 1703 und einmal unter Win2016 DC.
Mitglied: ArnoNymous
Lösung ArnoNymous 23.05.2017 um 09:22:29 Uhr
Goto Top
Zitat von @emeriks:

Nope, es ist auch im Beispiel ein CSV, siehe: "c:\ClusterStorage\VMStorage01\"
Sorry, aber das verstehe ich nicht. "ClusterStorage" ist nur ein Wort.
Für mich sind CSV nichts weiter als herkömmliche Shared Volumes eines Failoverclusters, welche um die Funktionalität des gleichzeitigen Schreibens von allen Nodes erweitert wurden. Und C:\ ist in 99,9% aller Fälle %SYSTEMROOT%. Ich glaube nicht, dass der Blogger für ein Testszenario eine gebogene Installation verwendet hat, bei welcher C:\ nicht %SYSTEMROOT% war. Davon ausgehend kann C:\ also kein Shared Volume sein, also auch kein CSV.


Zugegeben, ich habe nicht so viel Erfahrung mit CSV, aber beim Erstellen des CSV wird dieses doch unter C:\ als Ordner gemountet, und zwar unter den Namen "ClusterStorage". Darin dann die Umleitungen zum eigentlichen Storage.

https://www.petri.com/create-windows-server-2012-r2-cluster-shared-volum ...

Oder habe ich das falsch verstanden?

Aber um es noch einmal zu verdeutlichen:
Ich kann VHDX auf einem anderen Win2016 Server in einem Share lagern und von dort aus starten. Hier geht es aber um VHDS. Die bekomme ich dort zwar abgelegt aber ich kann sie von dort aus nicht an die VM mounten. Das ist das Problem.

Die Frage ist also, wie muss ich in einer simplen Testumgebung einen Storage herrichten, damit ich dort abgelegte VHDS auch an eine VM hängen kann?

Edit: Übrigens habe ich selbiges Verhalten an zwei verschiedenen Host. Einmal Hyper-V unter Win10 Pro 1703 und einmal unter Win2016 DC.


Dein Problem habe ich schon verstanden. Das habe ich gestern auch so, ebenfalls mit Win10 und Srv2016, nachgestellt und kam zum gleichen Ergebnis. Mit Freigaben auf lokalen Platten kommt man nicht weit. Man benötigt wohl ein CSV oder ein Scale-Out-Server (SMB3.0 Freigabe).
Mitglied: emeriks
emeriks 23.05.2017 aktualisiert um 09:30:42 Uhr
Goto Top
Zugegeben, ich habe nicht so viel Erfahrung mit CSV, aber beim Erstellen des CSV wird dieses doch unter C:\ als Ordner gemountet, und zwar unter den Namen "ClusterStorage". Darin dann die Umleitungen zum eigentlichen Storage.

https://www.petri.com/create-windows-server-2012-r2-cluster-shared-volum ...

Oder habe ich das falsch verstanden?
Nee, hast Du nicht! Danke!
Das hatte ich so auch noch nicht kapiert. Weil selbst auch noch nicht gemacht. Ich teste den Hyper-V nur notgedrungen, wir setzen sonst nur VMware ein.

OK, das erklärt schon mal sehr viel. Ich werde wohl zwingend mit einem CSV arbeiten müssen, wenn ich VHDS einsetzen will. Davon gehe ich jetzt mal aus.

Edit:
oder ein Scale-Out-Server (SMB3.0 Freigabe).
Ist denn eine normale Freigabe auf einem Win2016, bei welchem SMB 3 nicht deaktiviert ist, keine SMB-3-Freigabe in diesem Sinne?
Mitglied: 132895
132895 23.05.2017 aktualisiert um 10:04:49 Uhr
Goto Top
Zitat von @emeriks:
Ist denn eine normale Freigabe auf einem Win2016, bei welchem SMB 3 nicht deaktiviert ist, keine SMB-3-Freigabe in diesem Sinne?
Nein, auf beiden Systemen ist hier die Hyper-V Rolle nötig auch auf dem Fileserver der die Freigabe anbietet:
http://www.robertborges.us/2013/03/windows/windows-server-2012/windows- ...

Gruß
Mitglied: ArnoNymous
ArnoNymous 23.05.2017 um 10:20:05 Uhr
Goto Top
Das hab ich gestern versucht. Bei mir hat es nicht zum Erfolg geführt. Gleiche Fehlermeldung wie bisher.
Mitglied: emeriks
emeriks 23.05.2017 um 10:52:41 Uhr
Goto Top
Das hab ich gestern versucht. Bei mir hat es nicht zum Erfolg geführt. Gleiche Fehlermeldung wie bisher.
Ich kann das so gar nicht reproduzieren. Der von @132895 genannte Artikel bezieht sich auf Win2012. Unter Win2016 gibt es "Freigabe- und Speicherverwaltung" nicht mehr, bzw. man kann damit keine Win2016-Server verwalten. Man muss es über den Server-Manager machen. Mit diesem kann ich aber den Punkt "3. For Hyper-V VHD storage, select SMB Share-Applications, then click on the Next button." nicht reproduzieren.

Wenn ich auf meinem Hyper-V-Host eine Freigabe erstelle, dann sehe ich im Dialog auch keinen Unterschied zu einem Host ohne installiertem Hyper-V.
Mitglied: ArnoNymous
ArnoNymous 23.05.2017 um 10:59:48 Uhr
Goto Top
Hast du die Rolle "Datei-und Speichedienste" installiert?
Dann sollte auf der linken Seite der entsprechende Punkt auftauchen.
Dort dann auf Freigaben und oben-mittig auf Aufgaben.
unbenannt
Mitglied: emeriks
emeriks 23.05.2017 um 11:41:28 Uhr
Goto Top
OK. Danke.
Aber dann bleibe ich bei meiner Aussage: So eine "Anwendungsfreigabe" ist nichts weiter als eine normale Freigabe. Dadurch, dass man beim Erstellen der Freigabe ein "Profil" auswählt, wählt man lediglich die für diesen Zweck sinvollen/erforderlichen Eigenschaften dieser Freigabe als Voreinstellung aus. Wenn man nachträglich die Eigenschaften der Freigabe bearbeitet, dann kann man nicht nachvollziehen, mit welchem "Profil" diese ursprünglich erstellt wurden.

Zumal dieser Assi auch voll buggy ist. Aber das ist ein anderes Thema ...
Mitglied: 132895
132895 23.05.2017 aktualisiert um 11:47:34 Uhr
Goto Top
Das Computer-Konto des Hyper-Vs hast du den ACLs des Shares mit Vollzugriff hinzugefügt? Damit funktioniert das hier.
Mitglied: emeriks
emeriks 23.05.2017 um 13:14:39 Uhr
Goto Top
Das Computer-Konto des Hyper-Vs hast du den ACLs des Shares mit Vollzugriff hinzugefügt? Damit funktioniert das hier.
Ich habe doch bereits geschrieben, dass es mit VHDX funktioniert. Also sind die ACL's korrekt. Das Problem betrifft nur VHDS ("VHD Set").

Aber ja, die Computerkonten haben hier Vollzugriff. Eine Frage der Logik.
Mitglied: 132895
Lösung 132895 23.05.2017 aktualisiert um 13:16:58 Uhr
Goto Top
Zitat von @emeriks:
Ich habe doch bereits geschrieben, dass es mit VHDX funktioniert. Also sind die ACL's korrekt. Das Problem betrifft nur VHDS ("VHD Set").
Ich habe ja mit einer VHDS getestet, lesen tu ich schon face-wink.
Mitglied: emeriks
emeriks 23.05.2017 aktualisiert um 13:50:37 Uhr
Goto Top
Nein, es bleibt dabei.
Fileserver mit Win2016 Server mit Rollen
  • Failovercluster
  • Dateiserver
  • Hyper-V

Neue Freigabe erstellt mit "Profil" "SMB-Freigabe Anwendungen"
Der Hyper-V Host hat hier Vollzugriff in der Freigabe und im NTFS.
VHDS kann der Hyper-V dort erstellen
An eine VM hängen kann der Hyper-V diese VHDS nicht. Dann kommt wieder der o.g. Fehler.

Also, wenn es bei Dir unter Win2016 mit einer VHDS in einer Freigabe geht, dann machst Du irgendetwas anders und hast es hier noch nicht gepostest.

Ich versuche es gerade mit dem Failovercluster. Also den Hyper-V Host zur Node in einem neuen Failovercluster gemacht. Erster Effekt war, dass er die bereits eingerichteten VM's nicht mehr erkennt. Man kann sie auch nicht hinzufügen. Also habe ich eine neuen VM im selben Ordner erstellt. Für diese hat er dann statt wie bisher je eine VMRS- und VMCX-Datei jetzt eine XML-Datei erstellt. Soll das jetzt heißen, dass das Dateiformat einer VM bei einem Standalone Hyper-V anders ist als bei einem Hyper-V im Failovercluster?
Mitglied: emeriks
emeriks 23.05.2017, aktualisiert am 03.07.2017 um 11:29:10 Uhr
Goto Top
So. Mit einem Failovercluster funktioniert es.
Also Hyper-V-Server ist in einem Failovercluster. Dort einen Clusterdatenträger eingerichtet. Diesen dem Hyper-V als "freigebenes Clustervolume" zugewiesen. Dabei erstellt er auf den zum Failovercluster gehörenden Hosts jeweils unter C:\ einen Ordner "ClusterStorage" und darin einen Junction Points zum Clusterdatenträger ("Volume1").
Die bereits erstellte VHDS in dieses CSV verschoben. Von dort die VHDS an die VM's gehängt und dann gings.

Ein Problem habe ich aber noch:
Ich kann mit der Hyper-V-Konsole nicht direkt in diesem CSV eine neue VHDS erstellen. Da meckert er an:
Die Serverversion entspricht nicht der angeforderten Version.
Das ist seltsam. Alle beteiligten Server sind Win2016.
Ich muss die neue VHDS immer erst an einem anderen Ort erstellen, dann in das CSV kopieren. Von dort dann an die VM's hängen.
Damit kann ich aber erstmal leben.

Ich habe jetzt noch ein paar Probleme allgemein mit dem Failovercluster unter Win2016, aber dafür mache ich einen neuen Fred auf.
Danke für Eure Hilfe bis hierher!