A cluster is all or nothing and is billed from when every machine is up, for every machine, until you terminate it. See Clusters.
- Dashboard
- Ask your agent
- See the code
On the Clusters page, click Create cluster:
- Configure: a name (machines are named after it:
train-0,train-1, …) and an SSH key (optional; keyless access from the dashboard and CLI always works), the GPU, how many nodes (machines; node 0 is the head), the software (None, Slurm, Kubernetes or Ray) and a shared volume (optional). Then Find machines. - Pick machines: each row is where the machines are, how they are joined, the kind of machine and the GPUs each one has, with the price per hour for the whole cluster and the price per machine under it. Turn on Include community hosts to see those too.
- Create cluster. The sheet waits until every machine is reserved, then the cluster opens and shows each node as it joins, then the software installing.
When it cannot start
Resize
Where the offer allows it (resize on the cluster), add workers to a ready cluster with Add workers on its page or with POST /clusters/{id}/nodes, and remove one with DELETE /clusters/{id}/nodes/{rank}. A new worker joins the private network and the software, and is billed from when it is up; a removed one is drained from the software first. The head (rank 0) stays, and a cluster keeps at least 2 machines.
Terminate
Terminating stops every machine together and ends billing for the whole cluster. Copy what you need off the machines first: their disks and/shared are deleted, and only a volume keeps /shared/volume.
- Dashboard: Terminate all on the cluster page.
- Agent:
delete_cluster. - CLI:
runcrate clusters delete train. - API:
DELETE /clusters/{id}.