订阅内容

Seamlessly upgrading an operating system in-place can be one of the biggest challenges due to potential package incompatibility, kernel customizations, or outdated and unsupported modules. This is where a structured tool can make all the difference, guiding the user through the process, from pre-requisite checks to the actual upgrade, along with helpful suggestions and insightful analysis.

An overview of the Leapp tool

Leapp is the tool offered in Red Hat Enterprise Linux (RHEL) to support you through an in-place upgrade of a system from supported versions of RHEL:

  • RHEL 7.9 to RHEL 8.6/8.8/8.9
  • RHEL 8.6 to RHEL 9.0
  • RHEL 8.7 to RHEL 9.2
  • RHEL 8.8 to RHEL 9.3

What makes Leapp unique is the ability to provide the user with pre-upgrade analysis capabilities that can run on your servers before the upgrade. This test can reveal inconsistencies that could cause issues or prevent an upgrade. During the pre-upgrade analysis, many checks are performed:

  • Package compatibility
  • Repositories support across versions
  • Configuration conflicts for base packages and services
  • Incompatible and unsupported kernel modules
  • Bootloader inconsistencies

The Leapp tool is also available for at-scale pre-upgrade and upgrade tasks in Red Hat Satellite. A specific application to view and manage pre-upgrade reports is available in the RHEL web console.

Performing a pre-analysis with Leapp

Assume you've just migrated from CentOS Linux 7 to RHEL 7.9, and you now want to upgrade your system to RHEL 8.9.

As I mentioned above, Leapp is included in the base repositories for RHEL as a package. Install it and its dependencies:

$ sudo yum install leapp

To view and interact with the report, you must also install and enable the RHEL web console and the  extension for Leapp:

$ sudo  yum install cockpit cockpit-leapp

Next, enable the web console so that it can be accessed on port 9090 (adjust your firewall settings as necessary):

$ sudo systemctl enable cockpit.socket cockpit

Then reboot your system:

$ sudo reboot

Once all the packages are in place, you're ready to run the report:

$ sudo leapp preupgrade --target 8.9

After a couple of minutes, a summary is displayed:

===============
REPORT OVERVIEW
===============
Upgrade has been inhibited due to the following problems:
1. Leapp detected loaded kernel drivers which have been removed in RHEL 8. Upgrade cannot proceed.
HIGH and MEDIUM severity reports:
1. Packages available in excluded repositories will not be installed
2. GRUB2 core will be automatically updated during the upgrade
3. Packages not signed by Red Hat found on the system
4. Difference in Python versions and support in RHEL 8
5. Module pam_pkcs11 will be removed from PAM configuration
6. chrony using default configuration

Reports summary:
Errors: 0
Inhibitors: 1
HIGH severity reports: 4
MEDIUM severity reports: 2
LOW severity reports: 3
INFO severity reports: 4

Before continuing consult the full 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 OVERVIEW
======================

Dedicated report files are generated in the /var/log/leapp directory to review, but you've installed and enabled the RHEL web console so you can view them rendered.

Reading the pre-upgrade analysis report

In a web browser, navigate to https://yourserverhost:9090 and log in. The latest pre-upgrade report is filed under the Upgrade Report section of the UI.

Upgrade Report

 

Based on your actual system configuration, your results may be different, but in general, this is a good example of a detailed report. It includes:

  • The type of check performed, and any problems detected
  • A risk factor associated with the entry (for example, incompatible packages, version drifts, unsupported or removed features, configurations, and modules)
  • A description of the issue, how to resolve it, and whether it is a blocker to the upgrade

Take a look at what the report suggests for the Inhibitor issue that was detected. Click on the entry to open a window with a description and impacted entries:

Upgrade Report section of the UI

 

In this example, specific device drivers that are not present in RHEL8 are detected. In this case, you could proceed with applying the fix. In other cases, where a resolution is not present, or the reported information is not impacting your workloads and system, it could be enough to acknowledge them.

Once everything is taken care of, you're able to run the upgrade.

Conclusion

Leveraging the Leapp pre-upgrade analysis tool can streamline and mitigate risk during your RHEL upgrade process. By providing comprehensive checks and actionable insights, it empowers users to address potential issues proactively, providing a smoother transition to new RHEL versions. Let Leapp navigate you through uncertainties and optimize your system upgrades!


关于作者

Alessandro Rossi is an EMEA Senior Specialist Solution Architect for Red Hat Enterprise Linux with a passion for cloud platforms and automation.

Alessandro joined Red Hat in 2021, but he's been working in the Linux and open source ecosystem since 2012. He's done instructing and consulting for Red Hat and delivered training on Red Hat Enterprise Linux, Red Hat Ansible Automation Platform and Red Hat OpenShift, and has supported companies during solutions implementation.

Read full bio
UI_Icon-Red_Hat-Close-A-Black-RGB

按频道浏览

automation icon

自动化

有关技术、团队和环境 IT 自动化的最新信息

AI icon

人工智能

平台更新使客户可以在任何地方运行人工智能工作负载

open hybrid cloud icon

开放混合云

了解我们如何利用混合云构建更灵活的未来

security icon

安全防护

有关我们如何跨环境和技术减少风险的最新信息

edge icon

边缘计算

简化边缘运维的平台更新

Infrastructure icon

基础架构

全球领先企业 Linux 平台的最新动态

application development icon

应用领域

我们针对最严峻的应用挑战的解决方案

Original series icon

原创节目

关于企业技术领域的创客和领导者们有趣的故事