Renting a machine by the second: how compute leasing works
A lease, an accept, a settle. Three blocks on the lattice take a VM from request to teardown, with the provider's own money at stake the whole time.
On XE, a consumer leases a virtual machine directly from a provider. There's no platform in the middle: every step of the lease is a block on the lattice, so both sides share a verifiable record of what happened.
Three blocks#
- The consumer writes a lease block on their chain, paying the cost in XUSD.
- The provider writes a lease_accept block, staking XUSD as collateral, with timekeeper attestations for the start time. The VM is provisioned before the accept is committed; if provisioning fails, the lease is never accepted.
- When the lease runs out, the provider writes lease_settle, recovers its stake, and earns XE emission. The VM is torn down.
What each side puts in#
- Consumer: pays the lease cost in XUSD, and gets vCPUs, memory and disk.
- Provider: stakes XUSD (a fifth of the cost, minimum 1), locked until settlement, and earns XE when it settles.
A lease names exactly what it needs:
{
"vcpus": 4,
"memory_mb": 8192,
"disk_gb": 80
}Getting in#
Consumers reach their VM over SSH through a gateway that relays the connection end to end, so the gateway never sees inside the session. Each wallet has its own SSH key, so one wallet can't reach another's machines.
xe providers # who has capacity
xe lease --vcpus 4 --memory 8192 --disk 80 --duration 3600
xe ssh <lease-hash>The full lifecycle, including failure cases, is in the compute docs.