Feature On Demand Teil 1: Minimale Server GUI - Was ist das

Gilt für: Windows Server 2012, Windows Server 2012 R2

Die mit Windows Server 2012 eingeführten "Features on Demand" (Features bei Bedarf) ermöglichen es, wie der Name schon sagt, Features bei Bedarf hinzuzufügen und zu entfernen. Einem speziellen Feature möchte ich mich nun mit dieser Beitragsreihe widmen: Der minimalen Benutzeroberfläche (Server-GUI-Mgmt-Infra).

Der Vorgang der Installation kann ohne weiteres auch auf andere Features genauso angewandt werden. Um herauszufinden, wie ein gewünschtes Feature genau heißt, können wir das Get-WindowsFeature Cmdlet verwenden.

Aber nun zuerst zu der Frage, was man unter der "minimalen Benutzeroberfläche" versteht und für welche Zwecke man sie verwenden kann.

Für was benötige ich die minimale Benutzeroberfläche?

Wie eingangs erwähnt, wurde neben den Features on Demand ebenfalls die minimale Server GUI mit Windows Server 2012 eingeführt.

Diese ähnelt der regulären Oberfläche sehr stark, jedoch werden hier der Internet- sowie der Windows-Explorer, der Desktop und der Startbildschirm nicht mitinstalliert.

Das tolle am Feature on Demand ist, dass die Rollen immer wieder hinzugefügt und entfernt werden können. Hierdurch ist es dann möglich, den Server mithilfe der GUI zu administrieren und hiernach wieder auf die Core-Version zu reduzieren. Dies hat den Vorteil, dass der Server so leicht zu bedienen ist, wie ein herkömmlicher Server, bei welchem die Benutzeroberfläche mitinstalliert wurde. Er im Gegenzug aber auch weiterhin die Vorteile eines Core-Servers bietet, wie z.B. dass weniger Ressourcen benötigt werden und die Angriffsfläche durch das Fehlen der GUI sehr stark verkleinert wird.

Wie sollte ich vorgehen um die Features on Demand zu verwenden?

Hier existieren die beiden folgenden Ansätze, welche speziell für die graphischen Oberflächen relevant sind: Bottom-Up und Top-Down.

Vom Core-Server zur minimalen GUI (Bottom-Up)

Hierbei wird bei der Installation des Servers die Standartinstallation gewählt, was der Core-Installation unter Windows Server 2008R2 entspricht. Hiernach wird dann mithilfe des Tools DISM [1] oder dem PowerShell Cmdlet Install-WindowsFeature [2] (ehem. Add-WindowsFeature) das gewünschte Feature installiert.

Falls das Feature nicht im lokalen Speicher vorhanden ist, benötigt man ein Installationsmedium, wie z.B. das Windows Image File (.wim) oder die .iso-Datei, mit welchem der Server installiert wurde.

Hier sollte ich dazu sagen, dass diese Vorgehensweise prinzipiell arbeitsaufwändiger ist.

Wieso sollte ich es lieber anders machen?

Dies hängt damit zusammen, dass das Installationsmedium immer auf genau demselben Stand sein muss wie der Server, d.h. die .iso oder die .wim müssen bei jedem Update mithilfe des DISM-Tools ebenfalls gepatched werden [3].

Von der Vollinstallation zur minimalen Shell oder Core-Installation (Top-Down)

Dieser Ansatz ist die zu bevorzugende Variante der Installation. Hier wird während der Installation die Option "Server mit graphischer Oberfläche" gewählt. Von hier aus, können wir dann erst einmal alle Updates installieren und benötigte Features einfach konfigurieren.

Hiernach entfernen wir die GUI-Shell mithilfe des PowerShell Cmdlets Uninstall-WindowsFeature. Bei Bedarf kann dann ebenfalls noch die minimale GUI entfernt werden, um eine Core-Version zu erhalten.

Wieso ist dieses Vorgehen besser?

Wenn man die Features schon einmal installiert hatte, werden die Binaries für die benötigte Installation der Features nur dann entfernt, wenn beim Deinstallieren des Features der Parameter -Remove verwendet wird. Ansonsten bleiben die Installationsdateien auf dem System erhalten und werden, genau wie das Betriebssystem selbst, mitgepatched.

Für die hier beschriebenen Wege kann auch als Quelle der Windows Update Server angegeben werden, jedoch ist dies in den meisten Umgebungen nicht das Mittel der Wahl, da hier unter Umständen ziemlich viel Netzwerk-Traffic anfallen kann.

Das war's dann schon mit dem ersten Teil der Reihe "Feature On Demand: Minimale Server GUI". Im 2. Teil dieser Reihe zeige ich euch, wie man mithilfe der PowerShell dieses Feature installieren und entfernen kann.

[1] https://msdn.microsoft.com/de-de/library/hh825236.aspx
[2] https://technet.microsoft.com/en-us/library/jj205467.aspx
[3] http://blogs.technet.com/b/joscon/archive/2012/11/14/how-to-update-local-source-media-to-add-roles-and-features.aspx

Hier geht es zum zweiten Teil der Blogeintragsreihe.