mrjoshuap.leapp

ansible-leapp

Este rol de Ansible intenta realizar una actualización automatizada en lugar de los sistemas basados en EL, principalmente Red Hat Enterprise Linux.

Realiza las siguientes tareas de alto nivel:

  • Validar requisitos y condiciones previas
  • Preparar un sistema para la actualización
  • Generar informe preactualización de leapp
  • Resolver problemas comunes de actualización (deshabilitado por defecto)
  • Realizar la actualización (deshabilitado por defecto)
  • Verificar el estado posterior a la actualización (deshabilitado por defecto)

Por defecto, este rol no realizará la actualización real. Está destinado a preparar el sistema y generar un informe preactualización que debe ser revisado. Si te sientes con suerte, también puedes hacer que intente realizar la actualización.

TODO

  • Implementar la verificación posterior a la actualización (tasks/verify.yml)

Referencias

Utilicé los siguientes documentos como referencia:

Variables del Rol

Las variables que modifican el comportamiento de este rol se declaran en defaults/main.yml

# Proporcionar una lista de IDs de repositorios que existan en /etc/yum.repos.d
# Predeterminado []
leapp_custom_repositories: []

# Especificar un dispositivo grub, generalmente no requerido para la mayoría de las instalaciones
leapp_grub_device: '/boot'

# Saltar Red Hat Subscription Manager? Predeterminado no
leapp_skip_rhsm: no

# Saltar las verificaciones previas de validación? Predeterminado no
leapp_skip_validate: no

# Saltar las tareas de preparación? Predeterminado no
leapp_skip_prepare: no

# Saltar la instalación de cockpit? Predeterminado no
leapp_skip_prepare_cockpit_install: no

# Saltar la instalación de paquetes? Predeterminado no
leapp_skip_prepare_package_install: no

# Saltar las actualizaciones reales de paquetes? Predeterminado sí
leapp_skip_prepare_update: yes

# Saltar el reinicio después de los cambios en las actualizaciones de paquetes? Predeterminado no
leapp_skip_prepare_update_reboot: no

# Saltar la preactualización de leapp? Predeterminado sí
leapp_skip_preupgrade: yes

# Saltar la eliminación de informes anteriores? Predeterminado no
leapp_skip_preupgrade_cleanup: no

# Saltar la remediación de problemas comunes? Predeterminado sí
leapp_skip_remediate: yes

# Saltar la actualización real de leapp? Predeterminado sí
leapp_skip_upgrade: yes

# Cuánto tiempo esperar (en segundos) para reiniciar después de la actualización? Predeterminado 1200
leapp_reboot_timeout: 1200

Dependencias

No hay dependencias para usar este rol; sin embargo, este rol asume que has implementado un entorno operativo estándar que proporciona:

  • Red Hat Enterprise Linux 7
  • Sistema con derecho a RHSM o Satellite
  • Repositorios configurados y habilitados para las últimas actualizaciones, específicamente para rhel-7-server-rpms y rhel-7-server-extras-rpms

Además, también debes descargar los archivos de datos requeridos adicionales (cambios de paquetes RPM y mapeo de repositorios RPM) adjuntos al Artículo de la Base de Conocimientos y colocarlo en el directorio 'files' en el mismo directorio que el playbook que incluye este rol.

Ejemplo de Playbook

A continuación, se muestra un simple playbook que realizará los comportamientos predeterminados hasta realizar la actualización real:

---

- nombre: Realizar una actualización en el lugar de un sistema EL
  hosts: all
  become: yes

  vars:
    # Proporcionar una lista de IDs de repositorios que existan en /etc/yum.repos.d
    # Predeterminado []
    leapp_custom_repositories: []

    # Saltar Red Hat Subscription Manager? Predeterminado no
    leapp_skip_rhsm: no

    # Saltar las verificaciones previas de validación? Predeterminado no
    leapp_skip_validate: no

    # Saltar las tareas de preparación? Predeterminado no
    leapp_skip_prepare: no

    # Saltar la instalación de cockpit? Predeterminado no
    leapp_skip_prepare_cockpit_install: no

    # Saltar la instalación de paquetes? Predeterminado no
    leapp_skip_prepare_package_install: no

    # Saltar las actualizaciones reales de paquetes? Predeterminado sí
    leapp_skip_prepare_update: yes

    # Saltar la preactualización de leapp? Predeterminado no
    leapp_skip_preupgrade: no

    # Saltar la eliminación de informes anteriores? Predeterminado no
    leapp_skip_preupgrade_cleanup: no

    # Saltar la actualización real de leapp? Predeterminado sí
    leapp_skip_upgrade: yes

    # Cuánto tiempo esperar (en segundos) para reiniciar después de la actualización? Predeterminado 1200
    leapp_reboot_timeout: 1200

  roles:
    - mrjoshuap.leapp

Licencia

GPL-2.0-o-later

Información del Autor

Joshua Preston es arquitecto de soluciones en Red Hat, especializado en tecnologías de Plataforma y Gestión.

Acerca del proyecto

An Ansible role that attempts an inplace upgrade of EL7 to EL8 using LEAPP

Instalar
ansible-galaxy install mrjoshuap.leapp
Licencia
gpl-2.0
Descargas
105
Propietario
I am a passionate open source individual. I also love me some automation, embedded use-cases and a fill of happy source codes.