Windows Server 2008 R2

Windows on Windows (WoW) in Server Core R2

As you’re probably aware Windows Server 2008 R2 is not available in a 32bit (x86) version. Only 64bit versions (both x64 and IA64) are available, but Microsoft happily provides 32bit Windows on Windows (WoW) support, so admins can install their favorite 32bit programs on top of their 64bit installations.

About Windows on Windows 64-bits (WoW64)

WoW (Windows on Windows) technology offers backward compatibility between a processor architecture and one downlevel processor architecture. There’s a 32bit version of the WoW technology. It allows compatibility with 16bit applications. x64 versions of Windows since Windows XP and IA64 versions of Windows since Windows Server 2003 also have WoW onboard. This version allows to run 32-bit application in our 64-bit environments.

WoW offers backward compatibility with one previous architecture only. WoW in 32-bit Operating Systems can run (some) 16-bit applications and WoW in 64-bit Operating Systems can run 32-bit applications. The drawback is you cannot run any 16-bit applications on Microsoft’s 64-bit Operating Systems.

About Server Roles and Server Features

Not every Windows Server is implemented in the same fashion. Therefore Microsoft has modularized most of the services a Windows Server can offer into Server Roles and Server Features. By adding a Server Role or Server Feature, an administrator can extend the services the server offers. Popular Server Roles are the File Server, Print Server and Application Server. Server Features aid Server Roles in delivering the services. The Failover Clustering feature in Windows Server Enterprise and Windows Server Datacenter for instance helps make a Server Role more redundant. Server Roles and Server Features can also be removed from a server, which will automatically delete the installed binaries, resulting in a more secure Operating System.

WoW as a Server Core Feature

With Microsofts ongoing strategy to further modularize the Operating System, it’s apparent Windows on Windows (WoW) became a Server Feature. With Microsoft Windows Server 2008 R2 being 64bit only, it’s a big plus the WoW functionality can be removed when unneeded or installed when needed.

Decision

When planning for Windows Server 2008 R2, the Server Core team had to decide between:

  • configuring Windows on Windows (WoW) as a Server Feature, installed by default.
  • configuring Windows on Windows (WoW) an optional Server Feature, allowing administrators to install it when they need 32bit support.

They decided to make WoW an optional feature and shipped as such as part of Windows Server 2008 R2 Beta.

Feedback

However, during the Beta period, the Server Core team received a lot of feedback on weird issues when administrators tried to install 64bit applications. Typically when installing a MSI package they would receive the following error message:

Error 1719. The Windows Installer Service could not be accessed. This can occur if the Windows Installer is not correctly installed. Contact your support personnel for assistance.

 

When looking on the Internet for a resolution, typically they would find advice to reboot the system, reregister the Windows Installer service, start the Installer service (net start msiserver) and grant the System account “Full Control” permissions to the HKEY_CLASSES_ROOT hive of the registry. These actions would typically not result in a resolution of the problem.

Running the following command line before installing the application, however, resolved the problem:

Dism /online /enable-feature /featurename:ServerCore-WOW64

 

After installing the application the above command could be run again, but this time with enable-feature replaced with disable-feature.

Apparently the installer wasn’t a full x64 installer and according to Andrew Mason, Principal Program Manager on the Server Core team, the issue occurred often.

Change

For the Release Candidate of Windows Server 2008 R2, the Server Core team decided to enable the Windows on Windows feature by default. From that moment on Server Core installations followed the same approach to 32bit compatibility as Full installations do.

This decision helps to:

  • make Server Core a more predictable installation type, because Server Core installations and Full installation offer the same 32bit compatibility out of the box.
  • avoid confusion, because the error is a very generic error.
  • give Microsoft the opportunity to communicate to developers to take into account Windows on Windows (WoW) and 32bit backward compatibility is not a given in Windows anymore.
  • give Developers time to clean up their acts.

The only downside to this decision is the binaries involved with Windows on Windows (WoW) are installed by default, resulting in a bigger footprint, higher memory usage and some attack surface.

Concluding

In a x64 Server Core installation of Windows Server 2008 R2, the Windows on Windows Server Feature is enabled by default. This change was made between Windows Server 2008 R2 Beta and Windows Server 2008 R2 Release Candidate. The change was based on feedback.

You can uninstall the WoW Server Role by executing the following command:

Dism /online /enable-feature /featurename:ServerCore-WOW64

 

