VM pools

Run many VMs
from one pool of capacity.

Reserve vCPUs and memory for your team, then share them across your VMs. Create a separate VM for each service, staging environment, or experiment without increasing the pool’s charge.

Give each workload its own VM.

Keep your app, database, staging environment, and experiments in separate VMs while sharing the same reserved capacity.

You pay for the pool while it exists, whether it’s empty or full. Creating another VM doesn’t increase that charge. Resize the pool when you need more capacity.

Use your capacity where it’s needed.

Stop a VM you aren’t using so the running VMs can use more of the pool’s capacity. Its disk stays intact for when you restart it. You can also resize an individual VM up to the size of the pool.

$ ssh demo.exe.xyz sudo poweroff
# demo stops. Its disk is kept.
$ ssh exe.dev restart demo
# demo boots from the same disk.
$ ssh exe.dev resize builder --cpu=8 --memory=16
# builder is now the size of the pool.
# Power it off and restart it to apply.

A stopped VM still holds one of the pool’s VM slots. rm frees it.

Choose the capacity your team needs.

An 8 vCPU Work pool gives your team 16 GiB of memory, room for up to 200 VMs, and included disk and bandwidth.

build 8 vCPUs on Work

Memory

16 GiB

VMs

200

Included disk

400 GiB

Included bandwidth

400 GiB

Need more capacity? Resize the pool without moving your VMs to a new one.

Work pools come in any even size from 4 to 512 vCPUs. Sizes above 32 vCPUs need approval from support. Personal has one pool of 2 to 16 vCPUs.

One pool per environment, customer, or workload.

Give production, staging, or an individual customer its own reserved capacity. On Work, each pool has its own size and region.

Need dedicated capacity for one VM?

A standalone VM reserves its own vCPUs and memory instead of sharing a pool. Choose one when you want capacity and hourly compute billing for an individual VM.

In a pool

new --pool=build

  • Shares the pool’s vCPUs and memory.
  • Adding it doesn’t increase the pool’s charge.
  • Stopped, it keeps its disk and its VM slot.

Standalone

new --standalone

  • Has its own vCPUs and memory.
  • Billed by the hour while it runs.
  • Stopped, it keeps its disk and isn’t billed for vCPUs or memory.

More in the docs: standalone VMs.

Put your team’s workloads in a pool.