The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Выпуск системы управления контейнерами LXD 5.0

11.04.2022 23:36

Компания Canonical опубликовала релиз менеджера контейнеров LXD 5.0 и виртуальной ФС LXCFS 5.0. Код LXD написан на языке Go и распространяется под лицензией Apache 2.0. Ветка 5.0 отнесена к выпускам с длительной поддержкой - обновления будут формироваться до июня 2027 года.

В качестве runtime для запуска как контейнеров используется инструментарий LXC, в состав которого входит библиотека liblxc, набор утилит (lxc-create, lxc-start, lxc-stop, lxc-ls и т.п.), шаблоны для построения контейнеров и набор биндингов для различных языков программирования. Изоляция осуществляется при помощи штатных механизмов ядра Linux. Для изоляции процессов, сетевого стека ipc, uts, идентификаторов пользователей и точек монтирования используется механизм пространств имён (namespaces). Для ограничения ресурсов применяются cgroups. Для понижения привилегий и ограничения доступа задействованы такие возможности ядра, как профили Apparmor и SELinux, политики Seccomp, Chroots (pivot_root) и capabilities.

Помимо LXC в LXD также применяются компоненты от проектов CRIU и QEMU. Если LXC является низкоуровневым инструментарием для манипуляции на уровне отдельных контейнеров, то LXD предоставляет средства для централизованного управления контейнерами, развёрнутыми в кластере из нескольких серверов. LXD реализован в виде фонового процесса, принимающего запросы по сети через REST API и поддерживающего различные бэкенды хранилищ (дерево директорий, ZFS, Btrfs, LVM), снапшоты со срезом состояния, live-миграцию работающих контейнеров с одной машины на другую и средства для хранения образов контейнеров. LXCFS применяется для симуляции в контейнерах псевдо-ФС /proc и /sys, а виртуализированного представления cgroupfs для придания контейнерам вида обычной независимой системы.

