Назад | Перейти на главную страницу

снимок kvm (libvirt)

Я управляю kvm с помощью libvirt и использую формат файла qcow2. Я могу создавать снимки запущенного wm с помощью команды snapshot-create, но если я перенесу свой образ qcow2 на другой хост и определю перенесенный хост с помощью virsh define, я не смогу увидеть снимки, созданные ранее. Есть ли способ перенести и снимки?

Спасибо ;-)

Предполагая, что вы уже перенесли сами изображения и настроили добавление их определений в целевой экземпляр libvirt, все, что вам нужно сделать, это также передать определения снимков. Вот небольшой сценарий, который вам поможет:

#!/bin/sh

SRC_URL=qemu:///system
SRC_DOMAIN_NAME=test
SRC_DOMAIN_UUID=`virsh -c $SRC_URL domuuid $SRC_DOMAIN_NAME`

DST_URL=qemu+ssh://example.com/system
DST_DOMAIN_NAME=test-clone
DST_DOMAIN_UUID=`virsh -c $DST_URL domuuid $DST_DOMAIN_NAME`

# Dump snapshot definitions
virsh -c $SRC_URL snapshot-list $SRC_DOMAIN_NAME | \
awk '$1 ~ /[[:digit:]]+/ { print $1 }' | \
xargs -I{} -n1 sh -c 'virsh -c "$1" snapshot-dumpxml "$2" "$3" | sed s#$4#$5# > "$2-$3.xml"' -- \
$SRC_URL $SRC_DOMAIN_NAME {} $SRC_DOMAIN_UUID $DST_DOMAIN_UUID

# Restore snapshot definitions
find . -type f -name "$SRC_DOMAIN_NAME-*.xml" | \
xargs -n1 echo virsh -c $DST_URL snapshot-create $DST_DOMAIN_NAME 

Просто настройте переменные в соответствии с вашими хостами и доменами.