KVM vs LXC-контейнеры
KVM vs LXC: изоляция против плотности
LXC-контейнеры используют общее ядро хоста и запускаются за миллисекунды с почти нулевыми накладными расходами; виртуальные машины KVM загружают собственное ядро с 2–5% накладных расходов и настоящей границей безопасности. Для мультиарендного хостинга разница решающая: уязвимость ядра на LXC-хосте — это уязвимость всех арендаторов на нём.
| Параметр | KVM | LXC-контейнеры |
|---|---|---|
| Граница изоляции | Аппаратная | Неймспейсы ядра |
| Время загрузки | 5–15 секунд | Менее секунды |
| Overhead | 2–5% | Менее 1% |
| Плотность | Ниже | Значительно выше |
| Выбор ядра | Ваше | Ядро хоста |
| Безопасность мультиарендности | Сильная | Полностью зависит от ядра хоста |
Что выбрать?
KVM
Выбирайте KVM, когда арендаторы не доверяют друг другу — а это любой коммерческий хостинг.
LXC-контейнеры
LXC отлично подходит внутри вашей собственной доверенной среды, например, как контейнеры на уже принадлежащем вам инстансе KVM.
Часто задаваемые вопросы
Менее ли безопасен LXC, чем KVM?
Изоляция по построению слабее. Побег из ядра в LXC достигает каждого контейнера на хосте; аналогичный побег в KVM требует побега из гипервизора, что является существенно более сложным классом ошибок.
Можно ли запустить LXC внутри KVM VPS?
Да, и это хороший шаблон: аппаратная изоляция от других клиентов, дешевая контейнерная изоляция для ваших собственных сервисов.