Rocky Linux, форк на основе RHEL, созданный Грегори Курцером — тем же парнем, который создал CentOS, — за последние несколько лет заслужил прочную репутацию одной из лучших и самых надежных альтернатив Red Hat Enterprise Linux. Всего несколько дней назад дистрибутив выпустил свой совершенно новый основной релиз — Rocky Linux 10 — на основе RHEL 10 , и это заставило меня задуматься о нескольких вещах.
Как вы знаете, в первую очередь вспоминают три названия бесплатных замен RHEL: AlmaLinux, Rocky Linux и Oracle Linux. Хотя Oracle, как правило, менее популярен среди энтузиастов Linux — в основном по историческим причинам, которые, как мне кажется, не совсем справедливы — и Rocky, и Alma были тепло приняты обычными пользователями Linux и бизнес-сегментом.
Я поднимаю все это, потому что выбор часто сводится всего к двум вариантам — Rocky или Alma. Вы найдете тонны вопросов об этом в Интернете и социальных сетях. И как бы вы это ни рассматривали, оба по сути предлагают одно и то же: бесплатную альтернативу RHEL.
Конечно, есть некоторые (небольшие) технические и (большие) идеологические различия, но они в значительной степени взаимозаменяемы в повседневном использовании, за исключением одного огромного различия. И вот почему я это пишу: возможность обновления между основными версиями.
Нет, это не очередная статья о Rocky против Alma. Вместо этого эта статья о том, почему — после трех крупных релизов (8, 9 и теперь 10) — официальная документация Рокки придерживается того же ясного сообщения с первого дня, написанного жирным шрифтом:
Ответ всегда один и тот же: проект не поддерживает обновления на месте одной основной версии до другой основной версии. Вам нужно переустановить, чтобы перейти на следующую основную версию.
Как вы, вероятно, знаете, CIQ (сокращение от Ctrl IQ), компания, основанная также Грегори Курцером, является спонсором-основателем и основным коммерческим спонсором Rocky Linux. Хотя Rocky управляется Rocky Enterprise Software Foundation ( RESF ), CIQ предоставляет значительные ресурсы, включая инфраструктуру, инженерию и финансовую поддержку, чтобы помочь проекту расти.
Плюс они предлагают платную поддержку для корпоративных клиентов, использующих Rocky. Поэтому мне сложно представить ситуацию, когда компания звонит и говорит: « Привет, нам нужна помощь в обновлении наших восьмидесяти шести серверов Rocky 9 до последней версии, Rocky 10 », а служба поддержки отвечает: « Нет проблем, ребята, мы просто переустановим их все ». Честно говоря, это выходит за рамки всего, что я могу себе представить.
Rocky — это корпоративный дистрибутив Linux , мы не говорим о небольшом стороннем проекте, созданном несколькими энтузиастами, экспериментирующими с последними тенденциями вроде неизменяемости, выпустив еще один дистрибутив. Честно говоря, я бы даже не возражал, если бы не было пути обновления между основными версиями в таком сценарии. Никто на самом деле не ожидает его в таких случаях.
Но мы говорим о Rocky — имени, которое, несмотря на то, что ему всего около четырех лет, уже зарекомендовало себя как надежная альтернатива RHEL, ориентированная на обслуживание бизнеса. Вот почему отсутствие четкого, поддерживаемого пути обновления между основными версиями кажется неприемлемым и труднообъяснимым.
Чтобы внести ясность и избежать путаницы, вот как обстоят дела в сравнении с тремя другими ведущими корпоративными дистрибутивами Linux из семейства Red Hat:
- RHEL официально поддерживает обновления между основными версиями
- AlmaLinux также предоставляет официальный путь обновления между основными версиями.
- Oracle Linux поддерживает обновление между основными версиями
Не вдаваясь в технические подробности, вот краткая версия: во всех трех случаях решение построено на основе фреймворка Leapp от Red Hat , а также инструмента ELevate, разработанного Alma и более широким сообществом. Другими словами, колесо уже изобретено. Почему Рокки предпочитает не использовать его — я действительно не могу объяснить.
Однако не все потеряно — если вы зайдете на Rocky Linux Wiki и посмотрите раздел «Политика обновления» , вот что вы найдете:
Обновления обычно не поддерживаются Release Engineering и большинством сообщества Rocky. Если вы хотите выполнить обновления между выпусками, есть инструмент ELevate, который может вам помочь. Но в качестве предостережения: это не было официально протестировано, и мы не можем предоставить официальную помощь.
Другими словами, ELevate доступен, но мы никак не связаны с ним, так что если что-то пойдет не так, это не наша вина. Теперь, не звуча так, будто я выбираю фаворитов, я восхищаюсь Alma за то, что она сделала больше — не только для своей пользовательской базы, но и для всего корпоративного сообщества Linux — сделав возможными обновления на месте между основными версиями.
Но давайте проясним — в настоящее время инструмент не поддерживает миграцию с Rocky 9 на 10. Так что, если вы используете Rocky 9, вот простая истина: прямого пути обновления до 10 нет. Ваш единственный вариант — сделать резервную копию всего из вашей текущей установки, выполнить новую установку Rocky Linux 10, переустановить ваши службы и восстановить ваши данные из резервной копии. Это немного хлопотно, но это единственный способ двигаться вперед.
Конечно, если вы опытный инженер DevOps, это может не иметь большого значения. С хорошо продуманными сценариями Ansible и надежными конвейерами CI/CD вы можете быстро вернуть все в рабочее состояние. Но это не главное — и давайте не будем забывать, что не у всех есть такой опыт и знания. Большинство людей хотят найти что-то подобное и просто следовать инструкциям.
Реальная проблема в том, что когда вы работаете на уровне предприятия, предложение четкого и надежного пути обновления — это не какой-то бонус, а базовое ожидание. Сказать что-то вроде « Проект не поддерживает обновления на месте » — это послать довольно плохой сигнал как текущим пользователям, так и тем, кто рассматривает возможность внедрения.
Чем скорее Rocky исправит этот серьезный недостаток, тем лучше для них. Но пока этого не произошло, сложно рекомендовать систему, которая говорит пользователям переустановить, когда другие в той же лиге предлагают что-то столь же базовое и ожидаемое, как бесшовные обновления на месте.
Да, по словам Рокки, технические различия между основными версиями — например, переход с 8 на 9 или с 9 на 10 — настолько существенны, что обновление на месте не может гарантировать, что все будет работать правильно. Но это, естественно, поднимает вопрос: если это так, как RHEL, Alma или Oracle удается это осуществить?
В заключение, Rocky дает вам все преимущества экосистемы Red Hat — стабильность, надежность, предсказуемость, безопасность и 10 лет надежной поддержки. Но если вы хотите обновлять свою систему каждые 3–4 года (когда выходит новая основная версия RHEL), чтобы воспользоваться новейшими инструментами и улучшениями, прямо сейчас вы не сможете этого сделать, не пройдя через все хлопоты по настройке с нуля.
Будем надеяться, что команда Rocky учтет этот момент в будущем.