First ask why you want /boot or /home separate from root. If you don't have a clear understanding of the reason, you probably don't have a valid reason.
Neither of those being separate actually simplifies switching or upgrading the distribution later. If you have some really big data files (or if your VMs are big) and
you can conveniently put them in a /data partition rather than in their default location. Then a /data partition may significantly simplify your next distribution reinstall.
If the default location for your big files are at least one directory level removed from all the stuff that a Linux install writes, it may be best to use symbolic links to make the big files appear to be in default directories in the hierarchy despite actually being in directories under /data.
/home itself and each user's home directory are things you cannot expect to slip past a Linux reinstall. You should expect to need to back those up and selectively restore whatever hasn't had its format change (various files in home directories store options and settings in a way that is incompatible across a distribution change or major upgrade).
If you aren't going to mess with a /data partition, I don't see any reason for you to split anything other than swap out from root.
Originally Posted by satimis
My planned LVM partitions:
Where the VM reside? /root or /home
I also don't know where the VMs reside. How can you decide on a roughly 50/50 split between root and /home before you know where the only significant files are going to go?
The advantage of not splitting root and /home is that you don't need to plan in advance for which big files go into which of those places.
I also don't have enough experience with VMs to know what demands they will make on the outer system's swap partition.
I do have a lot of experience with informally managed shared testing systems in which a lot of test environments are possible and typically very few at a time are in use (via scheduled tasks or manual requests). Occasionally by accident you have several more tests running at the same time than you intended. For our tests, we would greatly prefer that error result in a giant slow down so someone manually decides what to kill or deprioritize. If you don't have enough swap, the OOM killer takes away the decision. Some tasks would finish without a giant slowdown and other would just be killed and the choice of which is which is not made based on your preference. Disk space is cheap. I prefer a giant swap segment to catch those situations. You may have a different view, but at least give it some thought.
10GB is a really large swap partition for almost any Linux system. But for the use you describe it might
be a foolishly small swap partition.