The OpenNET Project / Index page

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

Выпуск инструментариев для управления контейнерами LXC 6.0, Incus 6.0 и LXD 5.21.1

04.04.2024 08:52

Сообщество Linux Containers опубликовало релиз инструментария для организации работы изолированных контейнеров LXC 6.0, предоставляющий runtime, подходящий как для запуска контейнеров с полным системным окружением, близких к виртуальным машинам, так и для выполнения непривилегированных контейнеров отдельных приложений (OCI). LXC относится к низкоуровневым инструментариям, работающим на уровне отдельных контейнеров. Для централизованного управления контейнерами, развёрнутыми в кластере из нескольких серверов, на базе LXC развиваются системы Incus и LXD. Ветка LXC 6.0 отнесена к выпускам с длительной поддержкой, обновления для которых формируются в течение 5 лет (до 2029 года). Код LXC написан на языке Си и распространяется под лицензией GPLv2.

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

Основные изменения:

  • Предоставлена возможность сборки универсального исполняемого файла lxc, сочетающего в одной утилите все команды, ранее распространяемые в виде отдельных утилит "lxc-*". Для сборки сводного исполняемого файла предложена опция "tools-multicall=true", при выставлении которой все старые отдельные утилиты создаются как символические ссылки на утилиту lxc. Сборка в форме одного исполняемого файла позволяет существенно снизить потребление инструментарием дискового пространства, что актуально для встраиваемых систем.
  • В библиотеку liblxc добавлена функция set_timeout, позволяющая выставить таймаут для любых операций взаимодействия с LXC monitor.
  • В интерфейсе сетевых мостов lxcbr0 по умолчанию активирована поддержка IPv6 с выставлением адресов из подсети IPv6 ULA (Unique Local Address).
  • В утилите lxc-usernsexec добавлены опции "-u" и "-g" для изменения идентификаторов пользователя и группы (UID и GID).
  • В утилите lxc-checkconfig обеспечен показ версии только при наличии команды lxc-start и добавлено информирование о максимально допустимом числе каждого типа пространств имён.
  • Добавлена поддержка образов контейнеров в формате OCI, в которых для сжатия информации задействована ФС Squashfs.
  • Для взаимодействия с systemd через D-Bus задействована отдельная библиотека libdbus-1 вместо libsystemd.
  • Прекращена поддержка системы инициализации Upstart.



Одновременно опубликован выпуск проекта Incus, в рамках которого сообществом Linux Containers развивается форк системы управления контейнерами LXD, созданный старой командой разработчиков, когда-то создавшей LXD. Код Incus написан на языке Go и распространяется под лицензией Apache 2.0. Incus 6.0 позиционируется первая как стабильная ветка для которой будет обеспечен длительный цикл формирования обновлений (LTS). Из изменений в Incus 6.0 выделяется возможность создания сетевых интерфейсов через API bridge.external_interfaces, улучшение поддержки аутентификации через JWT (JSON Web Token), поддержка USB и показ детальной системной информации в команде "incus info --resources", поддержка выпуска LXD 5.21 в утилите lxd-to-incus.

Incus и LXD предоставляют средства для централизованного управления контейнерами и виртуальными машинами, развёрнутыми как на одном хосте, так и в кластере из нескольких серверов. Проект реализован в виде фонового процесса, принимающего запросы по сети через REST API и поддерживающего различные бэкенды хранилищ (дерево директорий, ZFS, Btrfs, LVM), снапшоты со срезом состояния, live-миграцию работающих контейнеров с одной машины на другую и средства для хранения образов контейнеров. В качестве runtime для запуска контейнеров используется инструментарий LXC. Изоляция осуществляется при помощи штатных механизмов ядра Linux (пространства имён, cgroups, Apparmor, SELinux, Seccomp).

Сообщество Linux Containers курировало разработку LXD до того, как компания Canonical решила трансформировать LXD в корпоративный проект. Целью форка называется предоставление управляемой независимым сообществом альтернативы проекту LXD, подконтрольному компании Canonical. Создание Incus также дало возможность провести работу по устранению некоторых концептуальных ошибок, допущенные при разработке LXD, которые ранее невозможно было исправить без нарушения обратной совместимости.


