ADG Оставить заявку
Блог Инфраструктура 4 мин чтения

Astra Linux SE 1.8.1: обновляем парк Yadro Vegman и пересобираем драйвер сетевой карты

Astra Linux SE 1.8.1 закрывает критические CVE и расширяет поддержку оборудования Yadro. Прошли обновление без инцидентов, но один in-house драйвер пришлось пересобирать.

Контекст момента

Выход Astra Linux SE 1.8.1 с расширенной поддержкой оборудования Yadro и исправлением критических CVE

Astra Linux SE 1.8.1 вышла на прошлой неделе. В анонсе - расширенная поддержка оборудования Yadro и закрытие нескольких CVE, часть из которых классифицирована как критические. Для нас это означало обязательное обновление на серверах, которые стоят в managed-сопровождении - откладывать при критических уязвимостях не принято. Рассказываем, как прошло.

Что в релизе

Официальный changelog Astra Linux SE 1.8.1 сосредоточен на двух направлениях.

Поддержка Yadro. В 1.8.0 поддержка серверов Yadro Vegman появилась в базовом объёме, но ряд периферии требовал ручных патчей. В 1.8.1 вендор закрыл наиболее частые случаи: корректная инициализация контроллеров хранилища на некоторых конфигурациях Vegman R2/R4, улучшенная поддержка IPMI-интерфейсов для удалённого управления. По документации выглядит как планомерная доработка, а не революция.

Закрытые CVE. Несколько уязвимостей в ядре Linux и стеке glibc - среди них CVE с CVSS-оценкой выше 8.0, связанные с локальным повышением привилегий и потенциальной эксплуатацией через сетевой стек. На объектах КИИ такое обновление не обсуждается - ставить нужно.

Парк и план обновления

У нас под управлением несколько кластеров на Yadro Vegman - преимущественно модели R2 и R4. На них крутится комбинация вычислительных и хранилищных нод, часть из которых под zVirt, о котором мы писали недавно.

Стандартный порядок для rolling-обновления ОС у нас такой:

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

Сам apt-апдейт через зеркало репозитория Astra прошёл без неожиданностей. Пакеты подтянулись, ядро обновилось, перезагрузки штатные. Ни одного сервера, который завис бы при перезагрузке или не поднял сеть.

Единственный затык: in-house драйвер NIC

Мы поддерживаем несколько серверов, на которых стоят сетевые карты без официальной поддержки в дистрибутиве - карты хорошие, но вендор не торопится с upstream-патчами в ядро Linux. Для них есть самописный драйвер, который мы собирали под конкретный kernel ABI.

После обновления на 1.8.1 с новым ядром этот драйвер, разумеется, перестал загружаться - несовпадение kernel symbol версий. Ничего катастрофичного: сервер загрузился, просто без нужных интерфейсов. Стандартная ситуация для DKMS-несовместимых модулей.

Пересборка заняла около получаса с учётом установки заголовков нового ядра и прогона make. Модуль собрался чисто, загрузился, интерфейсы поднялись. После этого добавили его в DKMS-конфигурацию с явной привязкой к версии - чтобы в следующий раз не вспоминать руками.

Мелочь, но показательная: при наличии любых внешних или самописных модулей ядра обновление ОС - это не просто apt upgrade && reboot. Список таких модулей лучше держать в документации по серверу, а не в голове у того, кто их когда-то собирал.

Про IPMI на Vegman

Один из заявленных улучшений 1.8.1 - поддержка IPMI на Vegman. Честно говоря, у нас и на 1.8.0 IPMI работал нормально в части базового управления питанием и консоли. Разница в 1.8.1, судя по всему, касается более тонких вещей - корректного отображения датчиков температуры в ipmitool sensor и поведения IPMI при определённых сценариях ребута. После обновления показания датчиков действительно стали чище - раньше пара сенсоров периодически уходила в 0x20 | State Deasserted без видимых причин.

Итог

Обновление прошло штатно. Единственный ручной шаг - пересборка одного драйвера под новое ядро - это не баг релиза, а плановая работа, которую мы и так делаем при любой смене kernel ABI. CVE закрыты, оборудование работает, показания датчиков стали адекватнее.

Для клиентов на managed-сопровождении с парком Yadro Vegman - обновление рекомендуем. Если есть внешние модули ядра, проверьте их совместимость заранее: список модулей и их источников должен быть в runbook по серверу, а не только в памяти команды.

Контакт

Нужна такая же инженерная работа?

Опишите задачу и контекст. Ответим в течение рабочего дня, при необходимости подпишем NDA.