Назад |
Перейти на главную страницу
Подробное объяснение того, как работают снимки состояния виртуальных машин
Я хотел бы полностью понять, как работают снимки виртуальных машин. Хотя я исследовал эту тему, я не могу найти «высокоуровневого» обзора того, как на практике работают снимки. Мои вопросы:
Пример сценария: у меня есть хост Ubuntu 12.04, на котором работает KVM с гостевой системой Ubuntu. Виртуальная машина находится в формате RAW. Я сделал снимок с помощью virsh
команда
- Является ли полученный файл (снимок) загрузочным? Или это просто изменение данных, для которых необходимо использовать базовый образ?
- Как вернуться к предыдущему состоянию?
- Снижает ли длинная цепочка снимков производительность виртуальной машины? Если да, то почему?
- Как управлять снимками и удалять их?
- Снимок является частью цепочки изображений и требует наличия всех снимков.
- Вы можете загрузиться со снимка, но все предыдущие изображения также должны быть нетронутыми.
- Наличие цепочки моментальных снимков снижает производительность. На высоконагруженных серверных виртуальных машинах вообще не должно быть снимков состояния.
- Чтобы управлять снимками, вы просто стараетесь, чтобы цепочка была как можно короче / плоской.
man qemu-img
для технических деталей - Когда вы делаете снимок, создается новое пустое изображение. Когда вы читаете блок из изображения, вы фактически нажимаете указатель на предыдущий снимок в цепочке (и так далее по цепочке, пока не попадете в блок данных). Когда вы записываете снимок, указатель заменяется реальным блоком данных, и изображение снимка увеличивается на этот блок.
Чтобы лучше понять, начните Вот