Hyper-v. Работоспособность и бэкапы виртуальных машин

Y

yumpa

Original poster
На работоспособность виртуальных машин влияют несколько факторов. Один из них – жесткий диск; на хосте представляет из себя файл с расширением vhd(x). Существуют три типа виртуального жесткого диска - фиксированный, динамический и разностный. Фиксированный означает то, что объем виртуального диска будет равен объему занимаемого пространства на реальном жестком диске. Динамический - объем файла виртуального диска равен объему занимаемой информации внутри виртуального диска. Разностный – это диск, который хранит только изменения, а вся информация находится на другом виртуальном диске (родитель)

1.png

По производительности фиксированный лучше, чем остальные, ведь размер диска не меняется при добавлении или удаление данных. Если взять 10 виртуальных машин и средний объем Windows 10 около 20ГБ, то получим 200гб занимаемого пространства. И это только операционная система. В плане экономии здесь поможет разностный диск. Работает по аналогу снапшота. Мы имеем диск, на котором операционная система 20гб, и который не изменяется (лучше ему присвоить атрибут «только для чтения»), и другой диск, который хранит изменения. В итоге, мы имеем 20гб родителя и по 2гб(приблизительно) на каждую машину. 40 против 200. А что будет, если у нас 100машин? Для распределения нагрузки на дисковую подсистему необходимо использовать ссд в качестве хранения родительского диска.

При использовании большого количества виртуальных машин стоит задуматься о резервных копиях. Ведь устройство хранение информации может подвести в любой момент (погаснет свет либо случайное механическое воздействие и тд).
- Для этих целей в windows server предусмотрена фича, под названием архивация. Это достаточно простой и удобный инструмент, способен архивировать разделы, диски, виртуальный машины и целые сервера.
По умолчанию архивация не установлена, поэтому откроем диспетчер сервером, выбираем «роли и компоненты» и добавляем компонент

2.png

После установки найдем эту фичу. Найти достаточно просто, нужно открыть «диспетчер серверов» и во вкладке «средства» найдем архивацию

3.png

В появившемся окне есть несколько вариантов работы, выберем однократная архивация. Следуя работы мастера, мы можем выбрать, какие виртуальные машины необходимо архивировать

4.png

По окончанию операции мы получим папку на выбранном диске WindowsImageBackup. В которой хранится образ виртуальных машин. Архивацию нужно выполнять в выключенном состоянии виртуальной машины, но не обязательно. В процессе работающие машины приостанавливаются на некоторое время, а затем снова запускаются. Сделанный архив можно восстанавливать на любой машине, при условии не ниже версии гипервизора.
- Еще один способ архивации – это использовать экспорт виртуальных машин. Разница с вышеперечисленным методом в том, что мы получаем каждую машину в отдельной папке и для восстановления понадобится только импортировать.
- И мой любимый способ – простое копирование файлов жестких дисков выключенных виртуальных машин. Снапшоты должны быть удалены. Если машина будет приостановлена либо со снапшотом, то большой риск возникновения серьезных (вплоть до отказа) проблем при монтировании этого диска к новой машине.
Очень редко, но бывает нужно сделать даунгрейд версии виртуальных машин. Например, у нас windows 2019, а машины нужно перенести на windows 2016. Обычными средствами это сделать нельзя. Выключаем машину, удаляем снапшоты (если они есть) и копируем виртуальный диск на другой хост. Создаем на другом хосте новую виртуальную машину и монтируем диск, и все заработает.
При монтировании дисков, которые привязаны к родительским нужно обновить их связи на новом хосту. В powershell вводим команду set-vhd -Path “путь к диску” -ParentPath “путь к родительскому диску”

5.png

Машины заархивированы, теперь возникает вопрос о хранении. Информацию лучше хранить на серверном жестком диске и извлекать его после выполнения архивации. Также можно продублировать эти данные в облаке (Гугл или Яндекс диски, телеграм)
vk.com/id58924119​