Have a cluster pool with resource limitations: memory, CPU. Say you want to make it possible tests to run in parallel on different clusters, but you can't spawn all the clusters at the same time, so you need to have a pool and a queue, tests submitting requests to provision a cluster to the queue, pool eventually fulfills the requests when resources test wants are available, when test is done, cluster is stopped, resources are returned back to a pool and it can provision another cluster.
Make it possible for a pool to reuse cluster. Need to test if it makes sense, just to check if it is easier to clean cluster up or spawn new one, after 6.2.0 cluster provisioning very quick.