Tuesday, November 25, 2025

KVM : Storage Migration

 

KVM : Storage Migration

 

This is the example to use Storage Migration feature for Virtual Machines.

The different point of Storage Migration from the Common Live Migration is that Storage Migration does not need a Storage server that has Virtual Machine images, when executing Storage Migration, Virtual Machine image on a KVM host is migrated on another KVM host like follows.

                          Storage Migration
                        <------------------->
                        
+----------------------+                     +----------------------+
|  [   KVM Host #1  ]  |10.0.0.21   10.0.0.22|  [  KVM Host #2   ]  |
|                      +---------------------+                      |
|   kvm01.srv.world    |                     |    kvm02.srv.world   |
+----------------------+                     +----------------------+

[1]

Configure 2 KVM Host Server and Create a Virtual Machine on a KVM Host.
Configure DNS or hosts to resolve names or IP addresses normally, first.

[2]Confirm the file size of a Virtual Machine image like follows on a KVM host, and next, move to another KVM host to create an empty disk image like follows.
# show the size of Virtual machine

root@kvm01:~# 
qemu-img info /var/kvm/images/debian13.img

image: /var/kvm/images/debian13.img
file format: qcow2
virtual size: 20 GiB (21474836480 bytes)
disk size: 5 GiB
cluster_size: 65536
Format specific information:
    compat: 1.1
    compression type: zlib
    lazy refcounts: true
    refcount bits: 16
    corrupt: false
    extended l2: false
Child node '/file':
    filename: /var/kvm/images/debian13.img
    protocol type: file
    file length: 20 GiB (21478375424 bytes)
    disk size: 5 GiB

### on another KVM host ###
# create a disk which is the same size of a Virtual Machine

root@kvm02:~# 
qemu-img create -f qcow2 -o preallocation=falloc /var/kvm/images/debian13.img 21474836480

[3]That's OK, Run Storage Migration like follows.
root@kvm01:~# 
virsh list

 Id   Name       State
--------------------------
 1    debian13   running

root@kvm01:~# 
virsh migrate --live --copy-storage-all debian13 qemu+ssh://10.0.0.22/system

root@kvm01:~# 
virsh list

 Id   Name       State
--------------------------
# VM migrated
### on another KVM host ###

root@kvm02:~# 
virsh list

 Id   Name       State
--------------------------
 1    debian13   running

No comments:

Post a Comment