7

Today I have been totally defeated by this infamous 2012R2 error:

Server Manager could not start the task due to the following error: Failed to open the runspace pool. The Server Manager WinRM plug-in might be corrupted or missing. 

I have repeatedly tried each of the solutions proposed here, here and here.

No luck. There is no single error in the event log. Of cause I can add-remove roles with Powershell or completely wipe this machine. Still I am looking for the normal solution to this simple problem.

Further testing have shown that my bug is repeatable. I have tested on virgin default fully updated Windows Server 2012 R2 Standard installation and was able to reproduce it. Problems start after this statement:

winrm invoke Restore http://schemas.microsoft.com/wbem/wsman/1/config/plugin @{}

Full details are below. Any ideas?

After domain controller upgrade from win2008 R2 to 2012R2 everything worked flawlessly.
[dcdiag /fix /q] showed nothing apart the error below. 
Error happened in a few hours after upgrade (not immediately):
  Source:        Microsoft-Windows-WinRM
  Event ID:      10155
  Level:         Error
  Description:
  The WSMan service failed to read configuration of the following plugin: 
   Microsoft.ServerManager. 

  The error received was -2144108144: %%-2144108144 
   The WS-Management service cannot process the request. Configuration for plugin: "Microsoft.ServerManager" is corrupted. This plugin needs to be reconfigured or deleted. Use the following command to delete a plugin configuration 

   winrm delete http://schemas.microsoft.com/wbem/wsman/1/config/plugin?Name=xyz 

   Or use the following command to restore default plugin configuration.  Note that all external plugins will be unregistered during this restore operation. 

   winrm invoke Restore http://schemas.microsoft.com/wbem/wsman/1/config/plugin @{}.

   User Action 
   Make sure this plugin configuration is valid.

I have run in the CMD window:
  winrm invoke Restore http://schemas.microsoft.com/wbem/wsman/1/config/plugin @{}

Then after server reboot Server Manager stopped working correctly with the error mentioned in the 1st paragraph.

Config and Windows details are below.

PS C:\> winrm quickconfig
WinRM service is already running on this machine.
WinRM is already set up for remote management on this computer.

PS C:\> winrm enumerate winrm/config/listener
Listener
    Address = *
    Transport = HTTP
    Port = 5985
    Hostname
    Enabled = true
    URLPrefix = wsman
    CertificateThumbprint
    ListeningOn = 127.0.0.1, 192.168.30.6, ::1

PS C:\> (Get-WmiObject -class Win32_OperatingSystem).Caption
Microsoft Windows Server 2012 R2 Datacenter

PS C:\> [System.Environment]::OSVersion.Version
Major         : 6
Minor         : 3
Build         : 9600
Revision      : 0
MajorRevision : 0
MinorRevision : 0

Anton Krouglov
  • 296
  • 1
  • 3
  • 12

5 Answers5

2

It appears that WinRM/WSMAN configuration has to be reset to default values. Thanks to this post I have found where does it reside. So copying HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WSMAN registry settings from the fresh Win 2012 R2 install to the problem machine eliminates this error.

Just for the case these settings as of 17 Oct 2016 from fully updated fresh install Win 2012 R2 Standard (English) are below:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WSMAN]
"StackVersion"="2.0"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WSMAN\AutoRestartList]

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WSMAN\CertMapping]

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WSMAN\Client]

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WSMAN\Listener]

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WSMAN\Listener\*+HTTP]

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WSMAN\Plugin]

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WSMAN\Plugin\Event Forwarding Plugin]
"ConfigXML"=""

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WSMAN\Plugin\Microsoft.PowerShell]
"ConfigXML"="                                                                                                                                                                                                                  "

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WSMAN\Plugin\Microsoft.PowerShell.Workflow]
"ConfigXML"="                                                                                                                                                                                                                                                                                   "

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WSMAN\Plugin\Microsoft.PowerShell32]
"ConfigXML"="                                                                                                                                                                                                                                                                                      "

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WSMAN\Plugin\Microsoft.Windows.ServerManagerWorkflows]
"ConfigXML"="                                                                                                                                                                                                                                                                                                                                                                                                                       "

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WSMAN\Plugin\SEL Plugin]
"ConfigXML"="        "

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WSMAN\Plugin\WMI Provider]
"ConfigXML"=""

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WSMAN\SafeClientList]
"WSManSafeClientList"=hex:00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,01

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WSMAN\Service]
"allow_remote_requests"=dword:00000001

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WSMAN\WinRS]

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WSMAN\WinRS\CustomRemoteShell]