You do not need the WoW Server Role on Server Core installations of Windows Server 2008 R2 to be able to install and run the Domain Controller role. (This was a bug in pre-release versions of Windows Server 2008 R2)

On Hyper-V Server 2008 R2 installations, Windows on Windows 64 support is not installed by default. One might argue this is the first true 64bit-only Microsoft Operating System…

Further reading

WoW64 Support on Server Core in Windows Server 2008 R2
WoW64
Running 32-bit Applications on Windows Server 2008 R2, Server Core
Implement Minimalist Solutions using Windows Server 2008 R2 Server Core
Q. How do I install or remove Windows on Windows 64 (WoW64) on my Windows Server 2008 R2 server core installation?
Wow64 support for 32bit applications – Quack
Slideshare – SVR309 What’s New in Server Core for Windows Server 2008 R2

Some Server Core Domain Controllers heading for a dead end street

Dead end street ahead

You know, in terms of deploying servers in a smart way, so you can actually utilize them for as long as their economical lifecycle in a supported fashion without a need to reinstall them, I’ve made a stupid decision in advising IT Pros to deploy Server Core Domain Controllers in the last two years.

The problem, you see, is the product team responsible for Active Directory has made a design choice to leave the old world of RPC behind and to introduce a new way to manage Domain Controllers: using the Active Directory web service.

Windows Server 2008 R2 is the first Windows Server product featuring this new service, which besides the server component of the web service, also unlocks the usage of a whole load of other goodies like Active Directory PowerShell cmdlets and the Active Directory Administrative Center (ADAC). (when used from a Windows 7 or Windows Server 2008 R2-based management box)

While the decision was made a while ago, only now do I realize the impact. Now that Microsoft released the Active Directory Management Gateway Service (Active Directory Web Service for Windows Server 2003 and Windows Server 2008) and both Jorge and Tomasz blogged about it. This Stand-alone Update Package basically adds the Active Directory Web Services service to Domain Controllers, running:

  • Windows Server 2003 with Service Pack 2
  • Windows Server 2003 R2 with Service Pack 2
  • Windows Server 2008
  • Windows Server 2008 with Service Pack 2

   

Except there’s one problem: .Net Framework 3.5 with Service Pack 1 (SP1) is required. Whoops! That’s not exactly available on Server Core installations of Windows Server 2008 in a supported fashion.

As a consequence Windows Server 2008-based Server Core Domain Controllers can not be used in combination with the Active Directory PowerShell cmdlets and the the Active Directory Administrative Center (ADAC).

Note:
Windows Server 2008 R2-based Server Core Domain Controllers, however, can be managed using the Active Directory PowerShell cmdlets and the Active Directory Administrative Center (ADAC). One of the new features of Server Core installations in Windows Server 2008 R2 is the availability of the .Net Framework.

 

Actually when you try to install the Active Directory Management Gateway Service on a Windows Server 2008-based Server Core Domain Controller a check is performed upon your system.

 Error_SC_ADWGS

Server Core installations fail the check. The result is an error stating “The update does not apply to your system” as shown above on a x64 Server Core installation of Windows Server 2008 (OperatingSKU 13). This box was setup as a Domain Controller and configured with the Primary Domain Controller emulator (PDCe) FSMO role (DomainRole 5).

    

Concluding

When running an environment with Windows Server 2008-based Server Core Domain Controllers, a requirement to use the Active Directory PowerShell cmdlets or Active Directory Administrative Center (ADAC) implicates the need to reinstall the Windows Server 2008-based Server Core Domain Controllers as Full installations or the need to upgrade the Windows Server 2008-based Server Core Domain Controllers to Windows Server 2008 R2-based Server Core Domain Controllers.

Further reading

Download Details: Active Directory Management Gateway Service 
What does the Active Directory Management Gateway Service do?  
What’s New in AD DS: Active Directory Web Services   
The Active Directory Management Gateway Service is now available 
Active Directory Management Gateway Service for Windows Server 2003 and 2008 
Manage YOUR Windows 2003/2008 DCs USING AD POWERSHELL !   
The Active Directory Management Gateway Service is now Available for Windows Server 2008 and Windows Server 2003 
Active Directory Management Gateway Service 
Have you successfully installed Active Directory Management Gateway Service on 2008? 
Active Directory Management Gateway Service is RTW 
Q. What is Active Directory Management Gateway Service (ADMGS)?   
What is Active Directory Management Gateway Service (ADMGS)? 
Active Directory Gateway WebService is available for ‘legacy’ OSes