LXC

LXC (Linux Containers) — это технология виртуализации на уровне операционной системы для запуска изолированных систем Linux на одном узле с общим ядром.

LXC представляет собой интерфейс для механизмов изоляции ядра Linux. В отличие от Docker, который ориентирован на доставку отдельных приложений, LXC создает полноценные системные контейнеры. Они функционируют как виртуальные машины, имея собственный процесс init, дерево процессов и сетевой стек, но не требуют эмуляции аппаратного обеспечения.

В основе технологии лежат два механизма ядра: cgroups (контрольные группы) для ограничения ресурсов (CPU, RAM, I/O) и namespaces (пространства имен) для изоляции идентификаторов процессов, сетевых интерфейсов и файловых систем. Это обеспечивает минимальные накладные расходы на выполнение операций.

Применение

LXC применяется в сценариях, где нужна плотная упаковка системных окружений. Технология является базой для гипервизора Proxmox VE и используется для создания легких VPS. LXC подходит для запуска legacy-сервисов, которым требуется полноценная среда ОС, а не эфемерный контейнер.

Производительность LXC практически идентична нативной. Контейнер запускается за 1-2 секунды, а управление осуществляется через стандартный набор утилит: lxc-create, lxc-start и lxc-attach для входа в консоль контейнера.