Skip to content

Commit a774e4f

Browse files
committed
docs(instance): add instance moving guide
1 parent dd5ae74 commit a774e4f

File tree

1 file changed

+72
-0
lines changed

1 file changed

+72
-0
lines changed
Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
---
2+
meta:
3+
title: Moving Scaleway Instances between Availability Zones and Projects
4+
description: Find out how to move Scaleway Instances between Availability Zones and Projects.
5+
content:
6+
h1: Moving Scaleway Instances between Availability Zones and Projects
7+
paragraph: Find out how to move Scaleway Instances between Availability Zones and Projects
8+
dates:
9+
validation: 2025-07-15
10+
posted: 2025-07-15
11+
categories:
12+
- compute
13+
tags: instance migration
14+
---
15+
import Requirements from '@macros/iam/requirements.mdx'
16+
17+
This guide explains how to move a Scaleway Instance (Virtual Machine) from one Availability Zone (AZ) to another or from one Project to another, regardless of whether the Instance uses Local Storage or Block Storage.
18+
You can perform these actions using the Scaleway console, CLI, or API.
19+
20+
<Requirements />
21+
- A Scaleway account logged into the [console](https://console.scaleway.com)
22+
- An [Instance](/instances/how-to/create-an-instance/)
23+
- The [Scaleway CLI](/docs/scaleway-cli/quickstart/) installed (for CLI-based instructions)
24+
- A valid [API key](/iam/how-to/create-api-keys/) with sufficient permissions (for API-based instructions)
25+
- [Owner](/iam/concepts/#owner) status or [IAM permissions](/iam/concepts/#permission) allowing you to perform actions in the intended Organization
26+
27+
<Message type="important">
28+
- Moving an Instance between AZs requires creating a snapshot of the Instance’s data and launching a new Instance in the target AZ, as direct migration of a running Instance is not supported.
29+
- Moving an Instance between Projects involves transferring ownership of the Instance or its snapshot.
30+
- Local Storage is tied to the Instance’s hypervisor and cannot be directly moved across AZs. Block Storage volumes can be detached and reattached within the same AZ but require additional steps for cross-AZ migration.
31+
- Ensure the target AZ supports the desired Instance type. Refer to the [Instances datasheet](/instances/reference-content/instances-datasheet/) for details.
32+
</Message>
33+
34+
## Moving an Instance between Availability Zones
35+
36+
### Creating a snapshot
37+
38+
1. In the Scaleway console, navigate to **Compute > CPU Instances**, select your Instance, and go to the **Storage** tab to view attached volumes (Local or Block Storage).
39+
40+
2. From the Instance’s **Storage** tab, click **+ Create snapshot**. A popup displays.
41+
- Select the volume to snapshot, choose a name, and select the snapshot type (LSSD for Local Storage, BSSD for Block Storage).
42+
- Click **Create snapshot**.
43+
- Repeat for all volumes attached to the Instance if you need a full backup.
44+
<Message type="note">
45+
Snapshots can be created without stopping the Instance. However, for data consistency, pause heavy write operations if possible.
46+
</Message>
47+
48+
### Exporting the snapshot to Object Storage
49+
50+
Snapshots must be exported to a Scaleway Object Storage bucket in the same region as the source and destination AZs to move them across AZs.
51+
52+
#### Exporting Local Storage snapshots via the console
53+
- Navigate to **Local Storage > Snapshots**, select the snapshot, and click **Actions > Copy to bucket**.
54+
- Enter a file name for the QCOW2 export (ensure it ends with `.qcow` or `.qcow2`) and select an Object Storage bucket in the same region.
55+
- Click **Copy snapshot to bucket**. Wait for the export to complete (status turns green).
56+
57+
#### Exporting Block Storage snapshots via CLI
58+
- For recent snapshots, managed by the Block Storage API, use the following command to export the snapshot to an Object Storage bucket in the same AZ as the snapshot.
59+
```bash
60+
scw block snapshot export-to-object-storage zone=<zone-to-target> snapshot-id=<snapshot-id> bucket=<bucket-name> key=<qcow2-file-name>.qcow2
61+
```
62+
Replace `<snapshot-id>` with the snapshot ID, `<bucket-name>` with your Object Storage bucket name, and `<qcow2-file-name>` with the desired file name.
63+
64+
65+
- For legacy volumes, managed by the Instances API, usee the following command:
66+
```bash
67+
scw instance snapshot export-to-object-storage zone=<zone-to-target> snapshot-id=<snapshot-id> bucket=<bucket-name> key=<qcow2-file-name>.qcow2
68+
```
69+
Replace `<snapshot-id>` with the snapshot ID, `<bucket-name>` with your Object Storage bucket name, and `<qcow2-file-name>` with the desired file name.
70+
71+
72+
### Importing the Snapshot into the destination AZ

0 commit comments

Comments
 (0)