To be honest, I have not (yet) actually tried those OpenStack/OpenNebula/Eucalyptus cloud things, so it might well be I have understood something fundamentally wrong about them. What I think about them that they can help you to intelligently manage, move around and scale your virtual servers.
What they do not offer, though, is that they would combine the powers of several physical servers and the elasticity is limited to VMs, and not single processes running on them. Is this right?
OpenSSI (Single System Image) offers a bit different solution. You can add new SSI nodes to it and see your cluster as a one big server. OpenSSI can automatically move individual processes to a less loaded (or, a more powerful) cluster node and automatically distribute the load among your hardware. This is not (100%) same than a real 8 core / 16 GB server but in many cases quite close.
It can be very useful if you have lots of long-running CPU-hungry processes (such as some calculation, 3D rendering) running, but on normal desktop use or web server use (which typically have lots of short-lived processes / tasks) it would be next to useless.