ironwire / documentation

quotas & budgets

four budget dimensions per account. check them with usage, fill what's left with max sizing.

the four dimensions

DimensionHow it counts
Machinesa count of your machines, whatever their state.
vCPUa per-machine ceiling: no single machine gets more cores than this. cores are not summed across machines.
Memorya summed budget: all your machines' memory together must fit.
Diska summed budget: all machine disks plus your shared drive must fit.
note the vCPU limit works differently. with an 8-vCPU ceiling you can run five 8-core machines, but no 9-core machine.

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.