我有一个非常奇怪的要求。
我的雇主有一种只能在 Windows 7 嵌入式机器上运行的产品,现在他们想在 Azure 中拥有一些测试虚拟机。
现在,当我尝试通过 RDP 连接到机器时,它无法连接(本地我可以通过 RDP 连接到机器,因此 RDP 设置是正确的)。
我做了什么:
- 设置运行 Hyper-V 的本地 Windows Server 2019 计算机。
- Windows 7 Embedded 机器已使用 Macrium Reflect 捕获并在 VIBoot/Hyper-V 中运行
- 仅当我使用 Hyper-V 中的“旧版网络适配器”功能时,机器才会工作
- 我已设置从此计算机到 Azure 的故障转移
- 该机器在 Azure 中发生故障转移,我可以看到虚拟机,并在“启动诊断”选项卡中看到它正确启动 https://i.stack.imgur.com/BVIYw.png
(机器启动、自动登录并且这个错误是预料之中的,所以一切都按预期进行)。
添加了公共 IP 地址/网络适配器。
现在,当它启动时,我看到它在右下角给我一个“网络适配器已拔出”的通知。
按照以下说明手动安装 Azure 代理指示并再次尝试故障转移。
有谁能有什么想法可以帮助我进一步发展吗?
我并没有在很多方面寻找这种不好的做法,因为我已经意识到了这一点,并且已经传达了这一点。
另一种方法是在 Azure 中拥有一个 Server2019 HV 主机,并让此 Windows 7 Embedded 作为 VM 在该 VM 上嵌套运行,但这会浪费相当多的资源,并且最好在没有中间服务器的情况下执行此操作。
答案1
您需要安装Hyper-V 集成服务在将 VM 迁移到 Azure 之前,请先在 VM 中安装适当的驱动程序,否则它将没有适当的驱动程序在 Hyper-V 中运行(从而在 Azure 中运行);具体来说,它将缺少 NIC 驱动程序,因此将无法联网。
但是,HVIS ISO 映像在 Windows Server 2016 和 2019 上不再可用,因为 Hyper-V 驱动程序已集成到 Windows 中一段时间;获取其副本的唯一方法是从 Windows Server 2012 R2 安装介质或安装了 Hyper-V 角色的 Windows Server 2012 R2 服务器中检索它,如文档所述这里互联网上也有各种版本的版本,例如这里。