Virtualization solutions for Linux - pros, cons and hardware requirements

nivel.egres

New Member
Hello everyone!

I am planning to buy/assemble a linux workstation for home and one of the requirements is running Windows in a virtual environment. This raises several questions
a) what are the hardware requirement to have it run smoothly?
b) what's the best virtualization solution (I am happy to go commercial if that reduces PIA)?
c) how do I make the virtual machine interact with Linux seamlessly (e.g. exchange files)?
d) anything else I should think about?

Thanks in advance. Any thoughts/ideas are welcome!
 


dos2unix

Active Member
Virtualization isn't a "one size fits all". So depending on what you want to do...
If you only want one VM on your linux box. 8GB might be enough, that's 4 for you, 4 for the VM.
Some distro's want 4 or more. Windows doesn't like 4. If you want to run Windows 10, I would
recommend at least 16GB. 8 for Linux, and 8 for Windows.
CPU core's also matter with virtualization. A multi-core CPU, is usually dual threaded. So that means with 4 core you get 8 threads total. In virtualization, a "thread" is the same thing as a virtual CPU.
So you could have 4 vcpu's for Linux, and 4 vcpu's for you Windows VMs.

If you want say... 3 or 4 VM's to run at the same time, then you need bigger hardware. 32GB RAM,
a 12 core CPU, etc... I've had servers with two 48 core CPUs (96 cores, 192 threads!!)
and over a terrabyte of RAM.

You also need to consider disk space, most Linux distro's want a minum of 30GB or so.
Windows recommends at least 40GB. So you'll need at least an 80GB hard drive.

Most virtualization software won't let you share a network connection over Wifi. So you'll probably need
to be hard-wired to ethernet.

For small VM setup's, (1 or 2 VM's) I like virtualBox. It's free, most distro's have it available.
For medium sized VM servers, (4 to 6 VM's) I like proxmox. It's also free. Proxmox
is your host OS, and your Linux and windows each run on a VM independently of each other.
For large scale VM farms (say a dozen of more VMs) , I recommend VMware ESX. It isn't free under most conditions, and the free version is usually only a 30 day trial.
 

nivel.egres

New Member
Thank you!

I only need to run a single VM. This is going to be a personal box and VM is there to literally run two pieces of software that are not available on Linux (Excel and Bloomberg). However, both are pretty memory hungry so I will go with at least 64GB of RAM. In fact, since I do a fair bit of data crunching anyway, might as well go with 128GB.

How buggy is virtualBox? I would rather pay for a commercial product that would not be a hassle.
 

dos2unix

Active Member
virtualBox is pretty stable. https://www.virtualbox.org/
You can get a commercial support license if you want to.

LibreOffice-Calc is 98% compatible with Excel. Most of the time the formulas
transfer straight across.
 
Last edited:

jglen490

Active Member
Before you go off and spend a lot of extra cash on a system to use a virtualized Windows, check out what may be available on Linux to replace Windows products. Libreoffice, and a whole pile of other "*office" software are 98 - 100% compatible with Excel. Depending on the canned formulae and what you run in Excel, you may actually have a 100% solution with some research. Not sure what Bloomberg is or what it does, so that may be the Linux killjoy, in this situation.
 

nivel.egres

New Member
Before you go off and spend a lot of extra cash on a system to use a virtualized Windows, check out what may be available on Linux to replace Windows products. Libreoffice, and a whole pile of other "*office" software are 98 - 100% compatible with Excel. Depending on the canned formulae and what you run in Excel, you may actually have a 100% solution with some research. Not sure what Bloomberg is or what it does, so that may be the Linux killjoy, in this situation.
I am pretty familiar with Libre Office. To be honest, out of all FOSS, there is really nothing that comes close to Excel in terms of stability and features. Even if I could replace it, Bloomberg is a Windows only program too.
 

Vrai

Well-Known Member
How buggy is virtualBox?
I run VirtualBox occasionally on a desktop computer with only 8GiB of RAM, an AMD FX 6300 CPU, and an Nvidia GeForce 650 Ti Boost graphics card.
It's not a very powerful machine but VirtualBox runs quite well in it. Very stable.
I've run Windows 7 in it and some Linux distros. Haven't tried running Win 10 in it yet.
Sometimes it feels a little "pokey" but that could be because my machine is under-powered or because I just didn't set everything up for peak performance. But it runs well :)
 

CptCharis

Well-Known Member
Hello @nivel.egres
If I can put my two cents in this I could tell you that I run qemu/kvm that it’s the best choice for Linux host machines.
The problem is that is not “out of the box” in the same manner such as virtual box it is.
Good news, if you are a middle class Linux user you can set it up with a little help from google.
It’s free and optimized for Linux boxes and for single VMs.
It support share USB, share files and copy-paste operations between host and guest.
(Not all of them out of the box)
 

nivel.egres

New Member
Thank you!

If I can put my two cents in this I could tell you that I run qemu/kvm that it’s the best choice for Linux host machines.
KVM is built into the kernel, right? Maybe that's the right place to start for me then.

The problem is that is not “out of the box” in the same manner such as virtual box it is.
Good news, if you are a middle class Linux user you can set it up with a little help from google.
It’s free and optimized for Linux boxes and for single VMs.
Sounds very promising.

It support share USB, share files and copy-paste operations between host and guest.
(Not all of them out of the box)
That's very useful, especially copy-paste!
 

smooth_buddha

Active Member
Hello everyone!

I am planning to buy/assemble a linux workstation for home and one of the requirements is running Windows in a virtual environment. This raises several questions
a) what are the hardware requirement to have it run smoothly?
b) what's the best virtualization solution (I am happy to go commercial if that reduces PIA)?
c) how do I make the virtual machine interact with Linux seamlessly (e.g. exchange files)?
d) anything else I should think about?

