MS Windows Workstation

How to create own custom MS Windows host for EVE: 

EVE Image Foldername Downloaded filename Version vCPU RAM HDD Format Qemu
win-7×64 Windows7SP1Ultimate_64 Bit.iso 7 Pro 1 8192 virtioa 2.12.0
win-8.1×64 Windows-8.1-install.iso 8.1 1 8192 virtioa 4.1.0
win-10x64Pro Windows-10×64-Pro.iso 10 2 8192 virtioa 5.2.0
win-11×64 Win11_EnglishInternational_x64v1.iso It is required to create new registry Keys during installation to bypass TPM, Secure Boot and RAM checking. 11 4 8192 virtioa 5.2.0
Instructions

Watch VIDEO

This How to is based on Windows 10×64 Pro image installation. The other windows versions are supported

For this you will need an actual Windows installation ISO.

We are using: Windows-10×64-Pro.iso. Be sure that distro name does not have spaces in the filename!
The procedure is the same for any other Windows version 7, 8.1, 10 hosts.

1. Create a new directory for this image according to the naming convention:

mkdir /opt/unetlab/addons/qemu/win-10x64-PRO/

2. Use WinSCP or FileZilla SFTP or SCP (port 22) to copy distro ISO image into the newly created directory path: /opt/unetlab/addons/qemu/win-10×64-PRO/

3. Go to that directory via CLI

cd /opt/unetlab/addons/qemu/win-10x64-PRO/

4. Rename this ISO file to cdrom.iso

mv Windows-10x64-Pro.iso cdrom.iso

5. Create a new virtual HDD named virtioa.qcow2. Size you can choose per your needs. This example is used 60Gb HDD.

/opt/qemu/bin/qemu-img create -f qcow2 virtioa.qcow2 60G

6. Create a new lab and add the newly created win-10×64-PRO node

7. Connect the node to your home LAN cloud/internet in order for it to be able to get updates from the internet

8. Start the node inside the lab and customize the installation of your Windows as you like, as you have connected it to your home LAN and internet this installation will be like any normal Windows installation

9. IMPORTANT: When windows installation asks you to choose an HDD where Windows will be installed, choose Load driver, Browse, choose FDD B/storage/2003R2/AMD64 or x86, (AMD or x86 depends which version of windows you are installing 64 or 32 bit), click next and you will see HDD RedHat VIRTIO SCSI HDD now.

10. Select this HDD and continue to install Windows as usual.

11. Optional: if you would like to use this image with the EVE RDP console, then you have to allow RDP on this Windows machine and create a user and password. In this example, we use user/Test123. Be sure that in the Windows Firewall the Remote Access inbound rules are permitted for Public access.

12. Finish installation and shutdown properly the VM from inside VM OS. Start/shutdown

 

IMPORTANT: Commit the installation to set it as the default image for further use in EVE-NG:

13. On the left side-bar within the lab in the EVE Web-UI choose “Lab Details” to get your lab’s UUID details: In this example: UUID: 3491e0a7-25f8-46e1-b697-ccb4fc4088a2

14. Find out the POD ID of your used and the Node ID of your newly installed node.

The POD number is assigned to your username, and can be found in the EVE GUI, Management/User Management. The Admin user uses POD number 0 by default.

The Node ID can be obtained by right clicking the node on the topology. In this Example it is 8

15. From the EVE CLI, locate the installed image and commit your changes to be used as default for further use in EVE-NG:

cd /opt/unetlab/tmp/0/3491e0a7-25f8-46e1-b697-ccb4fc4088a2/8/
/opt/qemu/bin/qemu-img commit virtioa.qcow2

16. Remove cdrom.iso from /opt/unetlab/addons/qemu/win-10×64-PRO/

cd /opt/unetlab/addons/qemu/win-10x64-PRO/
rm -f cdrom.iso

DONE

Advanced instructions on how to make your image smaller in size (sparsify&compress).

  1. After you have done all the steps above and your default image is created, you can compress its HDD and make it smaller.

IMPORTANT: for compressing an image you must have sufficient free space on your EVE host, the free space must exceed the total space (60GByte in this example) of the HDD you plan to shrink. The space needed can vary but will be the total space of the disk to be shrunk plus the size of the final sparsified and compressed image. To be safe you should have double the size of the HDD you want to shrink as free space on your EVE host. In our example we needed 65Gb of free HDD space. Once this process is done, the temporary file(s) will be deleted and free space reclaimed.

  1. From the CLI: go to your windows image directory:
cd /opt/unetlab/addons/qemu/win-10x64-PRO

and perform the sparsify command:

virt-sparsify  --compress virtioa.qcow2 compressedvirtioa.qcow2
  1. This will take some time and another compressed image will be created in the same image directory (win-10×64-PRO)
  2. now you can rename your original virtioa.qcow2 file to orig.qcow2
mv virtioa.qcow2 orig.qcow2
  1. Rename the compressed image name to virtioa.qcow2:
mv compressedvirtioa.qcow2 virtioa.qcow2
  1. now you can test your new compressed image on a lab, just wipe the node and start it.
  2. If the compressed node works fine, you can delete your original source image orig.qcow2: