Comments 5
не всегда правильно настроенная виртуальная среда и гостевая ОС дадут просадку в производительности
Не всегда — пока это вычислительные задачи, cpu-bound. Попробуйте погонять тесты которые используют либо дисковый либо сетевой обмен данными — вот где виртуализация можеть сильно просадить производительность, вплоть до "в разы".
А с дисками правильно настроенный KVM даёт большую производительность, чем тот же docker.
ЗЫ — для контейнеров сеть можно вообще не виртуализировать, будет нативная скорость.
KVM с виртуальными устройствами (virtio*) никак не может быть быстрее чем прямой доступ к устройствам на хосте, это невозможно в принципе. А docker может быть медленнее потому что использует overlayfs, да ещё и не в один слой — там потери побольше будут.
За счёт того что добавляется хороший оверхед, да ещё и включены митигации всяких процессорных эксплойтов — то проседание реально может быть очень ощутимым.
С контейнерами конечно проще, но и там влияют митигации (как и на сам хост, собственно) — в зависимости от загрузки и паттернов использования до 50% может быть проседание, так что если хост не используется для публичного хостинга, то mitigations=off очень сильно помогает, особенно если там быстрые устройства (NVMe, 10GbE & co).
А я где-то писал, что будет быстрее? Будет сравнимо, 5-10% оверхеда.
> потому что использует overlayfs
Всё так.
У LXC того же проблемы с дисками нет (понятно, что оно про другое — но в качестве statefull виртуалок он ничем от запуска на хосте не отличается)
Физическая среда или виртуализация? Продолжение тестов Intel Xeon 6242R