Is it possible to run a virtual machine with the combined processing power of multiple physical machines? [closed]
I have two physical servers, can I launch an instance using all the resources from my servers ? Or are the ressources of my VM limited to one physical machine ? And if this is possible, how can it be achieved ?
Solution 1:
No, commodity hypervisors commonly used for enterprise cannot span a virtual machine across multiple physical hosts. More difficult to do, and outside their typical use cases of consolidation of "small" workloads on large hosts.
Scaling out is where many small instances are started across multiple hosts. Requires applications that can be distributed this way, such as with a load balancer. Possibly not your use case, as you suggested one large guest.
Scaling up means buy bigger boxes. Single systems can get quite large these days, 2 sockets x 64 cores of EPYC x86, or perhaps 16 sockets x 12 cores of POWER9. A giant VM could use most of such a host, although there would be NUMA effects. The vendor takes care of the processor interconnects, VMs and applications run unmodified.
Single kernel image systems bigger than the servers enterprise buys exist, typically in HPC supercomputers that can span many racks. However, these need fast intconnects and applications aware of the special remote memory access to distant nodes. A HPC cluster is scale up, quite different from an OpenStack cluster which is scale out.