Ключевые улучшения:

  • Возможность горячего подключения и отключения дисков и USB-устройств. В виртуальной машине новый диск определяется через появление нового устройства на шине SCSI, а USB-устройство - генерацией события USB hotplug.
  • Предоставлена возможность запуска LXD даже в условиях невозможности поднятия сетевого соединения, например, из-за отсутствия необходимого сетевого устройства. Вместо вывода ошибки при запуске LXD теперь запускает максимально возможное в текущих условиях число окружений, а остальные окружения запускаются после того как будет налажено сетевое соединение.
  • Добавлена новая роль членов кластера - ovn-chassis, предназначенная для кластеров, использующих OVN (Open Virtual Network) для сетевого взаимодействия (через присвоение роли ovn-chassis можно выделить серверы для выполнения функций маршрутизаторов OVN).
  • Предложен оптимизированный режим обновления содержимого разделов хранилища. В прошлых выпусках обновление сводилось к тому, что вначале экземпляр контейнера или раздел копировался, например, через применение функциональности send/receive в zfs или btrfs, после чего созданная копия синхронизировалась через запуск программы rsync. Для повышения эффективности обновления виртуальных машин в новом выпуске задействована продвинутая логика миграции, при которой в случае, если исходный и целевой сервер используют один пул хранения, вместо rsynс автоматически применяются снапшоты и операции send/receive.
  • Переработана логика идентификации окружений в cloud-init: вместо имён окружений в качестве instance-id теперь используется UUID.
  • Добавлена поддержка перехвата системного вызова sched_setscheduler, позволяющая непривилегированным контейнерам изменять приоритеты процессов.
  • Реализована опция lvm.thinpool_metadata_size, управляющая размером метаданных в thinpool.
  • Переработан формат файла с сетевой информацией для lxc. Добавлена поддержка данных о связывании интерфейсов, сетевых мостах, VLAN и OVN-сети.
  • Повышены требования к минимальным версиям компонентов: ядро Linux 5.4, Go 1.18, LXC 4.0.x и QEMU 6.0.
  • В LXCFS 5 добавлена поддержка унифицированной иерархии cgroup (cgroup2), реализованы /proc/slabinfo и /sys/devices/system/cpu, для сборки задействован инструментарий meson.


  1. Главная ссылка к новости (https://discuss.linuxcontainer...)
  2. OpenNews: Выпуск инструментария управления контейнерами LXC и LXD 4.0
  3. OpenNews: Уязвимость в runc и LXC, затрагивающая Docker и другие системы контейнерной изоляции
  4. OpenNews: Выпуск системы управления контейнерами LXC 2.0
  5. OpenNews: Уязвимость в LXC, позволяющая получить доступ к файлам вне контейнера
  6. OpenNews: Компания Canonical провела сравнение LXD с KVM
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/57006-lxd
Ключевые слова: lxd, lxc
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (40) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 23:41, 11/04/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • –15 +/
    Чем lxd лучше docker?
     
     
  • 2.2, guser (?), 23:49, 11/04/2022 [^] [^^] [^^^] [ответить]  
  • +4 +/
    всем
     
  • 2.3, Аноним (3), 23:55, 11/04/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Всем
     
  • 2.4, Аноним (4), 00:23, 12/04/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Это разные вещи.
     
     
  • 3.5, hohax (?), 00:32, 12/04/2022 [^] [^^] [^^^] [ответить]  
  • +7 +/
    С позиции ядра  - одинаковые. Это как резьбовое соединение - хочешь ключом крути, хочешь гайковертом, хочешь плоскогубцами.
     
     
  • 4.39, Аноним (39), 17:10, 12/04/2022 [^] [^^] [^^^] [ответить]  
  • –4 +/
    То есть ты хочешь доказать что ключ, гайковерт и плоскогубцы — это одно и то же или зачем ты это написал?
     
     
  • 5.50, Аноним (-), 09:13, 13/04/2022 [^] [^^] [^^^] [ответить]  
  • +4 +/
    > То есть ты хочешь доказать что ключ, гайковерт и плоскогубцы — это
    > одно и то же или зачем ты это написал?

    Если задача закрутить гайку - таки да, все три варианта ведут к одному результату. С достаточно маргинальными нюансами. Но тут мало ли, вдруг вы 10 000 гаек в день крутить хотели?! Тогда вам вообще конвейер и промышленный робот уместнее.

     
  • 5.51, hohax (?), 11:33, 13/04/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Я тебя не понял.
     
  • 5.54, Аноним (54), 14:34, 14/04/2022 [^] [^^] [^^^] [ответить]  
  • +/
    >То есть ты хочешь доказать что ключ, гайковерт и плоскогубцы — это одно и то же

    Но иногда их заменяет универсальный инструмент - зубило и молоток.

     
  • 3.48, Аноним (48), 01:38, 13/04/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    На самом деле, достаточно близкие Скорее разная культура Сложившаяся вокруг до... большой текст свёрнут, показать
     
  • 2.7, Аноним (7), 00:48, 12/04/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Докер изолирует процессы а lxd целые оси
     
     
  • 3.8, Аноним (1), 01:29, 12/04/2022 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Разве он не с контейнерами работает? Или я что-то путаю?
     
     
  • 4.10, Аноним (10), 02:29, 12/04/2022 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Или я что-то путаю?

    Или ты что-то путаешь.

     
  • 3.17, ыы (?), 07:19, 12/04/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Запуская "целую ось" как  изолированный процесс...
    Это другое (с) :))
     
     
  • 4.22, Аноним (22), 10:20, 12/04/2022 [^] [^^] [^^^] [ответить]  
  • +/
    как группу помеченных процессов
     
  • 3.37, Аноним (37), 16:46, 12/04/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >  Докер изолирует процессы а lxd целые оси

    Докером тоже можно изолировать целую ось.

    Просто по итогам большого опыта эксплуатации, даже индеец Зоркий Глаз заметил, что запихивать в контейнер целую ось - оверхед, как минимум, для прода.

     
  • 2.15, Sergey (??), 05:45, 12/04/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Докер ? Да фиолетово докер это или подман лишь бы кибер это понимал.
     
     
  • 3.35, Аноним (37), 16:39, 12/04/2022 [^] [^^] [^^^] [ответить]  
  • +/
    У них свой, нескучный кубик.
     
  • 2.20, Жироватт (ok), 09:50, 12/04/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Чем грузины!
     
  • 2.29, Аноним (29), 15:52, 12/04/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > Чем lxd лучше docker?

    В docker для обновления системы надо уничтожать контейнеры и образ.

    В lxc apt update & apt upgrade этого достаточно.

    Короче, docker это для фиксированного не изменяемого окружения.

    Lxc для контейнеров с длительной поддержкой.

    Два разных подхода для разных типов задач. Например для баз данных в продаже  docker это плохая идея, особенно в kubernetis. Lxc для баз данных вполне себе адекватный сервис. Докер контейнеры не чинят  
    не обновляют, их поднимаютзаново. В lxc контейнеры чинят обычным порядком.

     
     
  • 3.34, Аноним (37), 16:38, 12/04/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Два разных подхода для разных типов задач. Например для баз данных в продаже  docker это плохая идея, особенно в kubernetis. Lxc для баз данных вполне себе адекватный сервис.

    Подобная реплика с головой выдает, что с контейнерами вы не знакомы.

     
     
  • 4.40, Аноним (39), 17:12, 12/04/2022 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Или вы.
     
  • 4.42, Аноним (29), 17:16, 12/04/2022 [^] [^^] [^^^] [ответить]  
  • +/
    То что в разрабы используют сервера дБ в докер не говорит что это полезно для прода. Для разработки это полезно, легко и приятно.
    Но в проде ДБ лучше оставить тем кто умеет в ДБ много, сильно и долго и это точно не докер.
     
     
  • 5.43, Атон (?), 18:52, 12/04/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    БД в LXC тоже плохая идея.
     
     
  • 6.44, Аноним (-), 20:03, 12/04/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Обоснуйте свою ТЗ, пожалуйста.
     
     
  • 7.45, Аноним (48), 21:41, 12/04/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Для начала объясните, чем БД в LXC принципиально отличается от БД в докере.
     
     
  • 8.46, Аноним (46), 22:55, 12/04/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    контейнер для ядра в обоих случаях будет одинаковый, то есть с позиции ядра ниче... большой текст свёрнут, показать
     
     
  • 9.47, Аноним (48), 23:47, 12/04/2022 [^] [^^] [^^^] [ответить]  
  • +/
    То есть вы считаете, что 1 В докеровском контейнере нельзя произвести обновлен... текст свёрнут, показать
     
     
  • 10.49, Аноним (29), 08:39, 13/04/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Обе системы и докер и lxc делают одинаковые контейнеры и обновлять их можно Н... большой текст свёрнут, показать
     
     
  • 11.52, Аноним (48), 13:36, 13/04/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Возникает вопрос - а зачем в системе, где живет БД, присутствуют какие-то програ... большой текст свёрнут, показать
     
     
  • 12.59, Аноним (29), 10:09, 16/04/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Эти библиотеки связаны с работой дистрибутива системы в целом Есть такие люди ... большой текст свёрнут, показать
     
  • 5.55, Аноним (55), 18:29, 14/04/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Нет, не лучше 171 Те 187 8212 обычные люди Допускают ошибки, болеют, не... большой текст свёрнут, показать
     

  • 1.9, mikhailnov (ok), 01:30, 12/04/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Кто-нибудь пробовал прикрутить lxcfs к systemd-nspawn?
     
     
  • 2.12, Аноним (12), 03:17, 12/04/2022 [^] [^^] [^^^] [ответить]  
  • +10 +/
    я пробовал, врачи потом неделю откачивали
     
  • 2.36, Аноним (37), 16:43, 12/04/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >  Кто-нибудь пробовал прикрутить lxcfs к systemd-nspawn?

    Точно так же, как и с докером - монтируется /var/lib/lxcfs/proc/xxx в /proc/xxx (где xxx=cpuinfo,meminfo,stats,...).

     

  • 1.13, Аноним (55), 04:23, 12/04/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Отличный софт, заработал мне много денег с минимальным оверхедом, а с новым мажорным релизом, чую, заработает ещё на поддержке старых клиентов. От души спасибо разработчикам LXD/LXC за хлеб, масло и икру.
     
     
  • 2.14, Аноним (10), 05:04, 12/04/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > заработал мне много денег

    Сам пользуюсь, без регистраций и смс.

     
     
  • 3.56, Аноним (55), 20:14, 14/04/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Ты иронизируешь, а я не шучу между тем Морда для LXD пока что мой самый эффекти... большой текст свёрнут, показать
     

  • 1.57, Аноним (-), 21:10, 14/04/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Зачем все это если есть Hyper-V?
     
  • 1.58, Аноним (58), 13:58, 15/04/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    кто-то использует UI для lxd? какой
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру