LINUX.ORG.RU
ФорумAdmin

не грузиться со snapshot (libvirt, qemu)

 , , , ,


0

2

Всем привет. Прошу вашей помощи и понимания (не очень разбираюсь в данном вопросе). Суть моего вопроса с картинками изложена тут: https://toster.ru/q/276943

Если ссылки на другие сайт дурной тон, то прошу прощения и дублирую вопрос сюда.

Проблема: не грузиться со снимка (зависает при старте загрузки рабочего стола) Подозрения: Format specific information: compat: 1.1 lazy refcounts: false

Подробнее: Хочу сделать резервное копирование путём копий snapshots. Для этого я воспользовался вот этим советом

root@server:/var/lib/libvirt/images# qemu-img create -f qcow2 -b win81.img win81.qcow2.snap Formatting 'win81.qcow2.snap', fmt=qcow2 size=214748364800 backing_file='win81.img' encryption=off cluster_size=65536 lazy_refcounts=off root@server:/var/lib/libvirt/images# ls -l -rw------- 1 root root 214748364800 дек. 21 11:27 win81.img -rw-r--r-- 1 root root 200192 дек. 21 11:27 win81.qcow2.snap

root@server:/var/lib/libvirt/images# sudo virsh shutdown win81 Завершение работы домена win81

Далее идём менять xml файл.

root@server:nano /etc/libvirt/qemu/win81.xml <domain type='kvm'> <name>win81</name> <uuid>083283e5-ce0b-0905-b491-3fe01cf042ea</uuid> <memory unit='KiB'>2097152</memory> <currentMemory unit='KiB'>2097152</currentMemory> <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='pc-i440fx-trusty'>hvm</type> <boot dev='hd'/> </os> <features> <acpi/> <apic/> <pae/> </features> <clock offset='localtime'/> <on_poweroff>destroy</on_poweroff> <on_reboot>restart</on_reboot> <on_crash>restart</on_crash> <devices> <emulator>/usr/bin/kvm-spice</emulator>

БЫЛО <disk type='file' device='disk'> -- <driver name='qemu' type=‘qcow2’/> -- <source file='/var/lib/libvirt/images/win81.qcow2.snap/> <target dev='hda' bus='ide'/> <address type='drive' controller='0' bus='0' target='0' unit='0'/> </disk>

СТАЛО <disk type='file' device='disk'> ++ <driver name='qemu' type='raw'/> ++ <source file='/var/lib/libvirt/images/win81.img'/> <target dev='hda' bus='ide'/> <address type='drive' controller='0' bus='0' target='0' unit='0'/> </disk>

root@server:/var/lib/libvirt/images# ls -l -rw------- 1 root root 214748364800 дек. 21 11:27 win81.img -rw-r--r-- 1 root root 200192 дек. 21 11:27 win81.qcow2.snap root@server:/var/lib/libvirt/images# virsh start win81 Домен win81 запущен

Смотрю через vnc и вижу как грузиться винда. По завершению загрузки значка Windows появляется мышка на чёрном экране и больше ничего не грузиться (ждал 10 минут)

Смотрю сюда.

root@server:/var/lib/libvirt/images# qemu-img info win81.qcow2.snap image: win81.qcow2.snap file format: qcow2 virtual size: 200G (214748364800 bytes) disk size: 196K cluster_size: 65536 backing file: win81.img Format specific information: compat: 1.1 lazy refcounts: false

Так как не особо разбираюсь во всей этой кухни, то насторожило lazy refcounts: false. В поисках пишут что это какой то баг, который фиксится. Но в нём ли дело - ковырять не стал. root@server:/etc/libvirt/qemu# virsh version Собрано при помощи библиотеки: libvirt 1.2.2 Используется библиотека: libvirt 1.2.2 Используется API: QEMU 1.2.2 Выполняется гипервизор: QEMU 2.0.0

Может быть допустил ошибку в действиях в силу неопытности?


Ответ на: комментарий от ArcFi

В целом я вижу это примерно так: снимок (snap) - это ни что иное как, грубо говоря «логирование», основного файла (img). Запуская snap мы запускаем img с теме изменениями которые записал snap. Собственно я выключил img, затем создал snap,и запустил домен (изменив xml под snap). Резульат - система не грузилась. Возможно подскажите где можно посмотреть логи. Спасибо.

eashla
() автор топика

сначала надо остановить виртуалку, затем делать снапшот, а не наоборот как ты сделал.

