Microsoft рассматривает возможность перевести собственный дистрибутив Azure Linux на сборочную базу Fedora. Об этом со ссылкой на лог встречи специальной группы Fedora ELN (Enterprise Linux Next) сообщил Майкл Лярабель в материале Phoronix. Параллельно в Fedora обсуждается предложение собирать пакеты Fedora 45 под уровень микроархитектуры x86_64-v3, и один из авторов этого предложения — Кайл Господнетич (Kyle Gospodnetich), инженер Microsoft по Linux. Эти два сюжета связаны: Azure Linux нужен x86_64-v3 для производительности.
Azure Linux и его прошлое имя CBL-Mariner
Azure Linux — собственный RPM-дистрибутив Microsoft, ранее известный как CBL-Mariner. На нём построены контейнерные сценарии в Azure, графическая прослойка WSL 2 и ряд других внутренних задач компании. За последние годы охват и возможности дистрибутива заметно расширились, и теперь обсуждается следующий шаг: перевести его на сборочную базу Fedora.
CBL-Mariner — первое название Azure Linux. Аббревиатура CBL расшифровывалась как Common Base Linux. Переименование в Azure Linux прошло с релизом 2.0.20240301 в марте 2024 года, репозиторий microsoft/azurelinux на GitHub стал основным.
Предложение по x86_64-v3 для Fedora 45 и роль Microsoft
В недавно поданном предложении об изменении предлагается собирать пакеты Fedora 45 под уровень микроархитектуры x86_64-v3 параллельно с базовым x86_64-v1. Один из авторов предложения, Кайл Господнетич, — инженер Microsoft по Linux. Связь между интересом Microsoft к x86_64-v3 и планами по Azure Linux прозвучала на встрече специальной группы Fedora ELN .
Уровень микроархитектуры x86_64-v3 — набор расширений системы команд поверх базового x86_64. На уровне v3 предполагается обязательная поддержка AVX, AVX2, BMI2, FMA и ряда других инструкций. Этому уровню соответствуют процессоры Intel Haswell и новее, а также AMD на архитектурах Excavator/Zen и новее.
В обсуждении в списке рассылки Fedora devel и в логе той же встречи группы ELN отмечено, что в x86_64-v3 для Fedora заинтересованы Microsoft и Fyra Labs.
Что прозвучало на встрече группы Fedora ELN
В логе встречи зафиксированы три ключевых момента, проясняющих позицию Microsoft. Во-первых, компания поддерживает предложение по x86_64-v3 и готова помочь Fedora вычислительными ресурсами для двойной сборки пакетов. Во-вторых, у Azure есть намерение в целом перевести Azure Linux на сборочную базу Fedora, и для производительности команде нужен именно уровень x86_64-v3, а не базовый x86_64-v1. В-третьих, изначально в Microsoft рассматривали альтернативу — полностью форкнуть Fedora под собственные нужды, но в обсуждении эту идею отклонили в пользу совместной работы внутри Fedora ELN.
Третий пункт особенно важен для остального сообщества Fedora. Один из участников встречи прямо отметил, что направил инженеров Microsoft в сторону общей работы над x86_64-v3 и не хотел бы, чтобы предложение об изменении провалилось: иначе у Microsoft останется только путь форка.
Fedora ELN (Enterprise Linux Next) — сборочное окружение и процесс сборки в рамках Fedora, в котором исходники Fedora Rawhide собираются с макросами и флагами компилятора, приближенными к Red Hat Enterprise Linux. Снимки ELN периодически берут за исходную точку для новых веток CentOS Stream и RHEL.
Производительность и стоимость инфраструктуры сборки
Azure Linux уже использует RPM, поэтому переход на Fedora-базу не требует смены менеджера пакетов. Связка с x86_64-v3 указывает на приоритет производительности на современных серверных процессорах Intel и AMD: на уровне v3 в сборке доступны AVX, AVX2, FMA и расширенные инструкции битовых манипуляций, недоступные в базовом x86_64.
Для x86_64-v3 в Fedora параллельная сборка пакетов под v1 и v3 удваивает требования к инфраструктуре сборки и зеркалам — этим, в частности, объясняется готовность Microsoft помочь вычислительными ресурсами.
Заключение
Официального анонса Microsoft о переходе Azure Linux на Fedora пока нет — речь идёт о намерениях, прозвучавших на рабочей встрече Fedora. Однако присутствие инженера Microsoft в авторстве предложения по x86_64-v3 и прямое указание в логе ELN на планы по Azure Linux указывают в одну сторону: Microsoft заинтересована в Fedora как в апстриме для собственного RPM-дистрибутива и готова вкладываться в общий уровень x86_64-v3, от которого выиграют и Fedora, и будущие версии RHEL.