Chapter 2. Preparing a RHEL 7 system for the upgrade
This procedure describes the steps that are necessary before performing an in-place upgrade to RHEL 8 using the
If you do not plan to use Red Hat Subscription Manager during the upgrade process, follow instructions in Upgrading to RHEL 8 without Red Hat Subscription Manager.
- The system meets conditions listed in Planning an upgrade.
Ensure your system has been successfully registered to the Red Hat Content Delivery Network (CDN) or Red Hat Satellite using the Red Hat Subscription Manager.Important
If your system is registered to Satellite Server, ensure that Satellite meets the following conditions:
- Satellite is on a version in full or maintenance support. For more information, see Red Hat Satellite Product Life Cycle.
- Satellite has a subscription manifest with RHEL 8 repositories imported. For more information, see the Managing Subscriptions chapter in the Content Management Guide for the particular version of Red Hat Satellite, for example, for version 6.8.
All required repositories are enabled and synchronized with the latest updates and published on Satellite. For example, for the Intel architecture without an Extended Update Support (EUS) subscription, enable at minimum the following repositories:
Red Hat Enterprise Linux 7 Server (RPMs)
x86_64 7Server or x86_64 7.9
Red Hat Enterprise Linux 7 Server - Extras (RPMs)
Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs)
Red Hat Enterprise Linux 8 for x86_64 - BaseOS (RPMs)
The content host belongs to one of the following:
- A Content View containing the above RHEL 7 and RHEL 8 repositories.
The Default Organization View Content View and the Library life cycle environment.
Verify that you have the Red Hat Enterprise Linux Server subscription attached:
# subscription-manager list --installed +-------------------------------------------+ Installed Product Status +-------------------------------------------+ Product Name: Red Hat Enterprise Linux Server Product ID: 69 Version: 7.9 Arch: x86_64 Status: Subscribed
You should see Server in the product name and Subscribed as the status.
Ensure you have appropriate repositories enabled. The following commands list repositories for the 64-bit Intel architecture; for other architectures, see RHEL 7 repositories.
Enable the Base repository:
# subscription-manager repos --enable rhel-7-server-rpms
Enable the Extras repository where
Leappand its dependencies are available:
# subscription-manager repos --enable rhel-7-server-extras-rpms
Set the Red Hat Subscription Manager to consume the latest RHEL 7 content:
# subscription-manager release --unset
- Optional: If you want to use custom repositories, configure them per instructions in Configuring custom repositories.
If you use the
yum-plugin-versionlockplug-in to lock packages to a specific version, clear the lock by running:
# yum versionlock clear
See How to restrict yum to install or upgrade a package to a fixed specific package version? for more information.
Ensure you have the system locale set to
$ cat /etc/locale.conf
If the locale is different, follow instructions in How to change system locale on RHEL7?.
If you are upgrading using Red Hat Update Infrastructure (RHUI) on a public cloud, enable required RHUI repositories and install required RHUI packages to ensure your system is ready for upgrade.
# yum-config-manager --enable rhui-client-config-server-7 # yum-config-manager --enable rhel-7-server-rhui-extras-rpms # yum -y install rh-amazon-rhui-client leapp-rhui-aws
For Microsoft Azure:
# yum-config-manager --enable rhui-microsoft-azure-rhel7 # yum-config-manager --enable rhui-rhel-7-server-rhui-extras-rpms # yum -y install rhui-azure-rhel7 leapp-rhui-azureNote
If you locked the Azure virtual machine (VM) to a minor release, remove the version lock. For more information, see Switch a RHEL 7.x VM back to non-EUS.
- If you manage containers in Docker, recreate those containers with the appropriate container images using Podman and then attach any in-use volumes. For more information, see How do I migrate my Docker containers to Podman prior to moving from Red Hat Enterprise Linux 7 to Red Hat Enterprise Linux 8?
Update all packages to the latest RHEL 7 version:
# yum update
Reboot the system:
# yum install leapp leapp-repository
Note that currently you need version 0.12.1 or later of the
leapppackage and version 0.14.0 or later of the
Ensure you have access to the latest version of additional required data files (RPM package changes, RPM repository mapping, unsupported drivers, and unsupported PCIs).
- If you are using RHSM for the upgrade, the system has access to cloud.redhat.com, and you have not downloaded an earlier version of the required data files, no further action is required from you. The data files are automatically downloaded from cloud.redhat.com. This also applies to developer subscriptions.
Download the data files attached to the Knowledgebase article Data required by the Leapp utility for an in-place upgrade from RHEL 7 to RHEL 8 and place them in the
/etc/leapp/files/directory. This is necessary for a successful upgrade. Note that currently you need data files from the
leapp-data14.tar.gzarchive or later. This is necessary for a successful upgrade in the following scenarios:
- You are upgrading on a public cloud using RHUI. If you do not have a Red Hat subscription or Red Hat Customer Portal account, create a no-cost RHEL developer subscription so that you can access the Knowledgebase article and download required data packages. For more information, see How do I get a no-cost Red Hat Enterprise Linux Developer Subscription or renew it?
- Your system does not have internet access.
- You are using RHSM for the upgrade and you previously downloaded an older version of the required data files but did not perform the upgrade, for example to create automated scripts. You can also delete your older version of the data files to initiate the automatic download of the latest file version.
- Temporarily disable antivirus software to prevent the upgrade from failing.
- Ensure you have any configuration management (such as Salt, Chef, Puppet, Ansible) disabled or adequately reconfigured to not attempt to restore the original RHEL 7 system.
Ensure your system does not use more than one Network Interface Card (NIC) with a name based on the prefix used by the kernel (
eth). For instructions on how to migrate to another naming scheme before an in-place upgrade to RHEL 8, see How to perform an in-place upgrade to RHEL 8 when using kernel NIC names on RHEL 7.
- Ensure you have a full system backup or a virtual machine snapshot. You should be able to get your system to the pre-upgrade state if you follow standard disaster recovery procedures within your environment. For example, you can use the Relax-and-Recover (ReaR) utility. For more information, see the ReaR documentation and What is Relax and Recover (ReaR) and how can I use it for disaster recovery?. Alternatively, you can use LVM snapshots, or RAID splitting. In case of upgrading a virtual machine, you can create a snapshot of the whole VM.
If you are upgrading with Red Hat Subscription Manager and have disabled the
subscription-managerplug-in in yum or yum4, re-enable the plug-in. For more information, see Enabling, configuring, and disabling yum plug-ins.
To determine whether the
subscription-managerplug-in is enabled in yum, run the following command:
# yum 2>&1 | head
Review the generated list of
Loaded pluginsand determine whether