Migrar CentOS 7 a AlmaLinux 8, CentOS 8, Rocky Linux 8
Actualice CentOS 7 a AlmaLinux 8, CentOS Stream 8, Oracle Linux 8 y Rocky Linux 8
Como ya sabrá, no fue posible migrar entre versiones principales de derivados de RHEL. Es decir, no puede actualizar directamente desde la versión CentOS 7.x a la versión CentOS 8.x. La única forma era una nueva instalación. ¡Ya no! Ahora puede migrar fácilmente desde CentOS 7.x a cualquier 8.x de su elección utilizando la herramienta ELevate. Esta guía explica cómo migrar CentOS 7 a AlmaLinux 8, CentOS Stream 8, Oracle Linux 8 y Rocky Linux 8 utilizando la herramienta AlmaLinux ELvate.
¿Qué es ELevate?
ELevate es una herramienta de migración de código abierto desarrollada por el equipo de AlmaLinux. Le permite migrar fácil y sin problemas entre las principales versiones de distribuciones basadas en RHEL desde la versión 7.x a la 8.x.
ELevate combina el marco Leapp de Red Hat con una biblioteca y un servicio creados por la comunidad para el conjunto de metadatos de migración necesarios.
Actualmente admite la migración de CentOS 7 a los siguientes sistemas operativos:
- AlmaLinux OS 8
- CentOS corriente 8
- Oráculo Linux 8
- Linux rocoso 8
Las migraciones se pueden realizar in situ, lo que significa que se conservan los datos y los archivos de configuración. En otras palabras, todas las aplicaciones, configuraciones y datos instalados permanecerán intactos. Sin embargo, RECOMENDAMOS MUCHO a los usuarios que hagan una copia de seguridad de los datos importantes antes de iniciar la migración.
ELevate es un programa de código abierto, publicado bajo la licencia Apache 2.0.
Para aquellos que se preguntan, las letras "EL" de ELevate significan Enterprise Linux.
Cosas para recordar antes de iniciar la migración a CentOS 7
- Como se indicó anteriormente, se recomienda encarecidamente realizar una copia de seguridad de sus datos y configuraciones importantes.
- No se admite la migración en vivo. Su sistema se reiniciará dos veces. Asegúrese de que no se estén ejecutando trabajos importantes (por ejemplo, copias de seguridad programadas).
- ELevate aún está en desarrollo. Por lo tanto, le sugiero que lo pruebe a fondo en un sistema virtual o en un entorno sandbox antes de probarlo en producción.
Probé la herramienta ELevate en una máquina virtual CentOS 7 recién instalada. La migración fue fluida y sin errores. Si encuentra algún problema, infórmelo al Rastreador de errores de AlmaLinux y/o al Canal de migración de chat de AlmaLinux.
Actualizar el sistema CentOS 7
Asegúrese de estar ejecutando la última rama de CentOS 7.x. De lo contrario, actualice su sistema CentOS usando el comando:
sudo yum update
sudo yum upgrade
Reinicie su sistema para aplicar los cambios:
sudo reboot
Verifique la versión de CentOS 7 actualmente instalada usando el comando:
$ cat /etc/centos-release
CentOS Linux release 7.9.2009 (Core)
$ cat /etc/os-release
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"
CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"
Verifique la versión de CentOS
Como puede ver, mi sistema se ejecuta con la versión CentOS 7.9. Esta es la última versión de la rama 7.x.
Migre CentOS 7 a AlmaLinux 8, CentOS 8, Rocky Linux 8 y Oracle Linux 8
Paso 1: Instalar ELevate
Instale el paquete elevate-release
en su sistema CentOS 7 usando el comando:
sudo yum install http://repo.almalinux.org/elevate/elevate-release-latest-el7.noarch.rpm
Instalar el programa ELevate en CentOS 7
Paso 2: instalar Leapp y datos de migración
El paquete elevate-release
proporciona la utilidad Leapp y los datos necesarios para migrar Enterprise Linux 7.x a cualquier versión Enterprise Linux 8.x de nuestra elección.
Dependiendo de la distribución que desee actualizar, deberá instalar cualquiera de los siguientes paquetes:
- leapp-data-almalinux
- leapp-data-centos
- Leapp-data-oraclelinux
- salto-datos-rocky
Por ejemplo, si desea migrar CentOS 7 a AlmaLinux 8, necesita instalar los siguientes paquetes:
sudo yum install -y leapp-upgrade leapp-data-almalinux
Para migrar CentOS 7 a CentOS 8, instale los siguientes paquetes:
sudo yum install -y leapp-upgrade leapp-data-centos
Para migrar CentOS 7 a Oracle Linux 8, instale los siguientes paquetes:
sudo yum install -y leapp-upgrade leapp-data-oraclelinux
Para migrar CentOS 7 a Rocky Linux 8, instale los siguientes paquetes:
sudo yum install -y leapp-upgrade leapp-data-rocky
Ahora hemos instalado el paquete leap-upgrade
y los datos de migración para el sistema operativo que queremos actualizar.
A los efectos de esta guía, voy a actualizar CentOS 7 a AlmaLinux 8.
Actualice CentOS 7 a AlmaLinux 8
Paso 3: iniciar la comprobación previa a la actualización
Luego ejecute el siguiente comando para verificar si la actualización es posible o no:
sudo leapp preupgrade
Esto realizará una serie de acciones y verificará si es posible realizar la actualización.
==> Processing phase `configuration_phase`
====> * ipu_workflow_config
IPU workflow config actor
==> Processing phase `FactsCollection`
====> * scanmemory
Scan Memory of the machine.
====> * source_boot_loader_scanner
Scans the boot loader configuration on the source system.
.
.
.
============================================================
UPGRADE INHIBITED
============================================================
Upgrade has been inhibited due to the following problems:
1. Inhibitor: Detected loaded kernel drivers which have been removed in RHEL 8. Upgrade cannot proceed.
2. Inhibitor: Multiple devel kernels installed
3. Inhibitor: Possible problems with remote login using root account
4. Inhibitor: Missing required answers in the answer file
Consult the pre-upgrade report for details and possible remediation.
============================================================
UPGRADE INHIBITED
============================================================
Debug output written to /var/log/leapp/leapp-preupgrade.log
============================================================
REPORT
============================================================
A report has been generated at /var/log/leapp/leapp-report.json
A report has been generated at /var/log/leapp/leapp-report.txt
============================================================
END OF REPORT
============================================================
Answerfile has been generated at /var/log/leapp/answerfile
Iniciar verificación previa a la actualización
Al final de la verificación previa a la actualización, la utilidad Leapp generará un informe en el archivo /var/log/leapp/leapp-report.txt
. Este archivo contiene posibles problemas y soluciones recomendadas. No se instalarán paquetes rpm en esta fase.
ADVERTENCIA:
La verificación previa a la actualización fallará si el CentOS 7 predeterminado no cumple con todos los requisitos para la migración. En ese caso, debe solucionar todos los problemas y volver a intentarlo.
Las siguientes correcciones del archivo /var/log/leapp/leapp-report.txt
son obligatorias, pero también puedes revisar el resto si es necesario.
En mi caso, solucioné los siguientes problemas:
sudo rmmod pata_acpi
echo PermitRootLogin yes | sudo tee -a /etc/ssh/sshd_config
sudo leapp answer --section remove_pam_pkcs11_module_check.confirm=True
También tuve que eliminar los desarrollos adicionales del kernel.
Enumere los kernels instalados en CentOS:
$ rpm -qa kernel
kernel-3.10.0-1160.45.1.el7.x86_64
kernel-3.10.0-1160.42.2.el7.x86_64
Como puede ver arriba, actualmente hay dos núcleos instalados en mi sistema.
Elimine el kernel antiguo y los desarrollos del kernel y mantenga solo el kernel actualmente activo usando el comando:
sudo package-cleanup --oldkernels --count=1
Una vez que haya solucionado todos los problemas, ejecute el siguiente comando para migrar CentOS 7 a cualquier Enterprise Linux 8.x de su elección:
sudo leapp upgrade
Actualice CentOS 7 a derivados de RHEL 8 como AlmaLinux, CentOS Stream, Oracle y Rocky Linux
Una vez que se complete la actualización, reinicie su sistema:
sudo reboot
Aparecerá una nueva entrada llamada ELevate-Upgrade-Initramfs
en el menú de GRUB. El sistema se iniciará automáticamente. Puede ver cómo va el proceso de actualización en la consola.
Migrando CentOS 7 a AlmaLinux 8
El sistema se reiniciará automáticamente una vez que se complete la actualización. Las entradas del menú de GRUB se actualizarán automáticamente según el sistema operativo.
Inicie sesión en el sistema y verifique que el sistema operativo actual sea el que necesita.
cat /etc/os-release
Salida de muestra:
NAME="AlmaLinux"
VERSION="8.4 (Electric Cheetah)"
ID="almalinux"
ID_LIKE="rhel centos fedora"
VERSION_ID="8.4"
PLATFORM_ID="platform:el8"
PRETTY_NAME="AlmaLinux 8.4 (Electric Cheetah)"
ANSI_COLOR="0;34"
CPE_NAME="cpe:/o:almalinux:almalinux:8.4:GA"
HOME_URL="https://almalinux.org/"
DOCUMENTATION_URL="https://wiki.almalinux.org/"
BUG_REPORT_URL="https://bugs.almalinux.org/"
ALMALINUX_MANTISBT_PROJECT="AlmaLinux-8"
ALMALINUX_MANTISBT_PROJECT_VERSION="8.4"
Verifique la versión de AlmaLinux
¡Excelente! Hemos actualizado con éxito CentOS 7 a la versión AlmaLinux 8.4.
Borrar caché (opcional)
Todos los paquetes descargados durante la migración se guardarán en caché hasta la próxima transacción exitosa. Puede eliminar paquetes almacenados en caché ejecutando el siguiente comando como usuario sudo
o root
:
sudo dnf clean packages
Actualizar nombre de host
Finalmente, actualice el nombre de host y el nombre de usuario para que coincidan con AlmaLinux.
sudo hostnamectl set-hostname almalinux8
¡Todo listo! Reinicie su sistema para que los cambios surtan efecto.
Conclusión
En esta guía, hemos visto cómo actualizar CentOS 7 a derivados de RHEL 8 como AlmaLinux, CentOS Stream, Oracle Linux y Rocky Linux con la ayuda del proyecto ELevate de los desarrolladores de AlmaLinux.
¡No esperaba que la migración de CentOS 7 a derivados de RHEL 8 fuera tan fácil! Los desarrolladores de AlmaLinux han hecho un trabajo encomiable. Ya sea una corrección de errores o una adición de funciones, rápidamente intervienen y trabajan en ello. Fueron los primeros en lanzar una alternativa estable a CentOS 8. También proporcionaron un script Bash para convertir fácilmente los sistemas CentOS 8 existentes a AlmaLinux 8. Para obtener más detalles, consulte la siguiente guía.
- Migrar a AlmaLinux desde CentOS 8 usando Almalinux-deploy Script
Recurso:
- AlmaLinux ELevate