28.04.2022

10 простых шагов: мигрируем с CentOS 8 на RockyLinux или AlmaLinux

server one

Прекращение поддержки CentOS 8 и переход к модели непрерывных обновлений в CentOS Stream заставили корпоративных заказчиков искать альтернативные решения. Предлагаем вашему вниманию пошаговую инструкцию по переходу на RockyLinux или AlmaLinux — популярные бесплатные дистрибутивы, бинарно совместимые с RedHat Enterprise Linux (RHEL).

HOSTKEY

Системы с коротким жизненным циклом или развивающиеся по модели rolling release непригодны для создания развитой корпоративной инфраструктуры: в них слишком многое может пойти не так после очередного обновления. Помимо CentOS существуют и другие дистрибутивы Linux с длительной поддержкой (к примеру, Ubuntu Server LTS), но миграция на них потребует серьезных трудозатрат. Если у вас много физических и виртуальных машин, лучше выбрать бинарно совместимое с RHEL решение, чтобы переход с CentOS 8 оказался простым и безболезненным.

Мы остановились на бесплатных серверных дистрибутивах AlmaLinux и RockyLinux: первый создан компанией CloudLinux, а второй развивает создатель CentOS Грегори Курцер вместе с сообществом разработчиков. Поддерживать их планируют в течение 10 лет, т.е. весь цикл разработки оригинального RHEL 8.

Полная бинарная совместимость означает, что установленные в CentOS 8 или RHEL 8 прикладные программы продолжат работать на AlmaLinux и Rocky Linux без изменений — это отличная альтернатива, если вы не хотите платить за поддержку RedHat, в которую, напомним, входит и получение бинарных обновлений (бесплатно распространяются только исходные тексты). Ниже представлен вариант миграции, использующийся в компании HOSTKEY.

Арендуйте выделенные и виртуальные серверы с моментальным деплоем в надежных дата-центрах класса TIER III в Москве и Нидерландах. Принимаем оплату за услуги HOSTKEY в Нидерландах в рублях на счет российской компании. Оплата с помощью банковских карт, в том числе и картой МИР, банковского перевода и электронных денег.

Шаг 1. Выполните резервное копирование

Перед началом миграции лучше сделать резервную копированию всего сервера или хотя бы важных каталогов. В отлаженных инфраструктурах процесс автоматизирован (есть рабочие процедуры Backup & Deploy), но во время миграции на другой дистрибутив стоит соблюдать максимальную осторожность.

Шаг 2. Проверьте соответствие версий

Перед запуском скрипта миграции следует проверить версию CentOS, которая должна быть не ниже 8.3. В противном случае придется прописать адреса зеркал с пакетами для обновления и выполнить команду dnf update -y (образы CentOS можно скачать по ссылке). Система обновится до версии CentOS Linux release 8.5.2111.

В ином случае возникнет ошибка:


Error

Шаг 3. Добавьте зеркала, если ваша система младше CentOS 8.3

Если вы давно не обновляли ОС, необходимо добавить архивные зеркала для CentOS 8, используя следующие команды:

AlmaLinux:

sudo sed -i -e "s|mirrorlist=|#mirrorlist=|g" /etc/yum.repos.d/CentOS-*
sudo sed -i -e "s|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g" /etc/yum.repos.d/CentOS-*

RockyLinux:

sudo sed -i -e "s|mirrorlist=|#mirrorlist=|g" /etc/yum.repos.d/CentOS-*
sudo sed -i -e "s|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g" /etc/yum.repos.d/CentOS-*

Шаг 4. Скачайте скрипт для миграции

AlmaLinux:

cd /tmp
curl -O https://raw.githubusercontent.com/AlmaLinux/almalinux-deploy/master/almalinux-deploy.sh

RockyLinux:

cd /tmp
curl -O https://raw.githubusercontent.com/rocky-linux/rocky-tools/main/migrate2rocky/migrate2rocky.sh

Шаг 5. Предоставьте скрипту права на выполнение (execute)

AlmaLinux:

chmod +x almalinux-deploy.sh

RockyLinux:

chmod +x migrate2rocky.sh

Шаг 6. Запустите скрипт загрузки и установки пакетов

AlmaLinux:

sudo bash almalinux-deploy.sh

RockyLinux:

sudo bash migrate2rocky.sh -r

Ниже показан пример предварительной проверки перед миграцией. Проблем с зависимостями пакетов и версией операционной системы не возникает:


OK

Шаг 7. Завершите установку и перезагрузите компьютер

В случае успешной установки появится следующее сообщение:

AlmaLinux:


RockyLinux:


После завершения установки следует перезагрузить систему командой reboot. В случае успешной миграции новый дистрибутив будет присутствовать в списке на этапе загрузки системы и выбора ядра.

AlmaLinux:


Новый дистрибутив

RockyLinux:


Новый дистрибутив

Шаг 8. Проверьте отсутствие ошибок

После перезагрузки системы необходимо проверить отсутствие ошибок, а также наименование и версию системы:

cat /etc/redhat-release #позволяет проверить переход на AlmaLinux и RockyLinux
dmesg #проверка аппаратных ошибок
journalctl #ошибки в системе

