1

I have a really weird request.

My employer has a product that only runs on Windows 7 embedded machines and now they want to have some test VMs in Azure.

Now when I try to RDP into the machine it doesn't connect (locally I can RDP to the machine so RDP settings are correct).

What I did:

  1. Set up a Local Windows Server 2019 machine that runs Hyper-V.
  2. The Windows 7 Embedded machine has been captured with Macrium Reflect and runs in VIBoot/Hyper-V
  3. The machine will only work when I use the "Legacy Network Adapter" function in Hyper-V
  4. I have set-up failover from this machine into Azure
  5. The machine fails over in Azure and I can see the VM and see that it boots correctly in the "Boot Diagnostics" tab https://i.stack.imgur.com/BVIYw.png

(Machine boots, does an autologon and this error was expected so everything went as expected).

  1. Added a public IP address/network adapter.

  2. Now while it is starting I saw it gave me a "network adapter unplugged" notification in the bottom right.

  3. Manually installed the Azure agent as per instructions and tried failover again.

Does anyone have an idea that can help me further along?

I'm not looking for all the many many many ways this is bad practice as I am already aware and have already communicated that.

The alternative would be to have a Server2019 HV host in Azure and have this Windows 7 Embedded run Nested as a VM on that VM but that is wasting quite some resources and would prefer to do it without the intermediate Server.

Dave M
  • 4,514
  • 22
  • 31
  • 30
Levi
  • 11
  • 1

1 Answers1

1

You need to install the Hyper-V Integration Services in your VM before migrating it to Azure, otherwise it will not have the appropriate drivers to run in Hyper-V (and thus in Azure); specifically, it will be lacking the NIC drivers and thus will have no networking.

However, the HVIS ISO image is not available anymore on Windows Server 2016 and 2019, because Hyper-V drivers have been integrated into Windows for a while; the only way to get a copy of it is to retrieve it from the Windows Server 2012 R2 install media or from a Windows Server 2012 R2 server with the Hyper-V role installed, as documented here. There are also various copies of it floating around the Internet, such as described here.

Massimo
  • 70,200
  • 57
  • 200
  • 323
  • Ah forgot to mention that, I have tried that but to no avail, the Server2008R2 drivers do not work for Windows 7 embedded it seems. I tried manually installing it with DISM/PKGMGR but that errored out (I'll see if I can reproduce the error and post it in the question. This was actually part of another issue I tried to resolve which was that the VM would only have mouse support if I used Windows 10 as a Host OS but the mouse would not work on a Server2019 Host. I ended up figuring out that the mouse worked fine in RDP so I start the VM and just RDP to it instead of using Hyper-V's Monitor – Levi Apr 07 '21 at 20:10
  • 1
    If you can't get the Hyper-V network drivers to work (which seems to be the case, as you said the VM only works if using a legacy network adapter), then that VM will never be able to run in Azure. – Massimo Apr 07 '21 at 20:30
  • Also, you need to install the version of HVIS bundled with Windows Server 2012 R2, not the one from Windows Server 2008 R2. – Massimo Apr 07 '21 at 20:31
  • Have you tried downloading `vmguest.iso` from the last page I linked and running the installer inside the VM? – Massimo Apr 07 '21 at 20:32
  • Hmmm I thought since 2008R2 is the Server equivalent of Windows 7 that would be the one that had the correct version of the vmguest.iso. I will try the 2012R2 version of that ISO. – Levi Apr 08 '21 at 07:49
  • WS2008R2 has an older version of the HVIS, which needs to be updated to WS2012R2 level in order to run on more recent Hyper-V systems; the same goes for Windows 7. – Massimo Apr 08 '21 at 10:52