mrjoshuap.leapp
ansible-leapp
Dieses Ansible-Role versucht, ein automatisches In-Place-Upgrade von EL-basierten Systemen, hauptsächlich von Red Hat Enterprise Linux, durchzuführen.
Es führt die folgenden Hauptaufgaben aus:
- Überprüfen der Voraussetzungen und Anforderungen
- Vorbereiten eines Systems für das Upgrade
- Erstellen eines Leapp-Vorabberichts
- Beheben häufiger Upgrade-Probleme (standardmäßig deaktiviert)
- Durchführen des Upgrades (standardmäßig deaktiviert)
- Überprüfen des Zustands nach dem Upgrade (standardmäßig deaktiviert)
Standardmäßig führt diese Rolle nicht das tatsächliche Upgrade durch. Sie ist dazu gedacht, das System vorzubereiten und einen Vorabbericht zu erstellen, der überprüft werden sollte. Wenn Sie sich mutig fühlen, können Sie auch versuchen, das Upgrade durchzuführen.
TODO
- Implementierung der Überprüfung nach dem Upgrade (tasks/verify.yml)
Referenzen
Ich habe die folgenden Dokumente als Referenz verwendet:
- https://developers.redhat.com/products/rhel/download
- https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html/upgrading_from_rhel_7_to_rhel_8/index
- https://www.redhat.com/en/blog/upgrading-rhel-7-rhel-8-leapp-and-boom
- https://access.redhat.com/articles/4263361
- https://access.redhat.com/articles/3664871
Rollenvariablen
Variablen, die das Verhalten dieser Rolle ändern, sind in defaults/main.yml
deklariert.
# Geben Sie eine Liste von Repository-IDs an, die in /etc/yum.repos.d existieren
# Standard []
leapp_custom_repositories: []
# Geben Sie ein Grub-Gerät an, wird normalerweise für die meisten Installationen nicht benötigt
leapp_grub_device: '/boot'
# Red Hat Subscription Manager überspringen? Standard nein
leapp_skip_rhsm: nein
# Die Überprüfung der Validierung überspringen? Standard nein
leapp_skip_validate: nein
# Die Vorbereitungsaufgaben überspringen? Standard nein
leapp_skip_prepare: nein
# Cockpit-Installation überspringen? Standard nein
leapp_skip_prepare_cockpit_install: nein
# Paketinstallation überspringen? Standard nein
leapp_skip_prepare_package_install: nein
# Tatsächliche Paketupdates überspringen? Standard ja
leapp_skip_prepare_update: ja
# Neustart nach Änderungen an Paketupdates überspringen? Standard nein
leapp_skip_prepare_update_reboot: nein
# Leapp-Vorabprüfung überspringen? Standard ja
leapp_skip_preupgrade: ja
# Entfernen vorheriger Berichte überspringen? Standard nein
leapp_skip_preupgrade_cleanup: nein
# Beheben häufiger Probleme überspringen? Standard ja
leapp_skip_remediate: ja
# Das tatsächliche Leapp-Upgrade überspringen? Standard ja
leapp_skip_upgrade: ja
# Wie lange (in Sekunden) nach dem Upgrade auf den Neustart warten? Standard 1200
leapp_reboot_timeout: 1200
Abhängigkeiten
Für die Verwendung dieser Rolle gibt es keine Abhängigkeiten, jedoch geht diese Rolle davon aus, dass Sie eine standardisierte Betriebsumgebung implementiert haben, die Folgendes bietet:
- Red Hat Enterprise Linux 7
- System, das mit RHSM oder Satellite berechtigt ist
- Repositories, die für die neuesten Updates konfiguriert und aktiviert sind, insbesondere für
rhel-7-server-rpms
undrhel-7-server-extras-rpms
Darüber hinaus müssen Sie die erforderlichen Datendateien (Änderungen des RPM-Pakets und RPM-Repository-Abbildung) herunterladen, die im Knowledgebase-Artikel angehängt sind, und sie im Verzeichnis 'files' im selben Verzeichnis wie das Playbook, das diese Rolle enthält, ablegen.
Beispiel-Playbook
Das folgende ist ein einfaches Playbook, das die Standardverhaltensweisen bis hin zum tatsächlichen Upgrade ausführt:
---
- name: Führen Sie ein In-Place-Upgrade eines EL-Systems durch
hosts: alle
become: ja
vars:
# Geben Sie eine Liste von Repository-IDs an, die in /etc/yum.repos.d existieren
# Standard []
leapp_custom_repositories: []
# Red Hat Subscription Manager überspringen? Standard nein
leapp_skip_rhsm: nein
# Die Überprüfung der Validierung überspringen? Standard nein
leapp_skip_validate: nein
# Die Vorbereitungsaufgaben überspringen? Standard nein
leapp_skip_prepare: nein
# Cockpit-Installation überspringen? Standard nein
leapp_skip_prepare_cockpit_install: nein
# Paketinstallation überspringen? Standard nein
leapp_skip_prepare_package_install: nein
# Tatsächliche Paketupdates überspringen? Standard ja
leapp_skip_prepare_update: ja
# Leapp-Vorabprüfung überspringen? Standard nein
leapp_skip_preupgrade: nein
# Entfernen vorheriger Berichte überspringen? Standard nein
leapp_skip_preupgrade_cleanup: nein
# Das tatsächliche Leapp-Upgrade überspringen? Standard ja
leapp_skip_upgrade: ja
# Wie lange (in Sekunden) nach dem Upgrade auf den Neustart warten? Standard 1200
leapp_reboot_timeout: 1200
roles:
- mrjoshuap.leapp
Lizenz
GPL-2.0-or-later
Autoreninformation
Joshua Preston ist Lösungsarchitekt bei Red Hat und spezialisiert auf Plattform- und Managementtechnologien.
An Ansible role that attempts an inplace upgrade of EL7 to EL8 using LEAPP
ansible-galaxy install mrjoshuap.leapp