Thanks in advance. Any thoughts/ideas are welcome!
Use oracle virtual box
Make sure you don’t assign the virtual box running your windows more than 25% of the ram you have.

So if your computer has 4gig ram then assign 1gig to the virtual machine running windows
 

Tolkem

Active Member
KVM is built into the kernel, right? Maybe that's the right place to start for me then.
I've used virtualbox for many years and it's quite a fine program, that being said, I recently started using qemu-kvm which runs from the command line, there are a few GUIs if you don't feel comfortable working from cli, I've used some of them in the past; aqemu, virt-manager ... check this link for more on that https://wiki.qemu.org/Links#GUIs_and_management_tools.2Fsystems but I've found that the cli version is much more powerful since I can run my VMs right from my external HDD which GUIs won't cause you need to be root and you probably wouldn't want to do that. I haven't tried windows though but only some Linux distros so I can't tell anything about performance, I do have a Win7 VM in Vbox and it performs quite good but I'm not doing intensive jobs and it looks like that's what you want to do. Here are some links which I've been relying on while learning KVM and they've proved to be pretty useful https://wiki.qemu.org/Main_Page https://wiki.debian.org/KVM this one https://access.redhat.com/documenta...ion_deployment_and_administration_guide/index is specifically for red hat systems; Fedora, CentOS ... but KVM commands will work on any other distros as well. This a great tutorial https://www.whonix.org/wiki/KVM#Arch_Linux and of course one of the greatest Linux sources out there, the Arch wiki https://wiki.archlinux.org/index.php/QEMU Also, go to this site and grab one of these ebooks and/or pdfs on the subject, they have very valuable information and examples using QEMU-KVM which have been very helpful to me https://b-ok.cc/s/kvm

Hope this helps! :)
 

dos2unix

Active Member
I agree the KVM/QEMU solaution is more powerful and flexible. (Possibly even more stable)
But the CLI commands aren't for everyone. I don't recommend QEMU for beginners. :)
All of the syntaxes and options can be confusing.
 

Tolkem

Active Member
I agree the KVM/QEMU solaution is more powerful and flexible. (Possibly even more stable)
But the CLI commands aren't for everyone. I don't recommend QEMU for beginners. :)
All of the syntaxes and options can be confusing.
It might be a bit of a challenge at first but once you have a few VMs it's not that difficult, of course, there are very complex-powerful options which I'm still learning but generally speaking, you can create and run VMs in a very "easy" way:
1. Create a qemu virtual disk image
Code:
qemu-img create virtual_disk.img/qcow2
according to what I've read the .img and .qcow2 options are the recommended ones.
2. Start the VM
Code:
kvm -hda  virtual_disk.img/qcow2 -cdrom some_OS.iso -boot d -m ram_sizeG -vga virtio
This will start the VM with no sound and no usb but only basic services, I think with a windows VM one will have to use some option so the guest VM can connect to the internet, not sure though. Then you could install the OS, poweroff the VM and start it again with
Code:
kvm -hda  virtual_disk.img/qcow2 -m ram_sizeG -vga virtio
which is basically the same command we use to start it only this time there's no -cdrom option. Again, this is a very basic usage since there are many other options you could use such as enabling USB, sharing between host and guest ... but for what I do this is enough for now. Still learning how to do more things with QEMU-KVM :)
 


Members online


Latest posts


Top