Компания Canonical опубликовала новую версию системы управления контейнерами LXD 5.21.1. Ветка LXD 5.21 помечена как LTS и будет поддерживаться до июня 2029 года. Код, добавленный в LXD сотрудниками Canonical, поставляется под лицензией AGPLv3, но код сторонних участников, на который у Canonical нет имущественных прав, остаётся под Apache 2.0. Из функциональных изменений в LXD 5.21.1 можно отметить перевод snap-пакета с LXD на ветки LXC 6.0 и LXCFS 6.0. В API добавлено расширение storage_volumes_all и связанный с ним обработчик /1.0/storage_volumes для вывода списка со всеми разделами хранения. Добавлено расширение instances_files_modify_permissions для изменения через API прав доступа к существующим файлам.


Доступен выпуск виртуальной ФС LXCFS 6.0, используемой для симуляции в контейнерах псевдо-фС /proc и /sys, а также для виртуализированного представления cgroupfs для дистрибутивов без поддержи пространств имён cgroup. В новой версии добавлена опция "--enable-cgroup", позволяющая управлять включением встроенной функциональности для создания виртуального дерева croupfs для контейнеров, используя cgroupv1 (в настоящее время большинство дистрибутивов поддерживают предоставляемые ядром пространства имён для croup, поэтому включение по умолчанию встроенной альтернативной реализации потеряло смысл и теперь является опциональным). Кроме того, в LXCFS 6.0 прекращена фильтрация CPU при формировании файла /sys/devices/system/cpu, в зависимости от состояния online/offline.

  1. Главная ссылка к новости (https://discuss.linuxcontainer...)
  2. OpenNews: Выпуск системы управления контейнерами LXC 5.0
  3. OpenNews: Выпуск системы управления контейнерами LXD 5.17
  4. OpenNews: Первый выпуск Incus, форка системы управления контейнерами LXD
  5. OpenNews: Компания Canonical перевела проект LXD на лицензию AGPLv3
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/60922-lxc
Ключевые слова: lxc, lxd, incus
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (65) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 10:21, 04/04/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    Кто пользует LXD или Incus, могу посоветовать веб-морду:
    https://github.com/PenningLabs/lxconsole

    Дело субъективное, конечно. Для меня удобно. Данный проект разрабатывается в ответ на стагнацию LXDWare Dashboard (он был на PHP, а этот на Python). Лицензия AGPL-3.0.

     
     
  • 2.3, anonymplusplus (?), 10:42, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Ни картинок, ни документации. Кажется оно совсем еще бета.
     
     
  • 3.5, Аноним (1), 10:47, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Кажется оно совсем еще бета.

    Верно, они и не скрывают, прямо в ReadMe написано:

    > This software is currently in BETA TESTING

    Всё равно это скорее вспомогательный инструмент для внутреннего использования в своей инфраструктуре, который наружу не будет выставляться.

     
  • 3.26, Аноним (26), 13:40, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    А там не нужно ни одно, ни другое. На тебе картинки, если так сильно хочется:
    https://www.itzgeek.com/how-tos/linux/ubuntu-how-tos/manage-lxc-container-with
     
     
  • 4.32, Аноним (32), 14:37, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Last updated Jul 18, 2016
    > Ubuntu 16.04
     
  • 2.7, microcoder (ok), 10:50, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Да, хорошая морда, главное на человеческом Python написана
     
  • 2.17, r2d0 (?), 11:45, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Так каниникл свой ui продвигает и он уже включен в поставку lxd.

    https://github.com/canonical/lxd-ui

     
     
  • 3.21, Аноним (21), 13:11, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Сколько лет использую сначала чистый lxc, потом lxd для управления и никогда не знал, что есть официальная морда
    Блин, пойду смотреть, вдруг и правда удобно
    Спасибо, добрый аноним
     
     
  • 4.24, microcoder (ok), 13:28, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Сколько лет использую сначала чистый lxc, потом lxd для управления и никогда
    > не знал, что есть официальная морда

    Эта морда появилась совсем недавно

     
  • 3.27, Аноним (26), 13:43, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Установка только снапом? Спасибо, ешьте сами.
     
     
  • 4.29, Аноним (32), 14:05, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Если что, в Incus всё завезли без снапа, даже этот GUI:

    https://github.com/zabbly/incus?tab=readme-ov-file#setting-up-the-ui

     
  • 3.75, ilya (??), 21:58, 07/11/2024 [^] [^^] [^^^] [ответить]  
  • +/
    аж до 0.12 версии додвинул....
     

  • 1.2, Аноним (2), 10:39, 04/04/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Народ, посоветуйте контейнер сервера gitea настроенной и работающей CI/CD.
     
     
  • 2.4, Аноним (1), 10:45, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +6 +/
    Это вам скорее в реестре Docker'a надо искать.

    Incus и LXD скорее про "контейнеры, которые чувствуются как вируталки" (упрощённо и грубо говоря), это больше system-контейнеры, а не application-контейнеры. Вообще тут можно подискутировать, ибо грань весьма условная.

    Но в случае с Incus тут скорее сценарии вроде: создать контейнер и
    1) ручками сделать всё так же, как если бы это была виртуалка.
    или
    2) использовать cloud-init для автоматизации.

    Можно ещё экспортировать контейнер с готовым и развёрнутым приложением, как вы хотите, но… В таком случае я бы всё же порекомендовал посмотреть на Docker.

     
     
  • 3.10, microcoder (ok), 10:55, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > использовать cloud-init для автоматизации.

    Поковырялся я с этим Г.. ))) Нет уж, спасибо, не надо. Очень много гемора на простых вещах. Не может выполнить последовательность сценариев. Точнее может, но через костыли, навороты в виде мерджей (какой кошмар, в 21 веке то!) Так что лучше по старинке, Bash наше всё.

     
     
  • 4.12, Аноним (1), 11:01, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Ну, моё дело только сказать о технической возможности. А что будут использовать джентельмены – каждый сам решает.

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

    У меня ещё был специфический сценарий с запуском эфемерных контейнеров, когда надо было запустить из готового образа изолированное окружение с конкретным пользовательским скриптом. Вот там cloud-init вполне подошёл для автоматизации всего этого безумства.

     
     
  • 5.13, microcoder (ok), 11:08, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Да, для простых профилей сгодиться. Проблема в том, что параметр 'cloud-init.user-data' может быть только один для всех применяемых профилей настроек к контейнеру, так как это концепция такая каскадная перекрывать параметры предыдущих параметров. То есть, если есть в каждом из профилей свой 'cloud-init.user-data', например в профилях '--profile=media --profile=firefox', то мерджа не будет никакого, отработает 'cloud-init.user-data' из последнего профиля, то есть из '--profile=firefox'.

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

    Так что по мне так лучше Bash сценарии.

    https://discuss.linuxcontainers.org/t/how-to-merge-profiles-user-vendor-data/7

     
     
  • 6.14, Аноним (1), 11:12, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Проблема в том, что параметр 'cloud-init.user-data' может быть только один для всех применяемых профилей настроек к контейнеру, так как это концепция такая каскадная перекрывать параметры предыдущих параметров.

    Поддерживаю. Это серьёзный недостаток, сильно уменьшающий полезность cloud-init. Сам искал способы определить несколько конфигов cloud-init в разных профилях и наткнулся на то же самое… Хотя казалось бы, такая возможность звучала бы логично, она прямо таки напрашивается.

     
     
  • 7.15, microcoder (ok), 11:14, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Да, да, да! Прямо серьёзный недостаток который уже несколько лет не могут решить. Ссылку на обсуждение оставил выше.
     
  • 2.8, microcoder (ok), 10:52, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Контейнеров с настроенными приложениями в официальных репах нету. В репах только "голые" ОС. Самому нужно ставить, настраивать, а потом можно и экспортнуть и поделиться с кем-то. Может есть где в инете другие репозитории? Но доверия всё равно кним нет, не известно какие закладки туда понапихали. Так что лучше всё самому делать, с чистого листа.
     
     
  • 3.16, Аноним (2), 11:28, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Понимаю, но я так сильно устал от этого.
     
     
  • 4.18, microcoder (ok), 11:47, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Спасли бы сценарии в профилях. Профилями конфигураций можно было бы делиться. Так, можно было бы хотя бы посмотреть визуально на код инициализации и не обнаружить там зло-кода. Но... Сейчас это проблематично, профили ограничены.

    У меня своя есть разработка на Bash, с "ядром" скрипта который принимает bash сценарии как plug-in's и выполняет их. В ядре реализованы вспомогательные базовые функции. А плагины это ничто иное как упрощённые bash-сценарий установки контейнера и его инициализация. В этом случае нет никаких ограничений, для домашнего использования вполне годиться. Плагинами можно делиться. Для коммерции тут думать надо, так как скорее всего небезопасно будет выполнять такие плагины на чистом Bash.

     
  • 4.19, microcoder (ok), 12:00, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Еще можно на Python'e реализовать выполнение сценариев, а сценарии могут быть в декларативной разметке YAML, к примеру. Будет безопасно и практично. Надо озадачиться такой задачей, а то что-то cloud-init мне совсем не нравится )))
     
     
  • 5.22, Аноним (21), 13:13, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ты придумал ансибл
    На пайтоне, с ямлом
    Все как ты просишь
     
     
  • 6.25, microcoder (ok), 13:33, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Ты придумал ансибл

    Там вроде как нет поддержки LXD/Incus :) А так тоже вариант был бы.

     
     
  • 7.30, Аноним (32), 14:09, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Там вроде как нет поддержки LXD/Incus :)

    https://docs.ansible.com/ansible/2.9/modules/lxd_container_module.html

     
     
  • 8.31, microcoder (ok), 14:19, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Хмм Спасибо Поизучаю... текст свёрнут, показать
     
  • 6.55, Хочу стать девопсом пусть меня научат (?), 21:00, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Ansible - это вчерашний день там, где есть более совершенные специализированные инструменты типа K8S.

    В случае с LXD/Incus - это декларативные портянки в стиле docker-compose:

    https://github.com/bravetools/bravetools

    https://mottainaici.github.io/lxd-compose-docs/docs/tutorial/

    А из графических шляп ещё есть LXDWare: https://lxdware.com/

     
     
  • 7.58, microcoder (ok), 21:22, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Ansible - это вчерашний день там, где есть более совершенные специализированные инструменты
    > типа K8S.
    > В случае с LXD/Incus - это декларативные портянки в стиле docker-compose:
    > https://github.com/bravetools/bravetools

    О! Это уже интересно! Монстра Ansible не хочется познавать

     
  • 7.60, Аноним (60), 22:00, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Чтобы начать с Ansible достаточно только "apt install openssh-server python" и задать пароли пользователей (или SSH ключи). Минут 5-15, и - всё, можно писать код и запускать! Где не хватает Yaml, можно модуль на Питоне.

    Чтобы сделать K8s... нужен кластер разновсякого софта и сборочная платформа образов, плюс репозитарий артефактов. Примерно по сложности как замутить Linux From Scratch и поддерживать. И тооолько потооом можно начать писать аналог кода управления. А если не хватает Yaml, то уууу... сколько ещё вджобывать и вджобывать придётся.

    Сравнили тут воробья с стаей орлов...

     
     
  • 8.64, DevOops (?), 11:30, 05/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Так ли сложно поставить кластер K0S, для начала хотя бы одноузловой Проблема с ... текст свёрнут, показать
     
     
  • 9.65, Аноним (65), 14:53, 05/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Ты не поверишь, но на многих проектах k8s просто избыточен и достаточно трех вир... большой текст свёрнут, показать
     
  • 9.68, User (??), 15:15, 05/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Эммм а ничего, что вы оркестратор с системой управления конфигурациями сравни... текст свёрнут, показать
     
     
  • 10.71, Система разности потенциалов (?), 18:43, 05/04/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    А ничего, что Ansible SCM настолько универсален, что на нём некоторые велосипеди... текст свёрнут, показать
     
  • 8.72, Система разности потенциалов (?), 18:49, 05/04/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Минут 5-15, и - всё, c Можно писать заявление на увольнение, потому что в ap... текст свёрнут, показать
     
  • 2.51, Anonim (??), 19:13, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    В proxmox есть вот такой настроенный контейнер:
    https://www.turnkeylinux.org/gitea
     

  • 1.6, microcoder (ok), 10:49, 04/04/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Вообще-то Incus 6.0 только анонсировали, нет никакого выпуска. Сейчас выпуск версии только 0.7
     
     
  • 2.9, Аноним (1), 10:53, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    В репозитории уже есть, а вот новость на их форуме стала 404.

    https://github.com/lxc/incus/releases/tag/v6.0.0

     
     
  • 3.11, microcoder (ok), 10:58, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Мдаа.. Хрень какая-то. Не понятно.
     
  • 3.61, Минона (ok), 22:51, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Открывается нормально.
    v6.0.0 Latest
    Compare
    @stgraber stgraber released this 04 Apr 03:34
    · 5 commits to main since this release
      v6.0.0  

      714bcc5

     
     
  • 4.62, microcoder (ok), 23:16, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Открывается нормально.

    Сейчас уже открывается. Раньше не открывалось

     

  • 1.20, Аноним (20), 12:21, 04/04/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Магазин приложений в формате OCI где-либо имеется? Для примера, поискал Firefox в OCI, не нашлось.
     
     
  • 2.33, Аноним (33), 14:55, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    И не найдешь!

    Таким ивращением никто в здравом уме не будет страдать. Если нужна изоляция, то возьми flatpak версию  https://flathub.org/apps/org.mozilla.firefox

     
     
  • 3.52, Аноним (20), 19:19, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    В Генте flatpak не заходит. Проще LXC поднять.
     

  • 1.34, andreyche (?), 14:57, 04/04/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    А в чем разница между Incus и lxc ?
     
     
  • 2.36, Аноним (32), 16:30, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Прям в новости написано:

    > LXC относится к низкоуровневым инструментариям, работающим на уровне отдельных контейнеров. Для централизованного управления контейнерами, развёрнутыми в кластере из нескольких серверов, на базе LXC развиваются системы Incus и LXD.

    LXC – то что работает "внутри", непосредственно рулит контейнерами на низком уровне.
    LXD и Incus – работают поверх LXC, на основе него. С их помощью можно сделать всё то же самое, что и напрямую с LXC, но гораздо удобнее и организованно.

    Это, весьма грубо говоря, примерно как libcontainer и Docker (сравнение не очень правильное, но наверное поможет чуть лучше понять, как относятся LXC и LXD/Incus).

     
     
  • 3.38, microcoder (ok), 17:11, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Всё не так :))

    Путаница эта давно идёт и никак не заканчивается, поэтому команда incus сделала фундаментальное изменение в проекте (обратно не совместимое), чтобы в том числе это исправить.

    История эволюции Linux container'ов примерно следующая:

    * LXC - Это какая-то древняя реализация контейнеров с реализацией библиотки liblxc
    * LXD/LXC - это следующая эволюция в которой отвязались от liblxc, переписали всё на Go и сделали разделение проекта на серверную часть (LXD - Deamon) и клиентскую части (LXC - Client). Сервер, точнее демон, это ничто иное как RESTful API сервис принимающий запросы в JSON, клиент (LXC) это собственно клиент который генерирует запросы в JSON и отправляет их демону (серверу) и получает от него ответ. Примерно так.
    * Incus это форк LXD/LXC

    Чем отличается LXD/LXC от Incus? Тем, что первый поддерживается командой Canonical, второй поддерживаетеся сообществом и пока существенной разницы между ними нет. Есть ньюансы, но они не большие.

     
     
  • 4.39, Аноним (32), 17:51, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Вы уверены На сайте Incus пишут Вот тут явно пишут, что Incus зависит от LXC ... большой текст свёрнут, показать
     
     
  • 5.42, microcoder (ok), 18:29, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Всё что вы написали, это именно та ВЕСКАЯ причина просто космическая без приуве... большой текст свёрнут, показать
     
     
  • 6.44, Аноним (32), 18:46, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Прямо по вашей же ссылке пойдём на сайт убунты и посмотрим на эту страницу вниз... большой текст свёрнут, показать
     
     
  • 7.48, microcoder (ok), 19:05, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Да, надо признать я нашёл такой пакет у себя:

    >[dv@manjaro ~]$ pacman -Ql lxc | grep liblxc
    >lxc /usr/lib/liblxc.so
    >lxc /usr/lib/liblxc.so.1
    >lxc /usr/lib/liblxc.so.1.7.0

    Но управлять через него контейнеры не получится, во всяком случае у меня это не выходит. Он просто ничего не знает о контейнерах. Видимо да, не отвязались ещё от liblxc, но планы вроде как были.

    В любом случае, проектом LXC не получится пользоваться в составе LXD, так как с LXD поставляется свой клиент LXC (C - как раз указывает на слово Client).

    Поэтому всё же надо различать:

    1) LXC (низкоуровневый, тот что с командами lxc-*)
    2) LXD/LXC (который имеет демона и клиента lxc --help)
    3) Incus (форк LXD, а не LXC)

     
     
  • 8.50, Аноним (32), 19:07, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Да, я именно об этом я изначально и говорил Тоже всё правильно, потому что ими ... текст свёрнут, показать
     
     
  • 9.54, microcoder (ok), 19:29, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Так это о том, о чём я и писал изначально в посте https www opennet ru openfor... текст свёрнут, показать
     
  • 6.46, Аноним (32), 18:57, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Называется «отвязались от liblxc»:

    https://github.com/lxc/incus/blob/main/internal/server/instance/drivers/driver

     
  • 5.43, microcoder (ok), 18:38, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Ну и финальный аккорд касательно "отвязались от liblxc", тут вы прямо таки
    > не правы: https://linuxcontainers.org/incus/docs/main/explanation/instances/
    >> Containers are implemented through the use of liblxc (LXC).

    Перевод дословный: Контейнеры были реализованы через использование liblxc. Что это значит? Какие контейнеры? Чьи? Мои? Или в репозитории образов? Что здесь имеют ввиду под контейнерами - я не знаю. Возможно старая документация которую некому поддержать.

     
     
  • 6.45, Аноним (32), 18:47, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Там достаточно ясно написано. В LXD/Incus мы можем создавать instanc'ы, а они могут быть двух типов: либо контейнер, либо виртуальная машина. Первый вариант реализован поверх LXC. Второй вариант – поверх QEMU.
     
  • 6.47, Аноним (32), 18:59, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Контейнеры были реализованы через использование liblxc. Что это значит? Какие контейнеры?

    Вот такие: https://github.com/lxc/incus/blob/main/internal/server/instance/drivers/driver

    // The LXC container driver.
    type lxc struct {
    ...
    c *liblxc.Container // Use d.initLXC() instead of accessing this directly.
    ...
    }

     
     
  • 7.53, microcoder (ok), 19:24, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Хорошо. Теперь я понял лучше. Значит получается следующее:

    1) Проект LXC (https://linuxcontainers.org/lxc/getting-started/)

    2) Проект LXD/LXC который зависит от LXC и имеет СВОЙ КЛИЕНТ LXC (то есть два LXC с пользовательской стороны). Клиент с командами lxc-* который не работает с пользователем, но поставляется, и клиент lxc который работает с LXD. Таким образом это никак не отменяет, что LXC это клиент для LXD, тем более справка это подтверждает вызовом lxc --help

    3) Incus - Форк LXD, кторый также поставляется с LXC, но со старым, низкоуровневым LXC, а не с тем, что поставлялся в LXD как клиент. Сейчас LXC это incus, а работа с демоном (lxd) превратилась в incus admin *

    Мда...

     
     
  • 8.57, Хочу стать девопсом пусть меня научат (?), 21:07, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Разве Incus - это не форк LXD IMHO Incus от LXD концептуально ничем не отличает... текст свёрнут, показать
     
     
  • 9.59, microcoder (ok), 21:28, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Форк LXD, так у меня и написано в предыдущем посте Смотрите внимательнее ... текст свёрнут, показать
     
  • 4.41, Аноним (32), 17:55, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > отвязались от liblxc

    Ну или они действительно отвязались, но документацию не обновили… Но пока не увидел иного, буду придерживаться точки зрения из документации.

     
  • 4.49, Аноним (32), 19:05, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Ваша версия не сходится с тем, что по документации LXD и Incus явно зависят от l... большой текст свёрнут, показать
     
  • 3.56, Хочу стать девопсом пусть меня научат (?), 21:04, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    LXD/Incus - это кластерный оркестратор LXC контейнеров и libvirt виртуалок, - т.е. прямая замена для проксьмоськса. Но намного лучше, потому что можно запустить и на Devuan и на Alpine, где системднища и в помине нет.
     
  • 2.40, Аноним (40), 17:54, 04/04/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Здесь о том, кто создал, как и почему

    https://www.opennet.ru/opennews/art.shtml?num=59556

     

  • 1.63, Анонимус3000 (?), 23:58, 04/04/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > Для взаимодействия с systemd через D-Bus задействована отдельная библиотека libdbus-1 вместо libsystemd

    Вот что бекдор в xz животворящий делает!

     

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



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

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