Archive for November, 2018

New in Windows Server 2019: Server Core app compatibility feature on demand

Microsoft has released Windows Server 2019, so it’s time to look at Microsoft’s latest and greatest.
One of the most exciting features Microsoft added to Windows Server 2019 is the ability to add additional app compatibility to Server Core installations.


About App Compatibility on Server Core

One of the biggest challenges with embracing Server Core as an administrator is that not many software vendors have specifically written their products for Server Core installations of Windows Server, or have tested their products on Server Core installations of Windows Server. As you might expect, just like desktop software, these products are tested on Windows Server installations with the Desktop Experience (formerly known as Full Installations), with administrative privileges.
Unfortunately, the challenge isn’t limited to software packages or agents. In the past, this resulted in cases where Server Core wasn’t installed on HP-branded servers, simply because the tools to team the built-in networking adapters was only available as graphical tools. They couldn’t be used…

Windows Server’s ability to temporarily run with the Desktop Experience to install and configure parts of the Operating System, software packages and agents, has eased the process of embracing Server Core. In the end, though, the conclusion from many admins was that it was not worth their time to go this route, because when they removed the GUI layers, eventually things still broke.


App Compatibility on Windows Server 2019

In Windows Server 2019, GUI layers can’t be removed. You could do this in Server Core installations of Windows Server 2012 and Windows Server 2012 R2. However, since Windows Server 2016 you can no longer do this. It is expected to remain this way for long-term servicing branch/channel (LTSB/LTSC) versions of Windows Server. The choice between Server Core installation and Windows Server with the Desktop Experience is to be made during installation and will remain this way until reinstallation of Windows Server or decommissioning of the server.

App Compatibility Feature on Demand (FoD)

To ease this pain, and to improve the adoption of Server Core installations on Windows Server for good reasons, Microsoft introduces the Server Core App Compatibility feature on demand feature in Windows Server 2019. This feature significantly improves the app compatibility of Windows Server Core installations, by including a subset of binaries and components from Windows Server with the Desktop Experience, without adding the Windows Server Desktop Experience graphical user interface (GUI) itself.

Specifically, the App Compatibility feature adds:

  • Microsoft Management Console (mmc.exe)
  • Event Viewer (Eventvwr.msc)
  • Performance Monitor (PerfMon.exe)
  • Resource Monitor (Resmon.exe)
  • Device Manager (Devmgmt.msc)
  • File Explorer (Explorer.exe)
  • Windows PowerShell (Powershell_ISE.exe)
  • Failover Cluster Manager (CluAdmin.msc)


This way, the functionality and compatibility of Server Core is increased, while keeping it as lean as possible.

As you can see, many of the tips and tricks that were provided on working with Server Core evolve around absent tools that can now (temporarily) be added.


Getting started with the App Compatibility Feature on Demand

This optional feature on demand is available on a separate ISO and can be added to Windows Server Core installations and images only, using DISM.exe.

Download the ISO

First, download the Windows Server 2019 Features on Demand ISO image file is available on the Microsoft Evaluation Center. For MSDN subscribers and current Microsoft volume licensing customers, the Features on Demand (FoD) image file is also available in their respective download centers.

This downloads is called en_windows_server_2019_features_on_demand_x64_dvd_c6194375.iso and weighs 335 MB.

Add the App Compatibility feature

Sign into the Server Core installation with local administrator rights, mount the ISO-file or insert is as removable media, and execute the following command:

dism.exe /Online /Add-Capability /CapabilityName: “ServerCore.AppCompatibility~~~~” /Source: E: /LimitAccess

After the command completes, restart the Server Core installation.