Skip to content

Create and manage a VM ​

Atlas chooses a host and stores the VM request. Metal applies that request on the host. Start with how one VM request works to learn which component owns each state.

Create a VM ​

Atlas chooses a host, saves a draft reservation, and asks Metal to create the VM. Metal accepts the request before the guest is ready. Follow the linked request guide for the full create flow and lost-response behavior.

Change a VM ​

Atlas sends power, restart, resource, network, key, and metadata changes to the assigned host. Metal reports the applied generation separately from request acceptance.

A resize uses the current host if it has enough capacity. Otherwise, Atlas can reserve another host and use migration.

Read Metal's requested and applied generations for current progress. The Atlas VM list uses cached host reports.

Terminate a VM ​

  1. Atlas requests destruction and marks its record as terminating.
  2. Metal removes runtime, network, and disk resources through saved cleanup checkpoints.
  3. Atlas removes its record after Metal confirms absence.

Public-address allocation has a separate retry path.

Failure and recovery ​

Keep uncertain drafts and terminating records when Metal does not answer. Find a problem starts with the assigned host, Metal progress, and Atlas jobs. For guest access, use the console.

Details: Atlas VM records, Metal reconciliation, Atlas API, and Metal API.

Source code and tests

AGPL-3.0