Restoring a VM or BareMetal server from a backup of another VM or BareMetal server
Note
You cannot restore a VM backup to a BareMetal server, nor restore a BareMetal server backup to a VM.
BareMetal is at the Preview stage.
If a folder contains multiple VMs or BareMetal servers connected to Cloud Backup, you can restore a VM or BareMetal server from a backup of another VM or BareMetal server, respectively. You may need this, for example, if the source VM or BareMetal server is down.
To avoid errors when recovering from a backup, start by comparing the parameters of the disks and partitions of the backup against those of the VM or Yandex BareMetal server. For more information, see Viewing the parameters of backup disks and partitions.
Note
The operating system of the target VM or BareMetal server must be the same as that of the VM or BareMetal server the backup was created from. The boot disk of the target VM or BareMetal server must be at least the size of the boot disk of the source VM or BareMetal server. The target VM or BareMetal server status must be Running
.
To restore a VM or BareMetal server from a backup of another VM or BareMetal server:
-
In the management console
, select the folder where the backup is located. -
From the list of services, select Cloud Backup.
-
In the left-hand panel, select
Backups. -
Depending on what resource you want to recover from the backup, select the Virtual machines or BareMetal servers tab.
-
In the line with the backup to restore the VM or BareMetal server from, click
and select Restore VM or Recover BareMetal server, respectively. In the window that opens:-
Select the VM or BareMetal server to restore the backup to. If needed, click Create to create a new VM or to lease a new BareMetal server for recovery from a backup.
If creating a new VM, wait until the VM connects to Cloud Backup. If leasing a new BareMetal server, connect it to Cloud Backup. Then click
in the backup recovery window for the new VM or BareMetal server to show up in the list. -
(Only for VMs) To avoid a conflict between the restored and the source VM, enable Delete outdated VM.
If this option is not selected, after the recovery the source VM you created the backup from will become outdated. To continue creating backups of this VM, refresh its connection to Cloud Backup.
-
Click Recover.
-
-
If you do not have the Yandex Cloud CLI yet, install and initialize it.
-
The folder specified in the CLI profile is used by default. You can specify a different folder through the
--folder-name
or--folder-id
parameter. -
See the description of the CLI command to restore a VM or BareMetal server from a backup:
yc backup backups recover --help
-
Get the IDs of the target VM to restore the backup to and the source VM whose backup you want to use:
yc compute instance list
Result:
+----------------------+---------+---------------+---------+--------------+-------------+ | ID | NAME | ZONE ID | STATUS | EXTERNAL IP | INTERNAL IP | +----------------------+---------+---------------+---------+--------------+-------------+ | jklp0o9i8012******** | my-vm-1 | ru-central1-b | RUNNING | 51.250.**.** | 192.168.*.* | | mnoa5s6d8345******** | my-vm-2 | ru-central1-b | RUNNING | 84.201.**.** | 192.168.*.* | +----------------------+---------+---------------+---------+--------------+-------------+
To get the BareMetal server IDs, select BareMetal from the list of services of the relevant folder in the management console
. The IDs are specified in the server list in the ID field. -
Get the ID of the backup of the source VM or BareMetal server:
yc backup backups list \ --instance-id <source_VM_or_BareMetal_server_ID>
Where
--instance-id
is the ID of the source VM or BareMetal server whose backup you want to use.Result:
+--------------------------------------+--------------------------------------+----------------------+--------------------------------------+----------------------+------+------------------+--------+---------------------+ | ID | ARCHIVE ID | COMPUTE INSTANCE ID | RESOURCE ID | POLICY ID | TYPE | DISKS | SIZE | CREATED AT | +--------------------------------------+--------------------------------------+----------------------+--------------------------------------+----------------------+------+------------------+--------+---------------------+ | 9cba836d-869c-41d2-8f25-0dac******** | 8a5b6d59-f7ce-0cb9-6cbf-151c******** | epdhmn8mdqmt******** | 7AF6A532-D1DC-4945-9D0C-E101******** | cdgiqu6ouch3******** | FULL | Disk 1 (13.0 GB) | 1.4 GB | 2023-07-11 05:10:09 | | 05e964ca-6a8f-481a-b83e-44c5******** | 8a5b6d59-f7ce-0cb9-6cbf-151c******** | epdhmn8mdqmt******** | 7AF6A532-D1DC-4945-9D0C-E101******** | cdgiqu6ouch3******** | FULL | Disk 1 (15.0 GB) | 1.4 GB | 2023-07-11 05:00:07 | +--------------------------------------+--------------------------------------+----------------------+--------------------------------------+----------------------+------+------------------+--------+---------------------+
-
Restore the VM or BareMetal server from the backup:
yc backup backups recover \ --source-backup-id <backup_ID> \ --destination-instance-id <source_VM_or_BareMetal_server_ID>
Where:
--source-backup-id
: Backup ID.--destination-instance-id
: ID of the target VM or BareMetal server to restore the backup to.
Result:
...1s...6s...11s ... 9m4s...9m9s...done (9m9s)
For more information about the command, see the CLI reference.
Use the startRecovery REST API method for the Backup resource or the BackupService/StartRecovery gRPC API call.
Following recovery from a backup, the source VM (unless the Delete outdated VM option was enabled in the management console during the backup) or BareMetal server the backup was created from will become obsolete. To be able to create new backups of the source VM or BareMetal server, refresh their connection to Cloud Backup. For more information, see Updating a VM connection to Cloud Backup and Updating a Yandex BareMetal server connection to Cloud Backup.
Warning
After you recover a BareMetal server from another server’s backup, network access to the target server may become impossible. This is because the network settings recovered from the backup, namely the network interface MAC addresses, were taken from the source server.
To restore the network on the target VM, update the MAC addresses in the server's network interface settings using the KVM console. You can get the current MAC addresses using the ip a
command. For more information on setting up network interfaces in a particular OS, see the relevant OS guides.