Контейнеры LXC на Proxmox: много служб, мало памяти
Контейнер LXC запускается за секунду и стоит долю того, что резервирует виртуальная машина.
От 13,99 €/месяц
Обзор
Контейнер LXC не эмулирует машину: он делит ядро узла и несёт с собой только файловую систему дистрибутива. Прямое следствие — он запускается почти мгновенно и потребляет то, чем действительно пользуется, тогда как виртуальная машина резервирует свою память заранее, пользуется она ею или нет.
Разница видна быстро. На VDS с 16 ГБ за 13,99 €/мес четыре полноценные ВМ помещаются впритык; двадцать контейнеров с небольшими службами живут там без труда. Proxmox VE управляет ими из того же интерфейса, что и ВМ, с теми же снимками и теми же копиями.
Цену этой экономии надо знать: изоляция слабее. Ядро общее, поэтому контейнер не может загрузить собственный модуль ядра, а уязвимость в ядре затрагивает всех. Для кода, который вы не контролируете, или для системы не на Linux, правильным инструментом остаётся ВМ.
Что даёт сервер на всей линейке
Proxmox VE уже установлен
Сервер приходит с готовым <strong>Proxmox VE</strong> и открытым веб-интерфейсом. Виртуальные машины и контейнеры LXC вы создаёте прямо в браузере, не открывая обращений и не дожидаясь чьего-то вмешательства. <strong>Переустанавливать можно сколько угодно</strong>: неудачный опыт переделывается за считаные минуты.
Памяти побольше — именно она упирается первой
На гипервизоре почти никогда не упирается процессор: упирается <strong>память</strong>, потому что каждая виртуальная машина забирает свою долю. Линейка начинается с <strong>16 ГБ</strong> и доходит до <strong>96 ГБ</strong>, а значит, несколько машин можно поставить рядом, не душа их.
Снимки состояния в один клик
Снимок перед обновлением, ещё один перед сменой настроек — вот что отличает опыт от азартной игры. Каждый снимок делается в один клик в личном кабинете, без доплаты.
До 16 дополнительных адресов IPv4
У каждой машины может быть свой публичный адрес, и не придётся гнать всё через проброс портов с хозяина. Пригодится, как только виртуальный сетевой экран, веб-сервер и сторонняя служба должны ужиться по-человечески.
Где LXC — верный выбор
По контейнеру на сайт
Десять клиентских сайтов, десять контейнеров, у каждого своя веб-связка и своя версия PHP. Они не мешают друг другу и обходятся по памяти в то, что съел бы один виртуальный хостинг.
Вспомогательные службы
Redis, брокер сообщений, прикладной cron, сборщик метрик. Каждая заслуживает изоляции, ни одна не заслуживает 2 ГБ, зарезервированных пожизненно.
Среды разработки
По контейнеру на ветку или на версию языка. Создаётся за секунды из шаблона и уничтожается без сожалений.
Обратный прокси на фронте
Лёгкий контейнер, несущий Nginx или Traefik и раздающий на остальные. Перезапуск фронта не задевает больше ничего.
Заменить недогруженные ВМ
Многие ВМ работают с 4 ГБ, зарезервированными под службу, которая использует 300 МБ. Перевод их в контейнеры освобождает память разом, без смены тарифа.
Частые вопросы
ВМ эмулирует полноценный компьютер и грузит собственное ядро: сильная изоляция, зарезервированная память. Контейнер LXC делит ядро узла: мгновенный запуск, память по требованию, изоляция слабее.
Нет. LXC делит ядро Linux узла, а значит, может нести только системы Linux. Для Windows нужна виртуальная машина — Proxmox справляется с этим прекрасно на том же сервере.
Да, Proxmox обращается с ними одинаково: снимки и копии из того же интерфейса, у нас без ограничений по числу и частоте.
Они отвечают на разные вопросы. LXC несёт полноценную систему, которой управляют как машиной; Docker упаковывает приложение вместе с его окружением. Многие ставят Docker внутрь ВМ на том же сервере.