Anton Krouglov
  • 296
  • 1
  • 3
  • 12
  • I have tried this Registry change and I am still getting this error after all of the suggestions above. Any ideas? – JukEboX Jul 24 '17 at 15:22
  • Have you tried other solutions? [1](https://social.technet.microsoft.com/Forums/exchange/en-US/5a1be253-7d4c-4bed-8750-c6052d39b7c8/failed-to-open-the-runspace-pool-the-server-manager-winrm-plugin-might-be-corrupted-or-missing?forum=winserver8gen), [2](https://serverfault.com/questions/733928/windows-server-2012-r2-cannot-install-any-role-or-features-using-gui-server-man), [3](http://www.lukebrowning.com/sysadmin/windows/windows-server-2012-winrm-corrupt-or-missing/) – Anton Krouglov Jul 25 '17 at 07:53
  • I have. Here is the information https://serverfault.com/questions/864878/unable-to-install-remove-server-features-due-to-winrm-missing-or-corrupt – JukEboX Jul 25 '17 at 12:00
  • ! I did recheck the registry key and foudn taht this was missing ""allow_remote_requests"=dword:00000001" My remote management works from server manager to server but still having an issue with installing roles. Will recheck more. – JukEboX Aug 25 '17 at 12:33
  • I have rechecked the registry and still unable to add/remove features. – JukEboX Aug 25 '17 at 17:50
2

The Link below helped solved the problem without making edit to my registry http://www.lukebrowning.com/sysadmin/windows/windows-server-2012-winrm-corrupt-or-missing/

jide jimoh
  • 21
  • 2
  • 3
    what does it say? – Pierre.Vriens May 25 '17 at 11:33
  • 2
    Links can go down. Please include the essential elements of the link in your answer. – I say Reinstate Monica May 30 '17 at 02:24
  • From the article: The first step is to run the following command to see what addresses you are listening on: netsh http show iplist I found that my machine was only listening on 192.168.0.2 (its main IP address). So, based on the solution I found, I added the loopback address (127.0.0.1) using the following command: netsh http add iplisten 127.0.0.1 – BanjoFox Aug 19 '19 at 13:39
2

In case you have multiple network interfaces (IP addresses) on your server - the key part from the @jide jimoh's blog post is:

netsh http add iplisten 127.0.0.1

Make sure you run this command with elevated permissions.

All credits to jide jimoh.

And no need to mess with the registry.

Sevenate
  • 121
  • 4
1

Check GPO policy. Maybe Remote Shell Access is disable. If this settings is disable, you will be able to add role and feature.

Computer Configuration > Policies > Administrative Templates >
    Windows Components > Windows remote Shell (Set to) "Enabled"
bjoster
  • 4,423
  • 5
  • 22
  • 32
Saif
  • 11
  • 1
  • Correction: Check GPO policy. Maybe Remote Shell Access is disable. If this settings is disable, you will not be able to add role and feature. – Saif Jun 18 '20 at 19:49
0

In my case, nor adding 127.0.0.1 or scv /scannow fixed the issue.

I just disabled the Windows Firewall and the Server Manager worked as expected. I was able uninstall Role/features successfully with the Server Manager GUI in the affected server, I don´t know the reason at all. I enabled the Windows Firewall after completed the process.

Fidel Orozco
  • 101
  • 2