Ответы:
Virtualbox поддерживает TRIM начиная с версии 4.2
- Хранение: реализована поддержка сброса неиспользуемых блоков изображений через TRIM для SATA и IDE и UNMAP для SCSI при использовании образов VDI
Вы должны будете использовать --nonrotational on
и --discard on
возможности :
--discard
Включает функцию автоматического удаления виртуальных жестких дисков. Это указывает, что образ VDI будет сокращен в ответ на команду обрезки гостевой ОС. Следующие требования должны быть выполнены:
- Формат диска должен быть VDI.
- Размер очищаемой области должен быть не менее 1 МБ.
- Oracle VM VirtualBox будет обрезать только целые блоки размером 1 МБ. Сами VDI организованы в блоки по 1 МБ, поэтому это будет работать только в том случае, если урезанное пространство составляет не менее 1 МБ непрерывного блока на границе 1 МБ. В Windows может быть полезна периодическая дефрагментация
defrag.exe /D
в Linux или в Linux, выполняемаяbtrfs filesystem defrag
в качестве фонового задания cron.
Более подробную информацию можно найти в
Hyper-V может также сжимать изображения VHD и VHDX
Случаи использования
- ...
Потребительский VHD, установленный на SAN с тонкой подготовкой:
Первоначально VHD монтируется на одной минимальной плите с тонкой подготовкой среды. Поскольку файлы хранятся на виртуальном жестком диске, объем хранилища виртуального жесткого диска увеличивается в несколько слоев. Когда файлы удаляются в виртуальном жестком диске, Hyper-V вызывает File_TRIM для базовой SAN с тонкой подготовкой. Если TRIM больше, чем гранулярность SLAB, SAN теперь может удалить SLAB и, следовательно, уменьшить площадь VHD в этой SAN.Если виртуальный жесткий диск находится на сервере под управлением Windows 8, оптимизатор хранилища также отправит TRIM для уменьшения занимаемой площади виртуального жесткого диска из подключенного виртуального жесткого диска.
Новый API позволяет приложениям отправлять подсказки «TRIM and Unmap» на носитель
Смотрите также
VMware Workstation 10 заявляет о поддержке сквозного прохождения SSD
- SSD Pass-through Windows 8 способна определять, когда он запускается с твердотельного накопителя (SSD), и оптимизирует себя под это оборудование. На рабочей станции 10 гостевая операционная система сможет определять, когда файл диска виртуальной машины хранится на диске SSD, и операционная система может выполнять те же оптимизации, когда работает на виртуальной машине.
Это также упомянуто в Требованиях к дисковому центру Центра документации VMWare Workstation Pro для хост-систем - твердотельные накопители :
Если на вашем хост-компьютере есть физический твердотельный накопитель (SSD), он информирует гостевые операционные системы о том, что они работают на SSD.
Это позволяет гостевым операционным системам оптимизировать поведение. То, как виртуальные машины распознают SSD и используют эту информацию, зависит от гостевой операционной системы и типа диска виртуального диска (SCSI, SATA или IDE).
Но по тексту похоже, что команда TRIM передается только базовому физическому SSD вместо сокращения образа VMDK
Другие продукты VMware, такие как vSphere и ESXi, также поддерживают TRIM, но до сих пор неясно, используют ли они его для уменьшения изображения или нет
Q. Поддерживает ли VMware UNMAP непосредственно из гостевой ОС в vSphere 6.0.
Да. Выдача UNMAP непосредственно из гостевой ОС для освобождения пространства поддерживается в vSphere 6.0.
В. Каковы предварительные условия, необходимые для запуска UNMAP?
Есть ряд предварительных условий, которые должны быть выполнены. Эти:
- VMDK должен быть тонко подготовлен
- Версия оборудования виртуальной машины должна быть 11 (ESXi 6.0)
- Расширенная настройка EnableBlockDelete должна быть установлена на 1
- Гостевая ОС должна иметь возможность идентифицировать диск как тонкий (Windows 2012 [обновлено 30 октября 2015] использует страницу режима B2 для достижения этой цели)
В. Работает ли рекламация только для UNMAP? Как насчет TRIM?
Это ответ «все зависит». TRIM используется только в том случае, если базовым устройством является твердотельный диск. Насколько я понимаю, TRIM преобразуется в UNMAP в стеке ввода-вывода. Однако есть некоторые проблемы с преобразованием TRIM в UNMAP. UNMAP работают на определенных границах блоков в VMFS, тогда как TRIM не имеет таких ограничений. Таким образом, некоторые TRIM, преобразованные в UNMAP, могут не работать из-за проблем с выравниванием блоков.
Функции хранения vSphere 6.0, часть 8. Изменения в VAAI UNMAP
Смотрите также
Поддержка TRIM требует глубоких знаний базового оборудования. Поскольку виртуальные машины ( гостевые виртуальные машины ) по определению работают на виртуальном оборудовании, они не осведомлены о деталях жесткого диска или SSD, на котором они находятся.
Таким образом, если операционная система VM Host понимает TRIM, этого должно быть достаточно для всех гостей VM, работающих поверх нее.
Некоторые виртуальные хосты могут «проходить» через физический диск и монтировать его непосредственно в операционной системе на гостевой виртуальной машине. В зависимости от точной реализации, теоретически возможно, что гость тогда может поддерживать функцию TRIM SSD. Как и в большинстве случаев, ваш пробег может отличаться, и если это критично для вашей среды, вы должны тщательно протестировать его, прежде чем совершить коммит.
TRIM был изобретен, потому что запись на SSD должна выполняться в блоках по 512 Кбайт, и определение того, какая часть блока фактически используется файлом или файлами, невозможно для самого SSD-диска и должно передаваться операционной системой и файловой системой.
Видеть
http://en.wikipedia.org/wiki/TRIM
РЕДАКТИРОВАТЬ:
Вики-ссылка говорит, что это лучше, чем я мог:
Команда TRIM не работает с дисками, которые хранятся в файлах образов дисков. Это связано с тем, что компьютерные файлы могут быть полностью удалены или усечены только в конце. Эта проблема затрагивает такие приложения, как службы виртуальных дисков, виртуальные машины и т. Д.