Loading AI tools
подсистема контейнеризации для операционных систем на базе ядра Linux Из Википедии, свободной энциклопедии
LXC (англ. Linux Containers) — подсистема контейнеризации, позволяющая запускать несколько изолированных экземпляров операционной системы Linux на одном узле. LXC не использует виртуальные машины, а создаёт виртуальное окружение с собственным пространством процессов и сетевым стеком; все экземпляры LXC используют один экземпляр ядра операционной системы.
LXC (Linux Containers) | |
---|---|
Тип | Виртуализация на уровне операционной системы |
Разработчики | Даниэль Лескано, Серж Айюн, Стефан Грабе |
Написана на | Python, Lua и Bourne shell |
Операционная система | Linux |
Первый выпуск | 6 августа 2008[1] |
Аппаратные платформы | x86, x86-64, IA-64, PowerPC, ARM и SPARC |
Последняя версия | |
Репозиторий | github.com/lxc |
Лицензия | GNU GPL 2 |
Сайт |
linuxcontainers.org (англ.) linuxcontainers.org/… |
Медиафайлы на Викискладе |
Сходна с OpenVZ и Linux-VServer[англ.] для Linux, а также FreeBSD jail и Solaris Containers. Использует технологии контрольных групп и пространств имён, входящие в ядро Linux начиная с версии 2.6.29.
Основные разработчики — Даниэль Лескано (Daniel Lezcano), Серж Айюн (Serge Hallyn) и Стефан Грабе (Stéphane Graber).
Среди примеров использования — применение в PaaS-хостинге Heroku для изоляции динамических контейнеров (dynos). Проект Docker в ранних версиях использовал LXC в качестве драйвера запуска контейнеров (с версии 0.9 использование LXC стало опциональным, а с версии 1.10 — поддержка была полностью прекращена).
Изначально LXC-контейнеры не поддерживали достаточно высокий уровень изоляции в сравнении с контейнерами на базе более ранней технологии OpenVZ. В частности, в ядре Linux до версии 3.8 root-пользователь LXC-контейнера может выполнить произвольный код в родительской операционной системе: это возможно за счёт того, что uid 0 внутри контейнера совпадает с uid 0 базовой системы (внутри которой контейнер запущен). С выпуском LXC версии 1.0 данная проблема исправлена введением «непривилегированных контейнеров» — где uid 0 в контейнере соответствует непривилегированному пользователю снаружи и имеет расширенные права только на свои ресурсы. LXC до версии 1.0 можно обезопасить с помощью различных настроек управления доступом и фильтров, используя инструменты apparmor, selinux и тому подобные[3].
LXD — высокоуровневый инструмент управления контейнерами[4], это менеджер контейнеров и виртуальных машин, созданный разработчиками The Linux Containers project на основе LXC. Разработка LXD начата в 2015 году и спонсируется компанией Canonical[5]. LXD создан для упрощения администрирования множества контейнеров и работа с ним похожа на работу с менеджерами виртуальных машин[6]. LXD написан на языке программирования Go и распространяется под лицензией Apache 2.0[4].
LXD использует контейнеризацию LXC, управление контрольными точками CRIU и виртуализацию QEMU[4].
В апреле 2022 года вышла версия LXD 5.0[4].
В июле 2023 года управление разработкой LXD было передано из The Linux Containers project в Canonical[5][7][8].
В 2024 году The Linux Containers project, из-за изменения лицензии новым владельцем LXD, прекратил поддержку образов для контейнеров LXC/LXD. По плану завершения поддержки библиотеки образов на сервере The Linux Containers project, 1 мая 2024 года все пользователи LXD потеряли доступ к образам, ранее опубликованным на нём[9].
После передачи LXD в Canonical, в The Linux Containers project занимаются разработкой менеджера виртуализации Incus и рекомендуют своим пользовалям переходить с LXD на него[9].
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.