Interested Article - LXC

LXC и libvirt

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

Сходна с OpenVZ и для Linux, а также FreeBSD jail и Solaris Containers . Использует технологии контрольных групп и пространств имён , входящие в ядро Linux начиная с версии 2.6.29.

Основные разработчики — Даниэль Лескано ( Daniel Lezcano ), Серж Айюн ( Serge Hallyn ) и Стефан Грабе ( Stéphane Graber ).

Среди примеров использования — применение в PaaS -хостинге Heroku для изоляции динамических контейнеров ( dynos ). В проекте Docker разработаны компоненты, обеспечивающие LXC высокоуровневыми сервисами управления и развёртывания.

Безопасность

Изначально LXC-контейнеры не поддерживали достаточно высокий уровень изоляции в сравнении с контейнерами на базе более ранней технологии OpenVZ . В частности, в ядре Linux до версии 3.8 root-пользователь LXC-контейнера может выполнить произвольный код в родительской операционной системе : это возможно за счёт того, что uid 0 внутри контейнера совпадает с uid 0 базовой системы (внутри которой контейнер запущен). С выпуском LXC версии 1.0 данная проблема исправлена введением «непривилегированных контейнеров» — где uid 0 в контейнере соответствует непривилегированному пользователю снаружи и имеет расширенные права только на свои ресурсы. LXC до версии 1.0 можно обезопасить с помощью различных настроек управления доступом и фильтров, используя инструменты apparmor , selinux и тому подобные .

LXD

LXD — высокоуровневый инструмент управления контейнерами , это менеджер контейнеров и виртуальных машин, созданный разработчиками The Linux Containers project на основе LXC . Разработка LXD начата в 2015 году и спонсируется компанией Canonical . LXD создан для упрощения администрирования множества контейнеров и работа с ним похожа на работу с менеджерами виртуальных машин . LXD написан на языке программирования Go и распространяется под лицензией Apache 2.0 .

LXD использует контейнеризацию LXC , управление контрольными точками CRIU и виртуализацию QEMU .

В апреле 2022 года вышла версия LXD 5.0 .

В июле 2023 года управление разработкой LXD было передано из The Linux Containers project в Canonical .

Примечания

  1. — 2023.
  2. . linuxcontainers.org. Дата обращения: 12 декабря 2016. 20 декабря 2016 года.
  3. : [ 11 апреля 2022 ] // Opennet. — 2022. — 11 апреля.
  4. Rudra, S. : The LXD Project has moved to Canonical's website. Here's what you need to know about it : [ англ. ] : [ 5 июля 2023 ] // It's FOSS News. — 2023. — 5 July.
  5. Parrott, T. : [ 22 сентября 2020 ] // Introduction to LXD projects : [ англ. ] .
  6. Brauner, C. : [ англ. ] : [ 1 ноября 2023 ] / C. Brauner, S. Hallyn, S. Graber // LinuxContainers. — 2023. — 4 July.
  7. : [ 5 июля 2023 ] // Opennet. — 2023. — 5 июля.

Литература

Ссылки

  • — официальный сайт LXC
  • — официальный сайт LXD
  • Стефан Грабе. . .
Источник —

Same as LXC