quotas & budgets
four budget dimensions per account. check them with usage, fill what's left with max sizing.
the four dimensions
| Dimension | How it counts |
|---|---|
| Machines | a count of your machines, whatever their state. |
| vCPU | a per-machine ceiling: no single machine gets more cores than this. cores are not summed across machines. |
| Memory | a summed budget: all your machines' memory together must fit. |
| Disk | a summed budget: all machine disks plus your shared drive must fit. |
checking your usage
ssh
$ ssh dashboard@ironwire.sh usage 2/5 machines · 6 vCPU in use (max 8/machine) · 3.0/8.0 GiB · 14.0/25.0 GiB disk
left to right: machines used vs allowed, total vCPU in use with the per-machine ceiling in parentheses, memory used vs budget, disk used vs budget.
what happens at the limit
nothing is throttled or deleted. a create, resize, or resume that would exceed the budget is rejected with an error saying what didn't fit:
$ ssh dashboard@ironwire.sh create worker quota exceeded: machines 5/5 $ ssh dashboard@ironwire.sh create big --mem=8G quota exceeded: memory 5120/8192 MiB (need 5120 more) $ ssh dashboard@ironwire.sh create wide --cpu=16 cores exceed the per-machine maximum: 8 max (requested 16)
(same errors on every surface: one-shot, the in-machine
ironwire CLI, or the dashboard's create form.)
free room: delete a machine, shrink memory with resize (disk can't shrink), or pause a machine you don't need running.
sizing with max
--cpu, --mem, and --disk accept the literal max on create and resize:
ssh
$ ssh dashboard@ironwire.sh create big --cpu=max --mem=max
cli
$ ironwire create big --cpu=max --mem=max
for cpu, max means your per-machine ceiling. for memory and disk it means whatever remains of your budget at that moment, so a --mem=max machine takes all the memory your other machines haven't claimed.
paused machines
pausing hands the machine's vCPU and memory back to your budget; only running machines count there. its disk keeps counting, and slightly more than usual: the root disk plus a state snapshot roughly the size of its memory. it still occupies a machine slot.
resume re-checks the vCPU and memory quota. if the machine no longer fits (say another machine took the memory), the resume is refused and the machine stays paused:
$ ssh dashboard@ironwire.sh resume big quota exceeded: memory 8192/8192 MiB (need 4096 more)
the shared drive
your shared drive's full capacity counts against the disk budget, attached or not. growing it is checked against the remaining disk budget; deleting it frees the capacity back.