Pull to refresh

Comments 10

Вопрос, как 'дорого' с точки зрения понижения производительности (процессор, память, диск и сеть) обошлось такое каскадирование?
В цифрах, на примере работы каких-нибудь бенчмарков.
Все плохо на столько что об использовании нигде кроме как обучение не использовать?

p.s. запустить windows в качестве гостя получится? переброс железа, в частности видеокарт и например контроллера дисков для поддержки trim у ssd каскадируется?
Кстати про trim, очень интересный вопрос вообще при использовании виртуальных машин, наверное на пару статей ответ получится?
Кстати про trim, очень интересный вопрос вообще при использовании виртуальных машин, наверное на пару статей ответ получится?

TRIM не нужен.
Вы хотя бы резюме прочитали бы, там очень эпично указан список удобных причин, почему trim не нужен, один из них какраз мой вопрос.

виртуальные машины, один из юзекейсов — создал снапшот файловой системы, запустил приложение, остановил, удалил — trim жизненно необходим.

а еще обновление операционной системы — целый стресс для диска, вы представляете что такое плановая установка обновлений на кластер из сотни виртуальных машин?

одна из основных нагрузок для быстрых дисков — кеши, каталоги temp и т.п.

и еще, база данных, даже когда только растет, индексы обновляет с постоянным удалением своих записей, вот только мне не известно, а поддерживают ли сами БД trim?
У современных дисков рассчитанных на запись (Samsung SM863a, Micron 5100 MAX) идёт до 50% резерва — есть где разгуляться сборщику мусора.
В общем Virtio backend не поддерживает Trim, для его работы требуется:
  • Естественно бэкенд, на котором находится образ диска должен поддерживать Trim.
  • Поддерживают: LVM, raw образы на fs (обязательна поддержка trim и монтирование с discard), должно работать на qcow2 (не проверял).
  • Выключить VM
  • Поменять Бэкенд нужного диска с Virtio на Virtio-SCSI (иногда зовется просто SCSI)
  • Отредактировать XML файл домена (virsh edit <VM_NAME>). Необходимо добавить код(«discard='unmap'»), как на примере ниже:


<disk type='block' device='disk'>
    <driver name='qemu' type='raw' cache='none' io='native' discard='unmap'/>
    <source dev='/dev/vg0/disk'/>
    <target dev='vda' bus='scsi'/>
    <address type='drive' controller='0' bus='0' target='0' unit='0'/>
</disk>  
>> Естественно бэкенд, на котором находится образ диска должен поддерживать Trim.
в этом образе VM будет добросовестно помечать области как 'дырки' для удаленных файлов в хост системе и отсылать для них trim? что то сомневаюсь, какая виртуальная машина это умеет? какая файловая система это умеет?
Почти все ОС и виртуалки. В виртуалке мы естественно тоже монтируем диск с опцией discard. Происходит удаление по следующей цепочке.
(Приложение в госте удаляет файл) -> (ФС гостя помечает блок как неиспользуемый и посылает команду trim на устройство) -> (QEMU получает эту команду, определяет положение этого блока в образе и очищает этот блок ) -> (ФС/LVM хоста посылает trim на удаление этого блока) -> (физический диск выполняет trim блока)
TRIM — сложная тема, действительно, на пару статей. По поводу TRIM в QEMU почти все, что я читал на эту тему — вранье, например, TRIM поддерживается для IDE-дисков (сюрприз!) на thin-provisioned QCOW2 и приводит к удалению из образа диска неиспользуемой области с уменьшением размера файла.
С точки зрения производительности ввода-вывода — дорого, и, действительно, кроме как площадку для тестов это не получиться использовать. Впрочем, VMware ясно заявляет, что
а) Конфигурация с esxi on esxi не поддерживается в продакшене за исключением vSAN Witness Appliance
б) Конфигурация с esxi on не поддерживается вообще (на эту тему тоже KB есть)

Win10 ставится, но зависает через 5 минут работы. Есть подозрение, что это связано с неправильной работой enlightenments, но дальше в эту сторону не копал.

По поводу TRIM — QEMU не может (не хочет, на самом деле) информировать гостя о том, что установлен SSD, поэтому убедить ESXi в том, что у него есть SSD-хранилище, не получится. Скорее всего, это значит, что TRIM не будет работать.
UFO just landed and posted this here
Sign up to leave a comment.

Articles