Managed to get Expedition working in Hyper-V on my Windows 10 laptop and simply sharing with community.
- Hyper-V is a Type 1 hypervisor available natively in desktop editions of Windows 7 and later on certain Windows editions. Note the Hyper-V role must be added. Strongly recommend Windows 10's Hyper-V due to out-of-box NAT support on the Default Network [virtual network].
- By comparison VMware Workstation is a Type 2 hypervisor (and arguably slower as a result).
- Not a comparison of Microsoft vs. VMware -- but of Type 1 vs. Type 2 hypervisors.
- PAN VM-Series has run on Hyper-V for some time. Panorama runs on Hyper-V as of 8.1 unofficially (since 8.1 brought Azure support). Given that I have PAN VM-Series and Panorama working in Hyper-V, Expedition was logically next.
None of the work discussed here is production ready due to lack of official support across the board. However, for network and system engineers with Hyper-V and not wanting to install VMware Workstation it works well.
TL;DR Edition
- Convert Expedition VMDK to VHD using StarWind V2V Image Converter
- Build new Hyper-V VM using VHD
- Replace Hyper-V Network Adapter with Hyper-V Legacy Network Adapter
- Modify /etc/network/interfaces and use correct interface name (likely from ens33 to enp0s10f0 or similar)
Long Form Edition
- Download Expedition (Expedition.tgz) and extract contents
- Download and install StarWind V2V Image Converter
- Launch StarWind V2V Image Converter and convert the Virtual Disk.vmdk to Microsoft VHD growable image. Both the source and destination will be Local Files.
- Local File - find the VMDK to convert
- Convert to Microsoft VHD growable image
- Pick your destination for the VHD
- Conversion takes a few minutes with SSD storage
- Create a new Hyper-V VM
- Generation 1
- 2048 or 4096 MiB RAM, disable Dynamic Memory checkbox. Mine runs in 2048 MiB just fine for just migrations. Haven't done much ML work.
- Leave the default networking in place as Not Connected – we will make changes in next step.
- Reference the converted VHD file when creating. Feel free to move/organize on-disk location as needed.
- Modify the freshly created Hyper-V VM
- Consider increasing from 1 CPU to more if doing ML work. Mine works fine with 1 CPU for just migration work.
- Remove the Network Adapter (click on it, then Remove)
- Add a new Legacy Network Adapter and connect it to the Default Switch for ease of use. Windows 10 Hyper-V the Default Switch [virtual network] provides a small IP network with DHCP, gateway, and is NAT'd using one of the workstation's working network adapters enabling outbound network/Internet access from the Default Switch [virtual network].
- Legacy Network Adapter is required. The [standard] Network Adapter will not function (unless you want to do even more work later).
- Boot the Hyper-V VM (Start and then Connect to the console)
- Login with default Expedition credentials
- Search dmesg for Ethernet interface name and update (with sudo) /etc/network/interfaces
- dmesg | grep ethEthernet interface name in this example is enp0s10f0
- sudo vim /etc/network/interfaces or sudo nano /etc/network/interfacesReplace ens33 (Expedition default) with Ethernet interface name determined from previous stepens33 replaced with enp0s10f0 (for example)
- Save changes to /etc/network/interfaces
- Reboot Expedition VM with sudo reboot
- Login and determine IP via ip address
- Connect via web browser
Enjoy your copy of Expedition running in Hyper-V.