Проект, Broadcom и open source
Тема дорожной карты · SaltStack
История владельцев Salt часто вызывает путаницу. Томас Хэтч создал проект в 2011 году, а развивала его компания SaltStack Inc. В 2020 году SaltStack была приобретена VMware, которая в 2023 году вошла в состав Broadcom. При этом Salt остаётся open source: код доступен в репозитории saltstack/salt на GitHub под лицензией Apache 2.0. Ядро сопровождают инженеры Broadcom и сообщество. Смена владельца не изменила лицензию, но повлияла на расположение пакетных репозиториев, состав ядра и график поддержки версий. Эти изменения важны для правильной установки и обновления.
Как это работает
Схема версионирования основана на числовых мажорах, напоминающих годы: 3006, 3007, 3008. Точечные релизы выглядят как 3008.1, 3008.2. Версии делятся на LTS (долгосрочная поддержка) и STS (короткий цикл): 3006.x — предыдущий LTS, перешедший в фазу critical-support, 3007.x — STS, а 3008 — текущий LTS до 2026 года. Для продакшена рекомендуется использовать LTS-ветку.
Два важных следствия смены владельца. Во-первых, в конце 2024 года пакетный репозиторий переехал с repo.saltproject.io на packages.broadcom.com (Artifactory). Пакеты старше 3006 оттуда недоступны, и старые инструкции с прежними URL перестали работать. Рекомендуемый формат пакетов — onedir: дистрибутив со встроенным интерпретатором Python, не зависящий от системного. Во-вторых, с релиза 3008 произошла «Great Module Migration»: значительная часть модулей вынесена из ядра в community-расширения (GitHub-организация salt-extensions) и устанавливается отдельно: salt-pip install saltext-<name> или обычным pip.
Когда применять
Понимание статуса проекта необходимо в трёх ситуациях. Во-первых, при выборе инструмента: если вы решаете, закладывать ли Salt в новую инфраструктуру, аргументы такие — лицензия Apache 2.0, открытый репозиторий, действующий график LTS/STS-релизов. Риск зависимости от вендора здесь связан с темпом развития, а не закрытием кода. Во-вторых, при обновлении старых инсталляций: с версий до 3006 сначала нужно перейти на новые репозитории и onedir-пакеты, а затем догнать актуальный LTS. В-третьих, при планировании зависимостей: если ваши state'ы используют модуль, уехавший в salt-extensions, установка соответствующего saltext-пакета становится частью раскатки мастера и миньонов. Отдельно помните: проприетарный GUI (SaltStack Config / Aria Automation Config) — коммерческий продукт вне open-source-ядра, и его в этом роадмапе не рассматриваем.
Типичные ошибки
Классическая ошибка — установка Salt по статье 2020 года: URL repo.saltproject.io больше не работает, и люди делают вывод «проект умер», хотя репозиторий просто переехал на packages.broadcom.com. Вторая ошибка — обновление до 3008 и удивление пропажей модулей: после «Great Module Migration» их нужно доставлять как saltext-расширения, поэтому перед апгрейдом сверьте список используемых модулей с составом ядра. Третья — сидение на 3005 и старше «пока работает»: этих пакетов уже нет в репозитории, а значит нет и обновлений безопасности. Не путайте юридический статус с операционным: лицензия открытая, но темп релизов и приоритеты ядра задаёт Broadcom — закладывайте это в долгосрочное планирование.
Связанные понятия
Полезные ресурсы
🔤 Английские термины в этой теме
Слова из этой темы, которые русскоязычные часто произносят неверно. Кнопка 🔊 произносит голосом браузера.
- consequences /ˈkɒnsɪkwənsɪz/ ударение на первый слог, «кОнсиквенсиз» разбор: ADR и design doc: context, decision, consequences
- ARIA /ˈɑːriə/ «Ариа» разбор: Термины frontend: render, hydration, bundle, breakpoint, a11y
- article /ˈɑːrtɪkl/ артикль разбор: Базовая IT-лексика
- interpreter /ɪnˈtɜːrprɪtər/ ударение на «тёр» разбор: Ошибки терминала: permission denied, no such file, segfault
- migrate /ˈmaɪɡreɪt/ ударение на первый слог разбор: Глаголы инженера: deploy, merge, roll back, refactor
- release /rɪˈliːs/ ударение на второй слог, «релис», а не «релиз» с русским «з» разбор: Версии и числа: two point oh, semver
- repo /ˈrɛpoʊ/ «репоу» разбор: Английский Git и code review