Snapshots
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.
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
.
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.