====== Кейс: Оптимизация виртуальной инфраструктуры Hyper-V ======
**Автор:** Leo
**Философия:** Регулярное обслуживание виртуальных машин — это не "генеральная уборка", а необходимая процедура, как замена масла в автомобиле. Она предотвращает "зарастание" системы мусором, повышает производительность и упрощает резервное копирование.
===== 1. Проблема: С чем мы боролись =====
Со временем, в результате активных экспериментов и использования контрольных точек (снимков), виртуальные машины столкнулись с рядом проблем:
* **"Раздувание" дисков (.vhdx):** Физический размер ВМ на хосте значительно превышал реальный объем данных внутри.
* **Снижение производительности:** Длинные цепочки контрольных точек (`.avhdx`) приводили к заметному падению скорости дисковых операций, особенно у ВМ с Nextcloud.
* **Неэффективное резервное копирование:** Экспорты занимали избыточное количество места и времени, захватывая весь "балласт" из снимков.
===== 2. Решение: Методология "Чистый Лист" =====
Для решения поставленных задач была применена многоэтапная процедура, примененная к каждой ВМ поочередно.
==== Шаг 1: Консолидация данных (Объединение снимков) ====
Первым и ключевым шагом стало объединение всех существующих контрольных точек.
**Процедура:**
1. В Диспетчере Hyper-V **выключить** целевую ВМ.
2. В панели "Контрольные точки" нажать ПКМ на **самом верхнем** снимке и выбрать **"Удалить поддерево контрольной точки"**.
3. **ВАЖНО:** Дождаться полного завершения фонового процесса объединения. Проверить, что все `.avhdx` файлы для этой ВМ исчезли.
{{note>Эта операция позволила свести всю информацию в единый, монолитный `.vhdx` файл, что сразу дало ощутимый прирост в производительности.}}
==== Шаг 2: Внутренняя очистка гостевых ОС ====
Перед сжатием была проведена ревизия файловых систем для выявления и удаления "балластных" данных: остатков от старых проектов, ненужных архивов и системного кэша.
**Пример команд для диагностики:**
# Проверка общего использования диска
df -h
# Поиск самых "тяжелых" папок в корне
sudo du -h --max-depth=1 / | sort -rh
==== Шаг 3: Оптимизация диска ====
Для максимальной эффективности сжатия свободное пространство внутри гостевой ОС было заполнено нулями, после чего на хосте была применена команда оптимизации.
**Процедура (внутри ВМ):**
1. Заполнить свободное место нулями:
sudo dd if=/dev/zero of=/zerofile bs=1M status=progress || true
2. Удалить временный файл:
sudo rm /zerofile
3. Выключить ВМ:
sudo poweroff
**Процедура (на хосте Windows Server):**
* В PowerShell выполнить команду сжатия:
Optimize-VHD -Path "путь\к\диску.vhdx" -Mode Full
===== 3. Результаты =====
Проведенные мероприятия позволили достичь значительных улучшений по всей инфраструктуре:
* **Освобождено суммарно более 70 ГБ** дискового пространства на хост-сервере.
* **Повышена отзывчивость** и скорость работы всех виртуальных машин.
* **Ускорен и упрощен процесс резервного копирования**, так как [[процедуры:бэкап|эталонные бэкапы]] теперь создаются с чистых, монолитных дисков.
**Заключение:** Системный подход к управлению ВМ и регулярное проведение подобных "технических обслуживаний" являются залогом стабильной и эффективной работы домашней серверной лаборатории.