Getting Error “Error (2912): "An internal error has occurred trying to contact the server: NO_PARAM: NO_PARAM” while trying to Deploy a Virtual machine in System Center Virtual machine Manager(SCVMM)

 

Here is another interesting VMM issue on which I worked recently.

We were getting the following Error in the VMM Jobs while trying to deploy a VM:

Error (2912): "An internal error has occurred trying to contact the <HOST_NAME> server: NO_PARAM: NO_PARAM

This Error can come if the VMM certificate of the managed Hyper-V host in the VMM server certificate store does not match with the VMM certificate on the managed host.  

 

So we collected the VMM Tracing to see what’s happening here and here is what we saw in the Trace:

 

02.c01.local:5985], Verb: [INVOKE], Method: [AddPeerCertificate], Resource: [https://schemas.microsoft.com/wbem/wsman/1/wmi/root/scvmm/AgentManagement],{00000000-0000-0000-0000-000000000000}

[2]06E8.15A0::?2015?-?03?-?23 18:26:28.161 [Microsoft-VirtualMachineManager-Debug]0,4,CertificateServices.cpp,1104,CCertificate::GetSubjectName: certificate issued to: [Host1.contoso.local],{00000000-0000-0000-0000-000000000000}

[2]06E8.15A0::?2015?-?03?-?23 18:26:28.161 [Microsoft-VirtualMachineManager-Debug]0,4,CertificateServices.cpp,165,CCertificate::GetRightRootStoreName: store name according to platform: [TRUSTEDPEOPLE],{00000000-0000-0000-0000-000000000000}

[2]06E8.15A0::?2015?-?03?-?23 18:26:28.161 [Microsoft-VirtualMachineManager-Debug]0,4,CertificateServices.cpp,1153,CCertificateServices::GetSCVMMCertificate: looking for certificate for [Host1.contoso.local] in [TRUSTEDPEOPLE],{00000000-0000-0000-0000-000000000000}

 

As we can see that VMM is trying to look for the Certificate for the Managed Host in its TRUSTEDPEOPLE Store.

 

We can check the Certificate on the VMM server by navigating to the certificate store (computer account) and check the certificate of the managed host under the Trusted People -> Certificates. Check the Thumbprint on that Certificate and then go to that Host and check the Certificate under Personal -> Certificates, if the Thumbprint of this Certificate and the Thumbprint on this Host’s certificate on the VMM server matches, then its fine, but if it doesn’t match, then it can cause this kind of an issue.

 

I have shown an example of how the Certificates should like in an ideal scenario.

 

This Cert below is on VMM server’s “TrustedPeople” Store of one of the Managed Hosts.

 

clip_image002

 

And the Cert below is on the Managed Host itself in its Computer’s Personal Store.

 

clip_image004

 

So, as you can see the Thumbprint of both the Certificate matches. And that’s how it should be. If the Thumbprint of these two Certs doesn’t match then we can get into an issue which we have discussed here.

However in this case the Certificates did not match as expected.

 

To fix the issue we had to run the below PowerShell commands:

 

$credential = get-credential

Get-VMMManagedComputer -ComputerName "HostName" | Register-SCVMMManagedComputer -Credential $credential

 

NOTE: After the first command above we will have to provide the Local Administrator’s Credentials of the Host when prompted.

And after the second command VMM will Import the Host’s Certificate from the Host to the VMM server’s TRUSTEDPEOPLE store.

 

 

After performing the above steps, when we tried to deploy the VM, it got Deployed fine.

 

Author:

Nitin Singh

Support Escalation Engineer

Microsoft Security and Manageability Division