Snapshots provide a way to get point-in-time recovery for your instance.

In a typical usage example, you would snapshot your instance before applying patches. After the patches are installed, if your tests are not satisfying or an incompatibility is introduced, you can revert to the snapshot and restore the previous working state.

Snapshots are strongly tied to your instance: if you delete your instance, the snapshots will be deleted as well.

Snapshots are located in the instance detail screen

Create a New Snapshot

Warning

It is strongly encouraged to stop a Compute instance before creating a snapshot of its storage volume in order to ensure all data is written to the disk controller and it reaches the underlying hypervisor backend storage. Alternatively, using the facility provided by your OS to flush cached writes to disk ensures data recently written will be snapshotted. On Linux, you can do this with the sync(1) command.

We recommended you avoid performing any action on the related instance during a snapshot operation, so any unintended side-effects that could lead to an operation failure do not occur.

From the instance detail screen, click on on CREATE SNAPSHOT to create a new snapshot. A successfully created snapshot has a green checkmark under STATE.

Wait for a snapshot to be ready before operating on it

Revert to a Snapshot

If you need to revert to a snapshot in the Portal, first stop your instance. Then from the snapshots list in the instance detail, click Revert under the ... button in the Actions column for the snapshot you wish to revert.

Using the CLI, the equivalent command is:

exo compute instance snapshot revert

Delete a Snapshot

To delete a snapshot, click on Delete under the ... button in the Actions column for the snapshot you wish to delete.

Using the CLI, the equivalent command is:

exo compute instance snapshot delete

Export or Download a snapshot

An exported snapshot file can be downloaded either for backup purposes, or used as input to create a new Custom Template.

To export a snapshot, use the following CLI command:

$ exo compute instance snapshot export ce295d39-421e-49c4-81f7-9890c3db3600
 ✔ Exporting snapshot ce295d39-421e-49c4-81f7-9890c3db3600... 4s
┼──────────┼──────────────────────────────────────────────────────────────────┼
│ URL      │ https://exported-snapshots-ch-gva-2-prod.sos-ch-gva-2.exo.io/... │
│ Checksum │ 34ef65cad47428e799f9bc6c02b7ebd5                                 │
┼──────────┼──────────────────────────────────────────────────────────────────┼

Using the CLI’s templated text output format, you can download an exported snapshot disk file locally, for example as an extra backup method:

$ wget -O ce295d39-421e-49c4-81f7-9890c3db3600.template \
    $(exo compute instance snapshot export ce295d39-421e-49c4-81f7-9890c3db3600 --output-template {{.URL}} 2>/dev/null)
--2021-09-17 10:51:12--  https://sos-ch-gva-2.exo.io/...
Resolving sos-ch-gva-2.exo.io (sos-ch-gva-2.exo.io)... 194.182.160.205
Connecting to sos-ch-gva-2.exo.io (sos-ch-gva-2.exo.io)|194.182.160.205|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 10301276160 (9.6G) [application/binary]
Saving to: ‘ce295d39-421e-49c4-81f7-9890c3db3600.template’
[...]

Note

The duration of a snapshot operation may vary greatly depending on the size of your volume and the amount of data stored on it. The entire operation can take up to several hours, during which no other operation should be performed on the instance.

After the snapshot is exported, the returned pre-signed URL will only be valid for 6 hours. You can get a new one by repeating the operation, knowing that the subsequent exports of an already exported snapshot will be instantaneous.

Limits

  • Snapshots are limited to 30 per account. Please contact support if you need more.
  • Only one snapshot operation is permitted at a time. For example, when a snapshot is being destroyed, you cannot create a new snapshot of the same storage volume.
  • Snapshots cannot be named. They are identified by a UUID.
  • When you delete an instance, its snapshots are deleted as well.
  • Snapshots are currently unavailable for storage optimized instances.