System Center Virtual Machine Manager (SCVMM) offers a great feature to provision a Hyper-V host or cluster from bare-metal computers. Bare-metal provisioning is a feature of SCVMM allowing rapid and consistent deployment of Hyper-V servers in your environment. Bare-metal deployment with SCVMM has many parts and components that interact with each other.This is a really nice built-in feature to automate OS deployment process for bare-metal servers.
Last month, Microsoft released System Center Semi-Annual Channel (1807), you can check the announcement here.
While deploying the OS on a physical computer, I received the following error.
OS Deployment failed on physical computer 33323137-3831-5A43-3134-343930343052.
Verify that the physical computer profile and the physical computer information match.
As you can see the error message is not clear and is totally misleading.
I switched to the physical server and I noticed a different error message while transferring and converting the virtual hard disk (Error: 80070570).
Finding the cause
I have used in the past multiple times bare-metal OS deployment without any issue. So, what is changed in this setup?
Well in this setup, I have installed Windows Admin Center (WAC) on the same SCVMM server, yes this is totally supported, however, when I installed Windows Admin Center, I used the default port for the Server Management Site which is listening on Port 443. This caused a conflict with SCVMM server, because System Center Virtual Machine Manager uses BITS (Background Intelligent Transfer Service) to transfer content between the SCVMM Server, the Library Server and the Hyper-V Hosts.
So, if there is any service or another application on SCVMM server that is using the HTTPS port 443, the VHDX transfer to the physical computer will fail.
Fixing the issue
Now, there are two options to fix this issue:
- Change Windows Admin Center (WAC) Management Server Site to another port.
- Configure SCVMM to use another port for BITS transfers between its Library Server and the Hyper-V Hosts.
I decided to go with option 2 and use another port for BITS transfer.
Now take the following steps:
- On your SCVMM server, open the Registry editor.
- Browse to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft System Center Virtual Machine Manager Server\Settings.
- Locate BITSTcpPort which should have a value of decimal 443. Change this to some port unused in your environment. (e.g. 7500). You need to ensure that the newly selected port is not blocked by a Firewall between SCVMM and the involved Hyper-V hosts.
- Restart Virtual Machine Manager Service so that the change takes effect.
You can also run the following PowerShell commands to automate the steps above.
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Microsoft System Center Virtual Machine Manager Server\Settings\" -Name BITSTcpPort -Value 8500 -Verbose
Get-Service -Name "SCVMM*" | Restart-Service -Verbose
Now restart the bare-metal deployment and you are good to go.
Hope this helps someone out there!
Thank you for reading my blog.
If you have any questions or feedback, please leave a comment.