anonymous
()

Как минимум надо поставить на виндовс гостевую часть qemu (http://wiki.qemu.org/Features/QAPI/GuestAgent), и перед бекапом делать заморозку файловой системы со сбросом кэша на диск (guest-fsfreeze-freeze), делать снапшот, делать разморозку (guest-fsfreeze-thaw). Как вам уже посоветовали - надо копать в сторону консистентных бэкапов, снапшот сам по себе не панацея от всех бед.

viewizard ★★
()
Ответ на: комментарий от anonymous

«Собственно я выключил img, затем создал snap»

я так и делал. возможно не так выразился - извините.

eashla
() автор топика
Ответ на: комментарий от viewizard

а разве обычная остановка ВМ не делает того же ? Аген - это для того что бы не выключать ВМ, а лишь заморозить. Я пошёл конкретным путём - полное выключение ВМ, а затем создание snap. ВМ выключение - это завершение работы системы с отключением питания (destroy domain).

Вроде это тоже верный вариант, что бы всё сработало.

eashla
() автор топика
Ответ на: комментарий от smilessss

Нет. Разговор веду о ВМ реализованной на linux.

eashla
() автор топика
Ответ на: комментарий от eashla

Вижу обратное


Для этого я воспользовался вот этим советом

# qemu-img create -f qcow2 -b win81.img win81.qcow2.snap 

# ls -l 
-rw------- 1 root root 214748364800 дек. 21 11:27 win81.img 
-rw-r--r-- 1 root root 200192 дек. 21 11:27 win81.qcow2.snap

# virsh shutdown win81
Завершение работы домена win81
anonymous
()
Ответ на: комментарий от anonymous

Так и делал ... вроде, вот только видимо изложил не правильно. Извините.

Перепроверю. Спасибо!

eashla
() автор топика
Ответ на: комментарий от eashla

Проверил и нашёл причину

Делал всё верно, но оказалось затык был в другом. Надо было сделать рестарт libvirt. Так же рекомендуется избавиться от xml файлов-дублей (папка /etc/libvirt/qemu) в которых uuid одинаковый и переназначить автозагрузку.

Осталось непонятные моменты: 1)Непонятное появление файла (название совпадает с файлом-снимком который я создавал в категории /var/lib/libvirt/images) win81.qcow2.snap

root@server:/etc/libvirt/qemu# ls -lh
итого 212K
drwxr-xr-x 2 root root 4,0K янв.   8 12:29 autostart
drwxr-xr-x 3 root root 4,0K марта 12  2015 networks
-rw-r--r-- 1 root root 196K янв.   8 11:15 win81.qcow2.snap
-rw------- 1 root root 2,6K янв.   8 12:33 win81-snap.xml
-rw------- 1 root root 2,7K июня  28  2014 winxp.xml
root@server:/etc/libvirt/qemu# qemu-img info win81-snap.xml 
image: win81-snap.xml
file format: raw
virtual size: 3.0K (3072 bytes)
disk size: 4.0K
root@server:/etc/libvirt/qemu# 

И собственно там сейчас и лежит этот файл, который меняет свой размер /var/lib/libvirt/imageswin81.qcow2.snap

<disk type='file' device='disk'>
      <driver name='qemu' type='qcow2'/>
      <source file='/var/lib/libvirt/images/win81.qcow2.snap'/>
      <target dev='hda' bus='ide'/>
      <address type='drive' controller='0' bus='0' target='0' unit='0'/>
    </disk>

путь к файлу

root@infinity:/var/lib/libvirt/images# ls -lh
итого 50G
-rw------- 1 libvirt-qemu kvm 200G янв.   8 11:12 win81.img
-rw-r--r-- 1 libvirt-qemu kvm 1,3G янв.   8 17:59 win81.qcow2.snap
root@infinity:/var/lib/libvirt/images# 

2)Операционная система на этой машине загружает 1 программу для кассы, склада. Объём информации весьма скудный и изменения в операционной системе минимальны. Мне не понятно, почему файл-снимок за 2 часа вырос в размера до 1.3 гб и продолжает расти. Почему такой интенсивный рост в файле-снимке ?

3)нужно ли мне останавливать машину, для того чтобы правильно сделать копию файл-слайда? Собираюсь делать 1 копию файл-слайда в день через кронтаб. Могу ли я делать копию файл-снимка (с которого запущена сама машина) не останавливая виртуальную машину ?

Спасибо за внимание !

eashla
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.