Canonical возвращает свой «контейнервизор» LXD в свои руки

    0
    0


    Инструмент Canonical LXD, ранее поддерживаемый публично под эгидой проекта Linux Containers, спонсируемого Canonical, теперь используется внутри компании.

    В День независимости США Canonical объявила, что спонсируемый ею проект LXD больше не является независимым. Ранее разработка проекта LXD велась как часть более широкого проекта Linux Containers. В дискурсе Ubuntu есть пост с часто задаваемыми вопросами, в котором немного больше информации, но все же не очень много.

    LXD существует уже довольно давно: Рег рассказал о своем объявлении еще в 2014 году и включении первого выпуска в Ubuntu 15.10 в следующем году. LXC довольно стар: мы впервые упомянули о нем как о многообещающем варианте в 2011 году, за пару лет до первого запуска Docker.

    В сети возникла значительная путаница по поводу этого шага, возможно, потому, что как инструмент LXD зависит от базовой функциональности LXC; LXD даже использует некоторые инструменты командной строки LXC. Однако это не одно и то же, и это только усугубляет ситуацию. LXC — всего лишь один из множества инструментов для управления контейнерами поверх ядра Linux.

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

    Вкратце, LXC — это инструмент для создания и управления контейнерами на хостах Linux. Однако в наши дни у него много конкурентов, отчасти благодаря широкой совместимости, обеспечиваемой спецификациями инициативы OCI. Docker, конечно, один из самых известных, и в самом начале своего существования он фактически использовал LXC для запуска своих контейнеров. В наши дни альтернативные системы включают crun (реализованный на C), runc (реализованный на Go) и systemd-nspawn, который, как следует из названия, является частью системы инициализации systemd. Американский банк Capital One, в штате которого раньше работало много технарей, хорошо знаком с технологиями.

    В наши дни наибольший интерес к запуску контейнеров вызывает запуск больших групп вещей, управляемых инструментами оркестрации, такими как знаменитый Kubernetes. Каждый хочет стать следующим миллиардером в области доткомов, а для этого необходимо очень масштабируемое присутствие в Интернете. Один из способов добиться этого — разбить вашу серверную инфраструктуру на микросервисы: множество маленьких «контейнеров приложений», каждый из которых содержит один двоичный файл и необходимые библиотеки, от которых он зависит. Теория состоит в том, что автоматизируя координацию многих из них, когда вы становитесь вирусным, ваше веб-присутствие может масштабироваться очень быстро, без вмешательства человека — и без оплаты множества серверных виртуальных машин, которые простаивают 99% время.

    Это означает, что центр внимания технологий сместился на инструменты для управления целыми группами контейнеров приложений — «модулями», на языке Kubernetes — и на технические вопросы, такие как их запуск без привилегий root и без единого демона, контролирующего все они, что привело к таким инструментам, как Podman от Red Hat.

    Менее модными, но более практичными для многих людей являются системные контейнеры, которые содержат весь дистрибутив Linux, включая его систему инициализации — все, кроме ядра. Системные контейнеры могут существовать очень долго и используются так же, как виртуальные машины, за исключением того, что все они совместно используют один и тот же пул памяти и дисков. Контейнеры приложений создаются и уничтожаются по запросу: вам не нужно переносить их с одного хост-сервера на другой, вы просто убьете их и запустите новые.

    Ситуация немного отличается, если контейнер, скажем, содержит почтовый сервер с 1000 одновременных пользователей. Это тип работы, на который нацелен LXD. LXD использует LXC для создания и запуска системных контейнеров, которыми можно управлять как виртуальными машинами: вы можете выделить им оборудование, перенести их с одного хоста на другой и так далее. (Однако, чтобы замутить воду, LXD также может управлять настоящими виртуальными машинами, начиная с версии 4.0.) Он даже имеет графический интерфейс на основе браузера для визуального управления экземплярами.

    Как отмечается в прекрасном сравнении LXC и LXD, проведенном LWN, Canonical является основным коммерческим спонсором обоих проектов. LXD является кроссплатформенным и может использоваться в нескольких дистрибутивах: в основном он распространяется в виде пакета Snap, но некоторые дистрибутивы также включают версии в исходном пакете, такие как Alpine, Arch и Gentoo.

    LXC — это отдельный инструмент, который продолжает существовать самостоятельно, даже если он уже не в моде. Вы можете использовать LXC без использования LXD, но LXD зависит от LXC для некоторых своих функций. Таким образом, весьма вероятно, что Canonical продолжит спонсировать разработку LXC, и что оба инструмента останутся доступными в различных дистрибутивах, а не только в Ubuntu. ®

    Предыдущая статьяРак мозга может быть вылечен с помощью искусственного интеллекта, показывает новое исследование
    Следующая статьяСлух: первый OLED iPad Pro на пути к следующему году, MacBook Pro отложенный
    Виктор Попанов
    Эксперт тестовой лаборатории. Первый джойстик держал в руках в возрасте 3 лет. Первый компьютер, на котором „работал” был с процессором Intel i386DX-266. Тестирует оборудование для издания ITBusiness. Будь то анализ новейших гаджетов или устранение сложных неполадок, этот автор всегда готов к выполнению поставленной задачи. Его страсть к технологиям и приверженность качеству делают его бесценным помощником в любой команде.