Подробное объяснение того, как работают снимки виртуальной машины

Я хотел бы полностью понять, как работают снимки виртуальной машины. Хотя я исследовал эту тему, я не могу найти общий обзор того, как снимки работают практически. Мои вопросы:

Пример сценария: У меня есть хост Ubuntu 12.04, на котором запущен KVM с гостем Ubuntu. Виртуальная машина в формате RAW. Я снимал это с помощью virsh команда,

  1. Полученный файл (снимок) является загрузочным? Или просто изменить данные, которые требуют использования базового изображения?
  2. Как вернуться к предыдущему состоянию?
  3. Влияет ли наличие длинной цепочки снимков на производительность виртуальной машины? Если так, то почему?
  4. Как управлять снимками?

1 ответ

Решение
  • Снимок является частью цепочки изображений и требует наличия всех снимков.
  • Вы можете загрузиться со снимка, но вы также должны иметь все предыдущие изображения без изменений
  • Наличие цепочки снимков снижает производительность. Высоконагруженные серверные виртуальные машины вообще не должны запускать моментальные снимки
  • Чтобы управлять снимками, вы просто стараетесь сделать цепочку максимально короткой / ровной. man qemu-img для технических деталей
  • Когда вы делаете снимок, создается новое пустое изображение. Когда вы читаете блок из изображения, вы фактически нажимаете указатель на предыдущий снимок в цепочке (и так далее по цепочке, пока вы не натолкнетесь на блок данных). Когда вы записываете снимок, указатель заменяется реальным блоком данных, и изображение снимка увеличивается на этот блок.

Чтобы лучше понять, начните здесь

Другие вопросы по тегам