3.9.2 基于相同后端镜像的磁盘增量动态迁移

一、 整体架构图

size:800,1000


二、源宿主机配置

需要保证源宿主机和目的宿主机的原始镜像文件相同,所以首先制作一份 qcow2 文件,使用此文件启动虚拟机。命令行如下:

# qemu-img create -f qcow2 -o backing_file=/var/lib/libvirt/images/Loongnix-server-20-loongarch64.qcow2,size=50G migrate-test.qcow2
# qemu-system-loongarch64 \
    -name 'avocado-vt-vm1' \
    -cpu 'Loongson-3A5000' \
    -machine loongson7a \
    -m 2048 \
    -smp 2 \
    -bios /usr/share/qemu/loongarch_bios.bin \
    -boot c -d int \
    -drive file=migrate-test.qcow2,if=virtio \
    -enable-kvm \
    -vga qxl \
    -vnc :0 \
    -net nic -net tap \
    -serial stdio\
    -monitor telnet:localhost:4444,server,nowait

二、目的宿主机配置

在目的宿主机上,建立相同的 qcow2 格式的虚拟机镜像文件,并带有 “-incoming” 参数来启动虚拟机使其处于迁移监听状态。命令行如下:

# qemu-img create -f qcow2 -o backing_file=/var/lib/libvirt/images/Loongnix-server-20-loongarch64.qcow2,size=50G migrate-test.qcow2
# qemu-system-loongarch64 \
    -name 'avocado-vt-vm1' \
    -cpu 'Loongson-3A5000' \
    -machine loongson7a \
    -m 2048 \
    -smp 2 \
    -bios /usr/share/qemu/loongarch_bios.bin \
    -boot c -d int \
    -drive file=migrate-test.qcow2,if=virtio \
    -enable-kvm \
    -vga qxl \
    -vnc :0 \
    -net nic -net tap \
    -serial stdio\
    -monitor telnet:localhost:4444,server,nowait
    -incoming tcp:0:6666

三、迁移

在源宿主机的 QEMU monitor 中,运行 “migrate -i tcp:kvm-host2:6666” 命令,即可进行动态迁移( “-i” 表示 磁盘增量拷贝)。在迁移过程显示实时迁移百分比,提示为 “Completed 100 %” 即表示迁移完成。

# telnet localhost 4444
Trying ::1...
Connected to localhost.
Escape character is '^]'.
QEMU 3.1.0 monitor - type 'help' for more information
(qemu) 
(qemu) migrate -i tcp:10.20.42.197:6666
Completed 100 %

与此同时,目的宿主机上启动迁移监听状态的命令行所在标准输出中,也会提示正在传输的磁盘镜像百分比。当传输完成时也会提示 "Completed 100 %", 如下:

# qemu-system-loongarch64 \
    -name 'avocado-vt-vm1' \
    -cpu 'Loongson-3A5000' \
    -machine loongson7a \
    -m 2048 \
    -smp 2 \
    -bios /usr/share/qemu/loongarch_bios.bin \
    -boot c -d int \
    -drive file=migrate-test.qcow2,if=virtio \
    -enable-kvm \
    -vga qxl \
    -vnc :0 \
    -net nic -net tap \
    -serial stdio\
    -monitor telnet:localhost:4444,server,nowait
    -incoming tcp:0:6666

Receiving block device images
Completed 100 %

至此,基于相同后端镜像的磁盘增量动态迁移就已经完成了。

©龙芯开源社区 all right reserved,powered by Gitbook文档更新时间: 2025-05-30 15:05:55

results matching ""

    No results matching ""

    results matching ""

      No results matching ""