LXD 5.0 ​​выходит с улучшениями, оптимизациями и многим другим

Обнародование Canonical недавно вышла новая версия менеджера контейнеров LXD 5.0 ​​и виртуальная файловая система LXCFS 5.0, поскольку эта новая ветка 5.0 классифицируется как версия с долгосрочной поддержкой и в которой обновления будут формироваться до июня 2027 года.

LXC используется как среда выполнения для запуска в виде контейнеров, который включает в себя библиотеку liblxc, набор утилит (lxc-create, lxc-start, lxc-stop, lxc-ls и др.), шаблоны для создания контейнеров и набор привязок для различных языков программирования. Изоляция осуществляется с помощью штатных механизмов ядра Linux.

Механизм пространства имен используется для изоляции процессов, ipc, сетевой стек uts, идентификаторы пользователей и точки монтирования cgroups используются для ограничения ресурсов. Функции ядра, такие как профили Apparmor и SELinux, политики Seccomp, Chroots (pivot_root) и возможности, используются для снижения привилегий и ограничения доступа.

Помимо LXC, LXD также использует компоненты из проектов CRIU и QEMU.. Если LXC — это низкоуровневый инструментарий для манипулирования отдельными контейнерами на уровне, то LXD предоставляет инструменты для централизованного управления контейнерами, развернутыми в многосерверном кластере.

LXD реализован как фоновый процесс который принимает запросы по сети через REST API и поддерживает различные серверные части хранилища (дерево каталогов, ZFS, Btrfs, LVM), моментальные снимки с отслеживанием состояния, динамическую миграцию запущенных контейнеров с одной машины на другую и инструменты для контейнеров хранения образов. LXCFS используется для имитации псевдо-FS-контейнеров /proc и /sys, а виртуализированное представление cgroupfs — для того, чтобы контейнеры выглядели как обычная автономная система.

Основные новости LXD 5.0

В представленной новой версии LXD 5.0 возможность горячего подключения и отключения USB-накопителей и устройств. В виртуальной машине новый диск обнаруживается новым устройством, появляющимся на шине SCSI, а устройство USB обнаруживается путем генерации события «горячего» подключения USB.

В возможность запуска LXD даже при невозможности установить сетевое соединение, например, из-за отсутствия необходимого сетевого устройства. Вместо того, чтобы показывать ошибку при запуске, LXD теперь запускает столько сред, сколько может в текущих условиях, а остальные среды запускаются после установления сетевого подключения.

В LXD 5.0 ​​появился новый новая роль участников кластера: ovn-chassis, предназначенный для кластеров, использующих Open Virtual Network (OVN) для сетевого взаимодействия (при назначении роли ovn-chassis серверы могут быть назначены в качестве маршрутизаторов OVN).

Еще одно важное изменение: предложен оптимизированный способ обновления содержимого разделов хранилища. В предыдущих версиях обновление заключалось в первом копировании экземпляра контейнера или раздела, например, с использованием функции отправки/получения в zfs или btrfs, после чего созданная копия синхронизировалась с помощью запуска программы rsync.

Для повышения эффективности обновления виртуальной машины, новая версия использует расширенную логику миграции, где, если исходный и конечный серверы используют одну и ту же группу хранения, моментальные снимки и операции отправки/получения используются автоматически вместо rsync.

Из других изменений, которые выделяются:

  • Логика идентификации среды в cloud-init была переработана: 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. Ответственный за данные: Мигель Анхель Гатон
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.