Logo faq-o-matic.net
Logo faq-o-matic.net

Hyper-V 2012 R2 mit PowerShell einheitlich einrichten

von veröffentlicht am5. Februar 2014, 06:12 Uhr Kurzlink und Zitatlink einblenden
Kategorie Kategorie: Downloads, PowerShell, Virtualisierung, Windows Server 2012 R2   Translate with Google Translate Translate EN   Die angezeigte Seite drucken

Für die Einrichtung eines Hyper-V Clusters, welcher über eine redundante Netzwerkanbindung verfügen soll, gibt es einen von Microsoft empfohlenen Workflow. Dieser sieht vor, die Netzwerkadapter, welche zur redundanten Anbindung verwendet werden sollen, in einem NIC-Teaming zusammenzufassen. Da die Einrichtung mehrerer Hyper-V Hosts mit immer wiederkehrenden Einrichtungsschritten sehr mühsam ist, habe ich mir ein Powershell-Script erstellt, dass diese Arbeiten übernimmt.

In meinem Fall geht es um zwei Blade-Enclosures inklusive 20 Blade-Servern. Die Netzwerkanbindung erfolgt über zweimal 10 GBit/s. Es bestand die Anforderung einer vollredundanten Anbindung. Dafür kam nur der Einsatz eines NIC-Teams in Frage. Auf diesem Team werden ein Extensible Switch und die benötigten virtuellen Netzwerkadapter angelegt. Es gibt je ein Netz für das Servermanagement, Cluster-Shared Volume, Live Migration und Backup. Für jedes Netz gibt es ein dafür vorgesehenes VLAN.

Eine kleine Herausforderung war die automatische Ausführung des Scripts nach einem geplanten Neustart. Dies wurde durch Erzeugen eines Registrieungsschlüssels und Abfragen des Installationsstatus gelöst. Im Script selbst sind die Schritte dazu kommentiert.

Ausgangssituation für die Scriptabarbeitung ist:

  • Windows Server 2012R2 in der Grundinstallation
  • Treiberinstallation
  • Aktive, nicht konfigurierte Netzwerkverbindung
  • Anmeldung als Administrator
  • Scriptablage unter C:\Blade
  • CSV Datei (kommagetrennt) mit den Informationen zur Einrichtung

So sieht beispielhaft die CSV-Datei aus:

Servername,Management,Managenetmask,DNS1,DNS2,CSV,csvnetmask,Livemigration,Livemigrationnetmask,Backup,backupnetmask,Gateway
SERVER01,172.17.107.60,24,172.17.8.151,172.17.8.152,172.17.13.65,27,172.17.14.65,27,172.17.21.60,24,172.17.107.1
SERVER02,172.17.107.61,24,172.17.8.151,172.17.8.152,172.17.13.66,27,172.17.14.66,27,172.17.21.61,24,172.17.107.1

Der Aufruf des Scripts erfolgt über eine Batchdatei (Start.cmd):

copy c:\blade\autostart.cmd "C:\Users\Administrator\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup"
"C:\Users\Administrator\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\autostart.cmd"

Diese Datei kopiert eine weitere Batchdatei in den Autostart (Autostart.cmd):

powershell "C:\blade\Netzwerk_Blade.ps1"

In meinem Fall wurde das Beriebssystem in Englisch installiert. Ein deutsches Sprachpaket wird in der Scriptausführung nachinstalliert. Dieses Sprachpaket befindet sich im Ordner C:\Blade\de-de

Das Skript selbst führt folgende Schritte aus:

  • Prüfen des Registrierungsschlüssels, der Auskunft über die Installationsphase gibt
  • Einschalten des Auto-Logons als Administrator
  • Erzeugen eines neuen vSwitches
  • Erzeugen der virtuellen Netzwerkkarten für das Management OS
  • Zuweisen der IP-Adressen, wo nötig
  • Zuordnen der VLANs
  • Abschalten von IPv6

    (Anmerkung: Dieser Schritt ist optional, man sollte ihn nur nach genauer Prüfung umsetzen!)
  • DNS-Registrierung abschalten, wo sie unerwünscht ist
  • Sprachpaket installieren

Und hier die Skriptdateien zum Download:

Download: Hyper-V 2012 R2 Hosts per PowerShell einrichten  Hyper-V 2012 R2 Hosts per PowerShell einrichten (2,8 KiB, 2.104-mal heruntergeladen, letzte Änderung am 5. Februar 2014)

(Anmerkung: Alle Dateien sind nach *.txt umbenannt. Zur Ausführung müsst ihr die Endung .txt entfernen.)

© 2005-2023 bei faq-o-matic.net. Alle Rechte an den Texten liegen bei deren Autorinnen und Autoren.

Jede Wiederveröffentlichung der Texte oder von Auszügen daraus - egal ob kommerziell oder nicht - bedarf der ausdrücklichen Genehmigung durch die jeweiligen Urheberinnen oder Urheber.

Das Impressum findet sich unter: http://www.faq-o-matic.net/impressum/

Danke, dass du faq-o-matic.net nutzt. Du hast ein einfaches Blog sehr glücklich gemacht!