Шаг 9. Проверьте работу сервисов

После завершения миграции стоит проверить корректность работы всех настроенных сервисов и установленного прикладного ПО. Обычно сбоев не возникает, но могут быть исключения.

Шаг 10. Дополнительные действия для Rocky Linux

Если переносится система с графическим интерфейсом, то при миграции с CentOS на Rocky Linux могут возникнуть проблемы (скрипт Alma более надежен). В процессе выполнения сценария возможны проблемы с установкой пакетов, при этом старые пакеты CentOS будут испорчены.

Необходимо проверить версию системы описанными ниже командами:

cat /etc/os-release
cat /etc/redhat-release

Если возникла ошибка, будет выведено следующее сообщение:

Unable to detect release version (use '--releasever' to specify release version

Аналогичное сообщение вы получите при попытке выполнить команду:

dnf makecache & dnf update

Решить проблему поможет частичный откат системы CentOS с установкой пакетов из архивного зеркала vault. Необходимо скачивать пакеты установленной у вас версии дистрибутива (см. шаг 2). В нашем случае использовалась CentOS version 8.5.2111.

Выполните следующую последовательность команд:

cd /tmp
wget https://vault.centos.org/centos/8/BaseOS/x86_64/os/Packages/centos-linux-release-8.5-1.2111.el8.noarch.rpm
wget https://vault.centos.org/centos/8/BaseOS/x86_64/os/Packages/centos-linux-repos-8-3.el8.noarch.rpm
wget https://vault.centos.org/centos/8/BaseOS/x86_64/os/Packages/centos-gpg-keys-8-3.el8.noarch.rpm
rpm -ivh ./centos-gpg-keys-8-3.el8.noarch.rpm  --force
rpm -ivh ./centos-linux-release-8.5-1.2111.el8.noarch.rpm ./centos-linux-repos-8-3.el8.noarch.rpm --force

Перед выполнением скрипта миграции предварительно установите все зависимости. Мы получили список из 6 проблемных пакетов:

Error: Check discovered 6 problem(s)
anaconda-gui-33.16.5.6-1.el8.x86_64 has missing requires of system-logos
firefox-91.4.0-1.el8_5.x86_64 has missing requires of redhat-indexhtml
gdm-1:40.0-15.el8.x86_64 has missing requires of system-logos
gnome-session-3.28.1-13.el8.x86_64 has missing requires of system-backgrounds
gnome-session-3.28.1-13.el8.x86_64 has missing requires of system-logos
plymouth-graphics-libs-0.9.4-10.20200615git1e36e30.el8.x86_64 has missing requires of system-logos

Пришлось установить 3 пакета:

yum install system-logos
yum install system-backgrounds
yum install redhat-indexhtml

После выполнения указанных действий по устранению проблем с зависимостями необходимо повторить процедуру начиная с шага 6.

Выводы

Процесс миграции с CentOS 8 на AlmaLinux не требует значительных затрат времени, а также позволяет получить стабильную ОС без изменений инфраструктуры. При переходе на Rocky Linux могут возникнуть легко разрешимые проблемы. Оба дистрибутива-клона основаны на свободно распространяемых исходных текстах RHEL 8, а все отличие между ними сводится к поддержке. Наличие корпоративного разработчика AlmaLinux может насторожить часть сообщества, несмотря на заверения представителей CloudLinux в независимости проекта.

Арендуйте выделенные и виртуальные серверы с моментальным деплоем в надежных дата-центрах класса TIER III в Москве и Нидерландах. Принимаем оплату за услуги HOSTKEY в Нидерландах в рублях на счет российской компании. Оплата с помощью банковских карт, в том числе и картой МИР, банковского перевода и электронных денег.

Дригие статьи

11.05.2022

Интеграция FreeIPA с Active Directory

Рассказываем, как мы интегрировали FreeIPA с Active Directory, чтобы управлять офисными машинами с Windows и оборудованием Cisco Systems.

11.05.2022

Apache Guacamole и взаимодействие с API: реальный кейс использования oVirt

Рассказываем как удаленно управлять оборудованием Dell с помощью встроенной в DRAC консоли VNC.

10.05.2022

Тестируем «космические» технологии: насколько эффективно пассивное охлаждение серверов?

Специалисты HOSTKEY завершили пилотное внедрение альтернативной разработки компании «Теркон» — создателя систем охлаждения для космических аппаратов.

21.04.2022

Linux LiveCD на базе CentOS и техники его использования в PXE-загрузке через Foreman

Рассказываем, как мы создали собственный LiveCD на основе CentOS.

20.04.2022

Реализация простой HTML5-панели управления серверами с поддержкой IPMI

Рассказываем как настроить специализированные контроллеры, которые позволяют управлять серверами без ОС, как если бы вы сидели за физической консолью.

HOSTKEY Выделенные серверы в Европе, России и США Готовые выделенные серверы и серверы индивидуальных конфигураций на базе процессоров AMD, Intel, карт GPU, Бесплатной защитой от DDoS -атак и безлимитный соединением на скорости 1 Гбит/с 30
4.3 48 48
Upload