Spread specific answer
According to the FAQ:
Configuration and Setup Questions
What ports can you run it on?
Any ports you want. Just change the ports in the configuration file spread.conf
and restart the Spread daemons. We recommend using random high ports over 2000.
If you're on a linux or similar platform, the configuration is in /etc/spread.conf. If you're on a Windows platform, you'll need to poke around to find it.
You can set up multiple spread segments on different ports. See pages 9-12 of the user guide. In addition, you may find a scrap or two of information in this Stack Overflow question. Here's a quick example fragment:
Spread_Segment 192.168.0.255:2000 {
machine1 192.168.0.1
machine1 192.168.0.2
}
Spread_Segment 192.168.0.255:2001 {
machine1 192.168.0.1
machine1 192.168.0.2
}
Caveat: I have merely updated my answer with some readily available information that I hope will be helpful. I do not carry practical experience in using Spread at this time.
Original Answer
There may be a solution specific to the spread toolkit, however, not being familiar with it, I will mention some more general methods you might use.
If your cluster is running linux, you can probably do what you want by using Linux Containers. These are based on a kernel feature called control groups.
If your cluster is running a BSD derivative, the corresponding technology are BSD Jails. BSD Jails have been in existance longer than the linux option, and is very well tested.
Both of these methods use operating system virtualisation, which is much lighter (less overhead) than both full- and para-virtualisation.