How to install EVE-NG on Microsoft Hyper-V

Recently, my license for Cisco VIRL expired and I wanted to test alternatives to have a lab on my laptop.

I got used to install the client and the server parts of VIRL on my laptop, to not have to worry about connectivity when I want to do a lab or a demo to a colleague or a customer. With the exceptional opportunities of the different cloud solutions actually, this is probably not the best solution, but it suits me well for a small lab and I’d like to continue to have this possibility.

So, as an alternative to Cisco VIRL, I had two obvious choices: GNS3 or EVE-NG.

For running one of the three solutions (including VIRL) on a laptop under Windows 10, it is recommended and documented to use VMware Workstation. But have a problem here, I use Microsoft Hyper-V for other VMs tests, as well as for Docker for Windows. And VMware Workstation does not coexist well with Microsoft Hyper-V on the same machine. For example, to start a VM under VMware workstation when Hyper-V start as a service, I must first stop Hyper-V, do a reboot, and then I can start the VM under VMware. Not really sexy.

So, I searched a documentation or a blog post about how to install and run GNS3 or EVE-NG under Hyper-V. Because, after all, this is just an Ubuntu server running on a VM.

For GNS3, I found a pretty good blog, here: https://cisco.zacandsarah.com/node/1
And after two hours I could run my first simulation without any problem. (Note: this blog does not respond from time to time, and currently it seems down).

Then, I wanted to test the same with EVE-NG. In this case, did not find any documentation or post of someone who has already installed it under Hyper-V. I threw a bottle to the sea (Twitter) and got a promising answer that EVE-NG has been successfully installed on Microsoft Azure (see it on YouTube here, a great videos from @theLANtamer). So, I thought, let’s try on Hyper-V!

1. Ubuntu installation

Some basic prerequisites:

Your laptop must have Hyper-V already installed and a vSwitch already created with Internet access.

For information, I made this install with a Lenovo T450s laptop with Windows 10 pro and 12GB of RAM. So, I assigned 8GB of RAM and 4vCPU to the server. This is probably the minimum to run IOU/IOL and Dynamips images, and insufficient for topology with CSR1000V and/or Nexus-9k. Of course, you must adapt these values according to your own hardware.

Change the hosts file to look as below. I still not see the goal of this change but it’s on the documentation:
(If you don’t know VI, you can use nano or another editor of your choice. To install nano, type: apt-get install nano )

Finally, we must enable nested virtualization. As I know, the only way to do this is with PowerShell. So, open a PowerShell prompt as administrator on your PC and write this command:
(Where “EVE-NG” is the name of the VM)

Then the command line to copy the files is pretty simple: pscp foobar.txt your_username@remotehost.edu:/some/remote/directory

Conclusions and other resources

As I wrote at the beginning of this post, with the current possibilities offered by the cloud, at ever lower prices, it is not necessarily useful to have the EVE-NG / GNS3 / VIRL server directly on his machine. Especially that the resources are limited if you want to make a big lab or start few Nexus 9k for example. But, it may be useful to be able to start a small lab in 2 minutes on his own PC, without worrying about Internet connectivity.

hi
i have a question
in eve scenario devices can communicate with outside environment?
for example we have tow vm on hyper_v
on one of them eve-ng and on the other windows server 2016
in eve-ng scenario we have router
can we see the router from windows server?(do they have ping each other?)
with respect

The Author

Jerome Tissieres is a multi-vendor certified network systems engineer with over 20 years of successful experience in building and operating enterprise, services providers and data-center IP networks.Jerome has also been chosen to be a 2019 Cisco Champion!

Pin It on Pinterest

Notice: This website or its third-party tools use cookies, which are necessary to its functioning and required to achieve the purposes illustrated in the privacy policy.
By closing this banner, clicking a link or continuing to browse otherwise, you agree to the use of cookies.Ok