IT-инфраструктура • инструкции • практикаПоиск по сайту

Серверы и системное администрирование

Найти материал →

Incus 7.3: общее Gpu-ускорение для виртуальных машин и 13 исправлений безопасности

Incus 7.3: общее GPU-ускорение для виртуальных машин и 13 исправлений безопасности

Разработчики проекта Incus выпустили версию 7.3 - крупное обновление открытой платформы для управления контейнерами и виртуальными машинами. Релиз сочетает новые функции виртуализации, сетевые улучшения, расширенные возможности администрирования и исправления 13 уязвимостей. Среди них девять проблем получили критический уровень опасности, две признаны уязвимостями высокой степени, ещё две - средней.

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

Главным функциональным новшеством стала поддержка общего 3D-ускорения GPU для Linux-виртуальных машин. Incus 7.3 использует новый тип GPU с native context, объединяющий virtio-gpu и virglrenderer. Благодаря этому гостевая система получает ускоренную графику без необходимости передавать ей целую физическую видеокарту.

В отличие от классического PCI passthrough, при котором один графический адаптер закрепляется за одной виртуальной машиной, новый подход позволяет нескольким ВМ одновременно обращаться к одному GPU. Это делает технологию более подходящей для рабочих станций, тестовых сред, графических приложений и серверов, где требуется распределять ресурсы между несколькими гостевыми системами. Пока функция ориентирована преимущественно на Linux: в Windows отсутствует полноценная поддержка необходимых драйверов, поэтому ускорение при такой конфигурации там не работает.

Пользователям, которым требуется Incus 7.3 скачать, рекомендуется выбирать пакеты из официальных репозиториев проекта и заранее сверять совместимость с используемым дистрибутивом. Перед обновлением production-серверов желательно создать резервные копии конфигурации, проверить состояние кластеров и протестировать новые параметры на отдельном узле. Сама Incus 7.3 установка зависит от операционной системы, но после перехода необходимо отдельно проверить сетевые профили, хранилища и политики доступа.

Управление UEFI и перенаправлением портов

В новой версии появилась команда `incus low-level nvram`, позволяющая напрямую работать с переменными UEFI NVRAM виртуальных машин. Администратор может просматривать и изменять параметры загрузки, включая список загрузочных устройств и их порядок. Это избавляет от необходимости каждый раз заходить в интерфейс виртуальной прошивки вручную. В будущих версиях разработчики планируют добавить средства автоматической установки ключей UEFI Secure Boot.

Для упрощения публикации сервисов внутри контейнеров и ВМ добавлена команда `incus port-forward`. Она создаёт локальный TCP-порт и пересылает входящие подключения на выбранный адрес и порт внутри экземпляра. Такой механизм пригодится для временного доступа к веб-интерфейсам, базам данных, API и другим службам без сложной ручной настройки сетевых правил. Таким образом, Incus настройка портов становится более понятной и удобной для повседневного администрирования.

Новая модель авторизации

Изменения затронули и систему контроля доступа. Прежние параметры сервера `openfga.*` перенесены в более общий раздел `authorization.*`, а существующие значения автоматически преобразуются во время обновления.

Теперь Incus способен применять разные драйверы авторизации в зависимости от типа клиента. Отдельные политики можно задавать для локальных клиентов, подключающихся через Unix-сокет, TLS-клиентов без ограничений, TLS-подключений с привязкой к проекту, пользователей OIDC и других категорий. В зависимости от сценария доступны режимы `allow`, `deny`, `openfga` и `scriptlet`. Это позволяет точнее разделять права операторов, автоматизированных систем и внешних пользователей.

В рамках очистки интерфейса командной строки прежняя команда `incus debug` переименована в `incus low-level`. Теперь в ней собраны низкоуровневые операции, связанные с грязными битовыми картами виртуальных машин, переменными NVRAM и восстановлением экземпляров после проблем.

Сетевые функции и виртуализация

Сетевой стек получил поддержку ненумерованных BGP-сессий с внешними маршрутизаторами через сетевой интерфейс, без необходимости указывать статический адрес соседа. Incus самостоятельно находит IPv6 link-local-адрес маршрутизатора и может обмениваться IPv4-маршрутами с использованием расширенной возможности next-hop в BGP.

Также виртуализация внутри виртуальных машин теперь настраивается явно. Параметр `security.nesting` распространяется не только на контейнеры, но и на ВМ. По умолчанию он включён, чтобы сохранить прежнее поведение. Если отключить опцию, гостевой системе перестанут передаваться флаги процессора AMD SVM и Intel VMX. Для ограниченных проектов предусмотрен параметр `restricted.virtual-machines.nesting`, позволяющий запретить вложенную виртуализацию сразу для всех ВМ проекта.

Работа с несколькими серверами Incus стала удобнее благодаря ключу `--all-remotes` команды `incus list`. Он собирает экземпляры со всех настроенных удалённых серверов в единую таблицу и добавляет столбец с указанием узла, на котором работает каждая система. В сочетании с `--all-projects` этот режим помогает получить сводную картину распределённой инфраструктуры.

Агент виртуальных машин также получил улучшения. Если virtio-vsock недоступен, он теперь способен передавать сведения об операционной системе и IP-адресе через последовательное соединение. Это повышает информативность мониторинга в средах с ограниченным набором виртуальных устройств.

Для систем хранения расширен API метрик. Эндпоинт `/1.0/metrics` теперь показывает общий и занятый объём пулов хранения. Полученные показатели можно собирать средствами Prometheus и совместимых систем мониторинга, отслеживая заполнение хранилищ и заранее выявляя риск нехватки места.

Перед внедрением обновления администраторам стоит проверить используемые профили, правила авторизации и сценарии резервного копирования. Особое внимание следует уделить проектам, где задействованы символические ссылки, импорт образов и архивов: именно эти операции были связаны с рядом исправленных проблем безопасности. Для критической инфраструктуры разумным подходом будет поэтапное обновление с предварительным тестированием GPU-ускорения, сетевых перенаправлений и политики вложенной виртуализации.

В целом Incus 7.3 заметно расширяет возможности платформы: ускорение графики делает виртуальные машины более универсальными, управление UEFI и портами сокращает число ручных операций, а новые политики авторизации и исправления уязвимостей повышают безопасность многопользовательских сред. Для актуальных инсталляций обновление выглядит особенно важным благодаря сочетанию функциональных новшеств и масштабного пакета защитных исправлений.

Прокрутить вверх