Я запускаю qemu-img-0.12.1.2-2.355.0.1.el6 в CentOS 6.3, используя необработанные образы для своих виртуальных машин. Есть ли способ безопасно создавать резервные копии гостей, не останавливая их? Я попытался сделать снимок на тестовой гостевой машине, которая не работала, но получила ошибку: «Живой снимок диска не поддерживается этим двоичным файлом qemu». Означает ли это, что необработанный формат не подходит для любого типа снимков, или это что-то из моего пакета KVM? Я читал, что приостановки гостя достаточно для выполнения операции dd, верно? Не могли бы вы поделиться своими лучшими практиками в этой области?
Если вы используете сырой образ файлы тогда единственный способ получить согласованный моментальный снимок - приостановить или выключить виртуальную машину.
Вы можете сделать снимок с помощью файлов изображений qcow2 без приостановки виртуальной машины, но снимок станет частью этого файла. Это может или не может быть подходящим, в зависимости от вашей ситуации.
У вас было бы больше возможностей, если бы вы использовали CentOS 7 или текущий гипервизор Fedora, например тома LVM с моментальными снимками или zvols ZFS. В этих современных системах вы бы virsh domfsfreeze
гость, сделай снимок, virsh domfsthaw
гостя, а затем сделайте резервную копию снимка. Для этого в гостевой системе должен быть запущен qemu-guest-agent.
Приостановка виртуальных машин с помощью virsh suspend <domain>
просто замораживает виртуальную машину, согласно документации все дисковые операции ввода-вывода и сетевой ввод-вывод приостановлены, в то время как виртуальная машина по-прежнему потребляет оперативную память хоста.
Если у вас есть Centos, то с большой вероятностью у вас также есть раздел LVM и, кроме того, раздел XFS. Если утверждение верно, то вы можете сделать резервную копию следующим образом:
У меня работает даже с серверами баз данных. Резервное копирование файлового сервера (например, samba) совершенно безопасно, без отбрасывания кеша на хосте или виртуальной машине, при условии, что параметры ядра на хосте и guset установлены по умолчанию. Потеря данных минимальна. Например, Ext4 фиксирует грязные страницы в ОЗУ каждые 5 секунд (настройка по умолчанию). Это может привести к потере данных, которые были совершены менее чем за 5 секунд до зависания. Такая потеря данных была для меня приемлемой.
У каждого метода резервного копирования есть свои недостатки. Время простоя или возможная потеря данных. Многие администраторы баз данных полагают, что потеря данных может привести к повреждению данных, когда ядро базы данных (например, MS SQL) обязательно должно фиксировать каждую транзакцию в файловой системе перед принятием изменения. С другой стороны, они соглашаются восстанавливать данные из резервной копии и соглашаются с потерей данных.