I get it.
You either have to develop and test software on different plataforms: Linux, Windows 8, Windows 10, Windows 11, Mac OSX, etc.
You just want to run software on all of these operating systems.
You’re a pen-tester working in the security department of your company.
Either way, you need to run several if not DOZENS of virtual machines on a single system.
So what’s the best laptop for virtualization?
Well there’s no single best laptop for virtualization.
If you just want to virtualize a few linux Distros, you just need a modern CPU and 16GB RAM which shouldn’t cost more than 600$.
If you need to run up 50 VMs, then you will need to spend the latest multi core CPU w/ at least 32GB RAM and that starts to get a little expensive.
You also have to consider what exactly YOU are doing inside each VM.
Are you testing software/scripts that do not take much resources OR are you testing games on each VM?
If it’s the latter then you may need to get a dedicated GPU too.
In my case though…
I just needed a computer that will allow me to test software/code for virtually every OS at the time (running two OSs simultaneously at a time like Windows 8 Release Preview and Linux Mint) for which I only had to spend somewhere around 600$.
However I also had to help build a computer for a colleague who needed to run at least 20 VMs simultaneously (for pen-testing purposes).
While it is true that I haven’t used VMs for every type of job that requires, at this point I believe I have a pretty good idea how much RAM, CPU cores and hard disk space Virtual machines gobble up.
Recommended Specs for Virtualization
Anyways before I go through the best laptops for virtualization I’ve found in 2022, let me elaborate a bit more about the exact specifications you need and why you need them.
I’ll make it very brief here but if you want a longer and much more detailed explanation you can head to the last section of this post.
If you are unable to understand computer terminology or find my descriptions too vague, you can also check this site’s posts on the sidebar.
Basically….as long as you stand by this rule you should be okay.
This pretty much excludes the low end computers in this market: laptops below 300$, (poor GPU, limited memory, low core CPUs) and also freaky devices (super tiny laptops, tablet/laptop convertibles, 2 in 1 touchscreens etc) because these have a fixed amount of memory on-board (can’t be upgraded) and have mobile CPUs which have no more than 4 threads (2 cores).
Virtualization is now all about RAM.
Like I said, as long as you get a modern CPU w/ at least 4 cores it will be very rare for you to be bottlenecked by anything else but RAM.
8GB: This much is exactly what I used to run a couple of VMs ~4 (for software testing).
16GB-32GB: At least 16GB for several VMs (~10). At least 32GB for Virtual Labs/ Penn Testing. You may need to run 2 when you start (Linux+Windows) and move it up to a dozen later.
+64GB: This is useful for super complex lab sets ups and only +900$ gaming laptops or Workstation laptops can support this much. Might as well get a desktop here.
You can get either an Intel or AMD chip both brands support hardware assisted virtualization (Intel VT or AMD V).
A good rule of thumb is a MAX ~2 VMs per thread. You can run more VMs on a single thread but it isn’t going to be pretty.
Storage will actually a bigger impact on how many VMs you can run than clock frequency.
It’s not really about how much storage you get but what TYPE of storage.
You want an SSD over HDD and even among SSDs you want the fastest type: PCIe NVMe SSD (these sit right next to the CPU hence they’re faster to read from and write on too).
If you’re running +30 VMs it’ll be very rare for you to ever run out of CPU power, you will most likely become I/O bound due to lack of RAM and this is where PCIe NVMe SSDs can lend you a helping hand by acting as “extra RAM”. HDDs can do this too but several more times slowly.
You don’t need dGPUs for virtual machines your machine needs to be extremely heavy on CPU & RAM before you even contemplate on adding a dGPU.
Armed with this info, you could go to your favorite consumer electronics store, check for specs , pick your favourite brand, get as much computing goodness out of it and have a play 🙂 .
. ::looks in wallet::
Top 4 Best Laptops for Virtualization
Well that’s what this post is all about isn’t it?
Well the smartest thing to do here is to make a huge table with all the laptops you’ve found and have their specs in each row so you can make a comparison which of these will give you the best bang for your buck.
If you are trying to stay under $1,500 with $2k being the absolute limit and been saving up for a while to make this investment and want it to last, this is the best way to do it.
Another thing to look out for is brand…
If you want this thing to last a LONG LONG time despite all the beating it’s going to take you need to make sure you what you get is build like tank.
If that’s important to you, I would favor the the Lenovo ThinkPads over any other brand if you’re spending anything above 900$.
If you’re spending somewhere around 700$ then it really doesn’t matter what brand you get and your focus should be on hardware specs because all brands will have the same build quality here(of course we are not talking about UltraBooks which are something you don’t want).
Let’s start with the most ideal laptop for virtualization and then go over a few cheaper or more expensive options.
This first one is for the more experienced VMers while 2 of the three remaining laptops are for people who just want to run a couple of VMs here and there.
Best Lenovo Laptop For Virtualization
32GB RAM DDR4 (Up to 48GB)
Integrated AMD Radeon Graphics
1TB PCIe NVMe M.2 SSD
14.0″ FHD (1920 x 1080) IPS, anti-glare, touchscreen
No DVD Drive
Windows 10 Pro
The Lenovo ThinkPads especially those around 1000-1500$ are the best laptops for virtualizations you’ll ever come across.
It’s not just about all the hardware they have, like I said, it’s also about how they are build like tanks.
Now I know that’s kind expensive for most people reading this but this is more of a laptop for someone who needs to run dozens of VMs simultaneously, if you need to run a couple (maybe less than 5) then you don’t have to spend this much.
Ryzen 7 CPU+16-48GB RAM:
If you do a quick search through amazon you’ll find dozens of Lenovo ThinkPads.
However, the best ones for virtualization should have the Ryzen 7 CPU and at least 16GB RAM (on board).
Now I mention the Ryzen 7 not because their super high clock frequency but again due to their super high number of cores.
Ryzen 7 CPUs will give you EIGHT cores which translates to 16 Threads and using our rule of 2 VMs/Thread, you can run about 32 VMs simultanously. This is much CPU power you’re going to get out of a laptop at least in 2022 (Intel Core i9 CPUs also have 8 cores/16 threads however they are far more expensive than 1000-1500$).
I urge to get 16GB RAM not for the obvious reasons of each VM eating up a large portion of RAM but actually it’s about the upgradeability of laptops. You see some laptops come with RAM that’s soldered to the motherboard so chances are you can’t upgrade yours (this is the case for the Lenovo ThinkPad 14 “S” RAM is soldered so whatever you order is what you’ll have).Now if it comes with 8GB RAM, that means that 8GB is soldered to the motherboard and you will at least have 1 slot open for another 8GB upgrade to make it a total of 16GB.
So by getting a laptop with 16GB RAM chances are you can upgrade it to 32 GB .
Now this model I picked is already upgraded to 32GB so you can’t do any more upgrades because both RAM slots are taken (16GB soldered + 16GB from the other slot).
There are several more thinkpads out there with more RAM but they’re just a bit outdated. For example, you have the model we posted last year which will basically perform just as good as this model but has the advantage of being able to run more VMs because of the larger RAM capacity. However, I decided not to feature last year’s model because I know how you guys are nitty picky about getting the latest CPUs on a laptop and this is the latest generation Ryzen 7 CPU which unfortunately does not come with 48GB RAM.
However, for most purposes 32GB RAM is actually enough RAM to run VMs for pen testing or to integrate Cisco firewalls, switches with ESXi hosts, all of that crazy stuff no problems.
64GB RAM is quite a lot to ask and something only available on workstation laptops or gaming laptops , which we’ll mention soon but probably not that useless unless you are simulating some sort of super complex network of computer.
Last but not least, let’s talk about the price. I know I’ve said several times in this description 1000-1500$ and yet this laptop is 1500$ well the truth is there’s an almost exact replica of this model that sells for 1000$ and it’s right here below. What is the downside of that model? Well it’s just a less popular “Lenovo ThinkPad model”, yes, even among lenovo thinkpads some are more popular than others but rest assure ALL lenovo thinkpads will be far better for virtualization purposes than ANY laptop you find.
Budget Lenovo Laptop For Virtualization
AMD Ryzen 5 4500U Processor (6 Cores 12 Threads)
8GB-32GB DDR4 RAM
AMD Radeon Graphics
256GB-1TB PCIe NVMe SSD
15.6″ Full HD IPS Anti-glare
Windows 10 Pro
The Lenovo ThinkPads with the T letter are the most sturdy laptops of the entire series of ThinkPads.
I know most of you came here for a thinkpad but did not expect to find them at 1000-1500$ dollars. That’s just the price of the thinkPad T series they are the most expensive ones due to their portability and super good hardware (they’re more popular too people just feel good buying a T model).
If you are not in need to run dozens of VMs simultaneously, you can still get the build tank design of the ThinkPads at a much lower price if you grab a ThinkPad from the P or E series.
Lenovo ThinkPad E15:
This laptop featured here belongs to the E series. Virtually every E series thinkpad will only have either a Core i5 or a Ryzen 5 which do not support more than 4-6 cores(8-12 threads) but they do support large amounts of RAM. You can usually configure what RAM and SSD space you want before purchase.
So this is a great option for someone who may just need 8GB RAM and 256GB for a couple of VMs but also a great option for those in a budget that need to run a dozen of VMs with a 32GB model (again the 24GB model basically has 16GB RAM soldered and an additional 8GB RAM, you can take out the 8GB RAM stick and switch it with a 16GB RAM stick).
Since the CPU is limited to 6 cores you can run up to 6*2*2=24 VMs. If you limit RAM to 16GB (after buying the model with 8GB and doing the upgrade) , you can only expect to run heavy software on 4 of these VMs while the remaining ones can remain iddle.
Best ASUS Laptop For Virtualization
AMD Ryzen 9 5900HX 8 Cores / 16 Threads
16GB RAM DDR4 (Up to 32GB)
NVIDIA GeForce RTX 3060 6GB
512GB PCIe NVMe
144Hz 15.6” Full HD IPS
>1 hours under high loads, 5 hours otherwise
Windows 10 Pro
If you are not satisfied by the number of cores of Ryzen 7 low-voltage “U” CPUs nor the amount of RAM these have, your best option is to go for high end gaming laptops and NOT workstation laptops with Xeon CPUs.
As of 2022, Xeon CPUs still offer no more than 8 cores as you can see on this link and prices aren’t really any cheaper.
The latest Xeon CPU found on a laptop has no more than 8 cores which is just about the same a Ryzen 9 or Core i9 CPU on a gaming laptop has.
Now the advantage of going over Ryzen 9/Core i9 CPU is clock speed performance. Although all of these three CPUs can hit the same clock speeds , Xeon CPUs are mostly designed for ECC (error correction) which is only useful for sever purposes or stock/financial calculations.
So if you want to run heavy code/software on each VM, you’ll get better performance out of either Ryzen 9 or Core i9 CPU.
Now there are hundreds if not thousands of gaming laptops with high end CPUs however if I’m spending that much money I would either go for the ASUS/MSI and Acer as back up, these are the three brands imo with the best overall cooling systems which is the most important thing for these CPUs to run fast/activate every core at full speeds without compromising high temperatures and break down within a year or two.
All laptops with a Ryzen 9/Core i9 will have a dedicated GPU there’s no way around and that makes them even more expensive than they should be.
However, one way to mitigate their cost is by looking for models that have a mid-range GPU like the 3060RTX instead of a high end dGPU like the 3080/3070RTX. The latter two may up the price by 500-1000$ and since you aren’t likely to use them you should avoid them (3060RTX is fast enough for password cracking for pen testing purposes).
Best Cheap Laptop for Virtualization
Intel Core i3-1115G4
Intel UHD Graphics
15” full HD IPS
Wifi 6 802.11AX
Windows 10 S (Upgradeable to Win 10 Home)
Now if you came here because you thought you need something special to run just one or two VMs, this is what you want, yep, just a basic budget laptop. It’s all you need really because virtually every CPU released in the past 3 years has more than 2 cores which translates to at least 2 VMs (4VMs to be exact) to be run simultaneously.
Before you do that with this super low budget laptop though you need to up the RAM to at least 8GB RAM not for VM running purposes but to be able to run the full version of Windows, which this laptop doesn’t come with.
However, if you just want to run a few Linux distros you probably don’t need to the upgrade. 4GB is plenty for Linux. Either way, this laptop is upgradeable to 16GB so just max it out because RAM is not expensive and it’s always good to have at least 16GB RAM for VM purposes.
Q: What is the best MacBook For Virtualization?
All MacBook Pros are capable of virtualization, you just have to download the Mac Version of whatever software you use to run VMs.
So the best Macbook for virtualization will depend on how many VMs you plan on running because as you know by know, it depends on how much RAM you can get (all MacBooks have SSDs).
Q: What about the M1 MacBooks, can they run virtual machines too?
Yes, VM Fusion has been tested on M1 MacBooks and they can all run Virtual Machines. You can only run Linux VMs on a M1 MacBook though since the new processors are ARM based which do not support Windows. So if you want to run Windows VMs on a MacBook you have to buy older models.
Now to run.
How to Buy The Best Laptop For Virtualization
This is quite a broad subject to just list a bunch of speces for different purposes in a big table.
Let’s not forget that there different types of users when it comes to running VMs and each might require a slightly different hardware.
The main problem though when buying a laptop for virtualization is all the misconceptions you come across when reading quora, reddit or forums online.
Before we dig deep into the hardware for virtualization let us go through some of the terms you will find on the web when looking for VM advice.
If you are not new to virtualization, please go ahead and skip this section and start reading the “Hardware Virtualization Specs” section.
1. VM Terminology
HyperVisor: another name for the virtualization program responsible for running VMs. It basically tricks an OS into thinking there’s a separate processors memory etc . This is all a big lie and the hypervisor is responsible for this.
VMWare ESXi: This is an enterprise-class type-1 hypervisor developed by VMWare basically an OS in itself which has its own kernel and from which you can launch VMs. It’s not a full blown software application like Oracle Virtual VM Box to run VMs though.
KVM: (Kernel Virtual Machine). This is a term for the kernel on Linux OS which makes a Linux Distro turn into a hypervisor (holding VMs inside each distro).
Domain Controller: Basically what’s in charge of network security. The computer/server in control of who gets in/out aka receives access requests to join a network.
VMware Workstation: basically the full blown package software you need to install to run a VM on your current OS. Currently, you can only host Linux/Windows OSs with it.
VMware Fusion: same but for Macs.
Firmware: is what basically gives you control (albeit low level control) for all the hardware that’s in your machine. Another word for the “BIOS” you see during the booting process. This is exactly what allows you switch the booting device (from the hard drisk drive to perhaps a CD-ROM) when you want to run a different OS or install a new OS.
VPN: Stands for virtual private network and has nothing to do with Virtual Machines. It’s basically what lets you join a specific network from any computer device once you’re in a network you can manage network resources and even launch software there (kind of like AnyDesk).
Why mentioned VPNs then?
PenTesting: because the term is used on any virtualization post you’ll come across.
Also because pen tester running Virtual Machines basically want to simulate VPN or other type of real world networks for security testing purposes (test strengths/weaknesess in a simulated network pre-launch).
VT: the term for the technology provided by Intel Processors to run VMs. They’re just special instructions embedded on processors to make running Virtual Machines more efficient.
You can use “Interl Ark” to find out which processors are “VT” capable but that’s only useful if you’re buying super old hardware for budget purposes. Today virtually every CPU on desktops or laptops have this feature.
Hyper-V: This is a native hypervisor installed in most machines and if it is activated neither VMWare nor Virtual Box will be able to run.
This is because if VT-x is enabled (whatever that is), hyper V will “occupy” VT-x.
VMWare and Virtual Box and VM software needs to use VT-x so if it’s being used they won’t be able to run. If your VM software isn’t working then that’s the first step to fix it. You can read more about it here “deactiavte Hyper-V to make use of VT-x“.
2. Virtualization FAQ
With the definitions out of the way, let’s talk about the misconceptions of VM jargon:
Q: Do You need one core per virtual machine or one thread per virtual machine?
The most important and widespread misinformation. People will say “each VM needs to use one core so you can’t use the same core to run another VM”
Is this true?
Of Course NOT.
Hypervisors do not take up one core at a time. Core usage is balanced all across the VMs you have. Obviously if you dedicate one core to each VM you’ll get the best performance out of it and that’s kind of what you should do if you want to run very heavy executions on each VM.
Q: Will having too many cores slow down Virtual Box?
This is partly true.
Some say it varies between different versions of VM software and some say new releases will handle this problem better.
See the thing is if you assign more CPUs to one guest, there will be more “overhead” running in a CPU. More overhead means waiting more time.
Just don’t add more cores to a guest, it won’t make it run faster. Let your software do that automatically for you.
Q: Do I need to get the best hardware I can afford for Virtualization?
We’ll answer this question in the next section but let’s just for now that CPU is not going to be much of a problem. The bottleneck of running heavy stuff on each VM is down to RAM and that’s also the bottleneck for running several dozens of VMs on a single machine. You’ll get better performance gains by upping your SSD speed than CPU speed (for running even more VMs).
Q: Is old hardware better for Virtualization?
People say this because older hardware is more likely to have the right set of drivers to run a Distro. However, Linux is an Open Source Os that means it’s constantly being updated and new drivers are always coming out and being revised,updated and developed. So even if you buy say a laptop with the 12th generation Intel Core CPU you’ll only have to wait a few weeks for the drivers to be out.
Q: Is Intel hardware better for Virtualization?
It really doesn’t matter now. Both brands support virtualization and all the code that’s been developed to efficiently run VMs have been implemented on both of their processors. The problem will start when you buy computers with CPUs that are 10 years old, they will not support virtualization as good as the most recent CPUs.
It’s important to know what kind of user you are because the VMs you will run and therefore the hardware will depend on that.
If you’re an undergrand taking classes on Cybersecurity/IT/Networking then you don’t really need any special machine. Yes, you will run a few VMs (mostly Windows 10/11) but any modern budget laptop can do that.
These are the people in charge of finding faults/developing software for different plataforms. Well you don’t necessarily need a lot of hardware if you can just install/reinstall Operating systems each time you test a software. If you rather have several VMs on a computer, then you just need more storage and run them one at a time. I would opt for Core i5/Ryzen 5 CPUs and at least 8GB RAM because running Windows 8 and Linux Mint simultaneously can be horrible.
There’s a separate post for you guys on this site. Basically, if you want to build a lab that integrates Cisco Firewalls,routers, switches with ESXi hosts and VMs you don’t really need a very beefy CPU but rather as much RAM as you can get (32GB will do fine).
A few percentage of pen testers need to simulate big nested and complex networks if this is the case for you then yes you’ll need the beefiest most powerful laptop you can get and you might even need to focus on CPU too because you might run out of RAM/Storage resources to run more VMs. I would get a desktop though.
CPUs can also be bottlenecked if you decide to buy old CPUs as older CPUs are not necessarily optomized to simultaneously run VMs of different Operating systems. Here’s a good example.
Ex: Say you want to run a Windows 10 VM and Kali VM side to side and you use Windows to replicate internal services and then Kali to run Responder for poison requests.
Earlier generation (even if they’re core i7/ryzen 7) may find the instructions to complex and cut-off executions altogether.
Another reason to max out on hardware resources…
Is to test environments/domains and run full vulnerability scans by setting up realistic networks made out of dozens and dozens of VMs. This means at least 32GB RAM , an optional dedicated GPU (for password cracking ) and very very spacious SSD ( 1TB-2TB) and a CPU with the biggest number of core (not necessarily Xeon unless the Xeon released that year has more cores than Ryzen 7/Core i7 CPUs). Another reason why get the latest of the latest hardware is to make sure the network adapter is compatible with the latest internet protocols and latest WiFi Standards so any “sniffing” in network traffic can be simulated. You’ll find this kind of hardware on workstation laptops (extra power is super handy here when recording entire procedures for evidence purposes too). Out of these you have to pick those that offer best compatibility with Kali: Dell, Lenovo and HP.
But again you don’t have to pick super powerful laptops for Penn Testing….
If you’re running nothing complex any laptop that can support 2 VMs can be used for Pen Testing. As long as your CPU is modern , it will have at least 2 cores support VT-x/VT-d , an SSD and well RAM can always be upgraded. There’s no reason why you wouldn’t be able to run a couple of VMs for malware analysis and security assements with these commodity machines.
4.Hardware For Virtualization
OK with the basics out of the way, let’s get into more detail about the hardware specs for Virtual Machines.
I remember my colleague using a 2017 ASUS ROG which had the latest Core i7 at the time and 16GB RAM in it. We ran 4 VMs and we checked out hardware usage (using CTRL+ALT+SUPR), to find out there was still A LOT OF JUICE left from the processor but RAM was on its last legs, almost entirely being used. That doesn’t mean you’ll only be able to run 4 VMs with 16GB RAM though , again it depends on what you do in each VM, the point is by default the Hypervisor will use up as much RAM available from a machine.
8GB vs 16GB vs 32GB
Most laptops in the 500-800$ price range will come with 8GB RAM but they’re all upgradeable to 16GB (at least).
Laptops over 800$, especially those in the 1000$ ballpark, will have 16GB RAM (attached to the motherboard) and another slot left for an additional 16GB making it a total of 32GB RAM.
Lenovo ThinkPads: If we are talking about the ThinkPads, only the T and P series can support 32GB RAM.
Gaming & Workstation Laptops: Virtually all gaming laptops (above 800$) and ALL workstation laptops (of any price) can take as much as 32GB RAM.
Upgradeable or Not? .
Some Lenovo ThinkPads will come with 32GB RAM by default but that doesn’t necessarily mean you can add an additional 32GB RAM stick or any RAM stick for that matter because these laptops have already done that (16GB RAM on board + 16GB RAM on the free RAM slot).
So how can you know which one can be upgraded? At the end of the day, you’re going to have to read reviews or typing that model number or name on youtube and as a last resort head to the laptop’s website and check the specifications table.
This is good for running at least one virtual machine, you can run two virtual machines too for basic Penn Testing Work (Kali + Windows ). This is also good for software testing.
Starts becoming more useful when you need to run at least 4 VMs with at least 1GB RAM alocated to each. Again it’s also super useful for penn testing and software testing, the expierience will be slightly better.
However it’s paramount for running VMs for IT purposes. Here’s an example:
ESXi Host 1 – 4GB of RAM – 20GB of Hard drive
ESXi Host 2 – 4GB of RAM – 20GB of Hard drive
Windows Server 2012 R2 installation – 15 GB of hard drive
+ linked clone – Domain controller & iSCSI target – 1GB of RAM – 35 GB of hard drive
+ linked clone – vCenter Server 5.5 – 4GB of RAM – 35 GB of hard drive
Total 16GB RAM. Storage: at least 256GB.
Besides the penn-testing scenario we talked about in the last part of the last section, it’s also good for IT purposes that need to run virtualized nested VMs for let’s say running a storage appliance and a Windows Instance running vCenter. Although you can pull it off with 16GB RAM too (as described above) the experience is far better with 32B GB RAM.
Q: Which Processor is best for Virtualization ?
Whichever has more cores. Even a slower-clocked OLDER QUAD CORE CPU will outperform a 12th generation faster DUAL CORE CPU.
Ideally (though again not necessarily) each logical machine (including the host) should have at least one dedicated core.
Intel vs AMD for virtualization: Intel VT, Hyper V, AMD V
All things being equal. It really doesn’t matter. Today, with the exception of some netbooks (10-11 inch laptops ~250$ w/ Celeron, Pentium, Atom or any other “tablet” chips) any processor/motherboard that’s been on the market since 2009 will support VT-x, AMD-V, Intel Hypert V,etc.
More important than that again if you’re buying an older generation Intel or AMD CPU check if these support “Intel Hyper V” or “AMD-V”. Note that prefixes x86 and x64 stand for 32bit and 64 bit plataforms (laptops have 64 bit platforms though, it’s more of an issue with desktops).
Sometimes these features are disabled by default in the BIOS/UEFI settings so before you come back here and complain about being misinformed be sure to double check in the BIOS set up whether or not these are enabled.
As most of you probably know , HyperThreading, splits a physical cores into two “virtual cores”. This is obviously super helpful for VMs because this process happens BEFORE you launc the hypervisor which will think your machine has x2 the amount of physical cores. Of course this doesn’t set a limit on how many VMs you can run i.e a 2 core CPU with 4 threads will not be limited to 3 VMs (1 for the host 3 for the hypervisor). You can run more VMs regardless of how many threads your CPU has because the HyperVisor will basically do something similar to “hyperthreading” which will accomodate more VMs/thread.
Once you’ve gotten the best CPU and as much RAM your wallet can afford. The next step is to get a good storage NOT a dedicated GPU.
- Because CUDA cores/AMD Shaders do not act as extra CPUs for VM purposes (they do for some other applications just not VMs).
- Running VMs create a lot of IO pressure, this means, VMs is all about reading/writing and processing data (not graphics) so if you can get extra “RAM memory” out of your storage, it’s going to help tremendously.
HDDs vs SSD (Hard Disk Drive vs Solid State Drive)
Regardless of what you’re doing: you should always get an SSD (even if you’re running one VM) for the simple reason of their reading/writing speeds . PCIe NVMe SSDs (those super close to the CPU through the M.2 Slot) can read data much faster than the old fashioned HDDs.
Ex: A typical 7200 rpm HDD will read/write data ~ 150 MB/sec vs 500 MB/sec of a slow (SATA III ) SSD (~x3 faster). A PCIe NVMe which is almost universal on laptops is even faster than that.
Dual Set up : HDD+ SSD or SSD+ SSD
You will see even better VM performance if you’ve get yourself an additional storage drive (preferably another SSD) by dedicating the additional storage drive to run VMs only and the primary drive to run the “Hypervisor” or your host. Luckily, most laptops , if not all laptops, that are at least 15” can support at least TWO storage drives.
The more storage drives you have, the better the performance of VMs especially if you run several (VMs don’t necessarily take one storage each, Storage resources are spreaded among all the available extra ones available). Only a few models on laptops support x3 SSDs though usually 17” workstation laptops.
If you go the laptop or desktop w/ SSD route, I also recommend you get a fast, external storage that supports a USB 3.0, eSata, or Thunderbolt ports.
You could get 2 TB NAS storage devices which are great to store hundreds of ISOs and commonly used utilities. These are cheap and easy to manage.
If possible, do what I do, get waterproof and shockproof electronics too.
I am a huge fan of the durable Adata HD720 product line ($0.065/GB) for secure project archival and system backups. It is the only external Hard Drive brand I’ve owned of which the drives outlasted other brands, generation upon generation.
Storage for Servers and VMs
For this you want to consider a RAID set up.
For example if it’s a 3 node cluster (which requires at least 5 VMs) having just one hard drive will get you into I/O issues and this will severely impact performance.
Using a RAID set up (or 3 storage drives)…
Keep the host OS on a single SSD and one or two Sata III Drives(preferably SSDs too) to handle all the extra VMs.
RAID Sets ups – Laptops
Now raid set ups aren’t easily found on laptops. In fact, they’re only available on workstation laptops. If you MUST build a server on a laptop, then AFTER you add the additional drive (preferably another SSD), you can still get one more “storage” out of the CD/DVD drive (that’s right taking it out and placing an storage drive instead).
If that’s not possible, then you can also use USB3 Drives as additional storage drives.
Only useful when you’re launching heavy GPU sessions like Media Development or any 3D application that uses viewport.
Note that having a dedicated GPU is something that can’t be avoided because the best gaming rigs and workstation rigs will have one regardless.
If you’re buying a laptop that has a top of the line CPU (or maybe a dedicated GPU) you may want to do some research about build quality. A well assembled laptop should not have to reach such high temperatures when the CPU is not using all the cores at the same time. If it does, it probably won’t last you much longer than a year, especially if you run several VMs all the time.
If you get a laptop from good brands like Lenovo, ASUS and MSI, you should be okay (you should still install a temperature monitor software to double check how things are going).
But usually thick and heavier laptops will have a much better cooling system because there’s extra space for air to dissipate AND they usually have an extra fan (hence the weight). It’s more of an issue with thinner laptops that have a high end CPU/GPU on board.
At the very least every laptop should have a big open grill at the base.
Laptop vs Desktop
Now if you’re setting up a lab using several VMs and with the ralization of the hardware needed for it, why not get a desktop?
You should be able to get a desktop especially if you’re an IT guy that needs to run those set ups or a pen-tester looking forward simulating nested networks.
It’s not that laptops aren’t as powerful as desktops , it’s more like laptops aren’t really that much upgradeable (RAM and Storage have an upper limit). Desktops, on the other hand, allow you to scale your hardware as needed . You can easily set up a RAID storage system and get as much as 128GB RAM on a desktop.
Another obvious reason is price, getting the same hardware on a laptop is very expensive. You can get the same hardware on a desktop for the half the price of a laptop with the same hardware.
Desktops are louder than desktops.
NO access to your lab on a trip (though this can be fixed with a VPN).
More hardware means more maintanance.
Expensive to upgrade.
Cheaper to upgrade.
Take your lab on the road with you.
Very fast with simple upgrades.
But it also has disadvantages:
You’ll run out of disk space if you’re running dozens of VMs.
You probably will not be able to do something in the background if you’re running dozens of VMs.
If given by an employer, you probably won’t be allowed to upgrade it.
If you have any suggestions, questions or recommendations. Please leave a comment below.