Registering RHEL 9 with RMT
This guide explains how to register and update RHEL 9 with Repository Mirroring Tool (RMT).
To register with SUSE Manager, see Registering RHEL 9 with SUSE Manager.
Copyright © 2022–2024 SUSE LLC and contributors. All rights reserved.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or (at your option) version 1.3; with the Invariant Section being this copyright notice and license. A copy of the license version 1.2 is included in the section entitled “GNU Free Documentation License”.
For SUSE trademarks, see https://www.suse.com/company/legal/. All third-party trademarks are the property of their respective owners. Trademark symbols (®, ™ etc.) denote trademarks of SUSE and its affiliates. Asterisks (*) denote third-party trademarks.
All information found in this book has been compiled with utmost attention to detail. However, this does not guarantee complete accuracy. Neither SUSE LLC, its affiliates, the authors nor the translators shall be held liable for possible errors or the consequences thereof.
1 Introduction #
SUSE Liberty Linux is a technology and support solution for mixed Linux environments. With a SUSE Liberty Linux subscription, you can register and update Red Hat Enterprise Linux. An optional High Availability extension is also available.
The following table shows which Linux distributions are supported by each subscription. These subscriptions also include an entitlement for a registration tool to manage package updates.
Subscription[a] | Supported distributions[b] | Registration options |
---|---|---|
SUSE Liberty Linux Enterprise |
CentOS Linux Red Hat Enterprise Linux SUSE Linux Enterprise Server |
SUSE Manager Repository Mirroring Tool |
SUSE Liberty Linux Professional |
CentOS Linux Red Hat Enterprise Linux | SUSE Manager |
[a] The Lite and Basic subscriptions only support CentOS Linux, so are not applicable to SUSE Liberty Linux 9. [b] There is no CentOS Linux 9, so CentOS Linux support is not applicable to SUSE Liberty Linux 9. |
CentOS Stream is not supported.
Registering RHEL directly with SUSE Customer Center is not currently supported.
This guide describes how to register with Repository Mirroring Tool (RMT). RMT is a proxy system for SUSE Customer Center. The RMT server is registered with SUSE Customer Center, and other systems are registered with the RMT server and receive packages from it directly.
To register with SUSE Manager, see Registering RHEL 9 with SUSE Manager.
If you already have an RMT server and only need to register your RHEL 9 system, skip straight to Section 5, “Registering RHEL with RMT”.
If you already have an RMT server but still need to mirror the SUSE Liberty Linux 9 repositories, go to Section 4, “Mirroring SUSE Liberty Linux repositories with RMT”.
If you still need to set up the RMT server, start with Section 2, “Installing a virtual machine to host RMT” and Section 3, “Configuring the RMT server”.
2 Installing a virtual machine to host RMT #
Use this procedure to install a SLES Minimal VM, a preconfigured virtual machine image that contains a slimmed-down version of SUSE Linux Enterprise Server (SLES). This machine will be the Repository Mirroring Tool (RMT) server.
You can use your SUSE Liberty Linux Enterprise subscription to register this machine. SUSE Liberty Linux Professional does not include an entitlement for SLES, so you will need a separate SLES subscription if you want to use RMT instead of SUSE Manager.
To install a full SLES machine on bare metal, see Installation Quick Start.
To deploy SLES in the public cloud, see Deploying a SUSE Linux Enterprise Server instance to support RMT in the public cloud in Repository Mirroring Tool Guide.
You have a SUSE Liberty Linux subscription.
You have a SUSE Customer Center account.
The VM must have a static IP address and host name. This guide includes steps for configuring the VM's network setup, but you must have basic networking knowledge to fill in the details.
You have the infrastructure to run virtual machines. This guide explains how to set up the VM to host RMT, but does not describe how to use different virtualization products. See the relevant documentation for your product.
The RMT server needs enough available disk space to mirror the SUSE Liberty Linux 9 repositories. Downloaded packages are stored in
/var/lib/rmt/public/repo/
. The amount of storage required depends on the number of repositories you mirror. We recommend at least 1.5 times the total size of all enabled repositories.Important: SUSE Liberty Linux 9 repository sizeThe SUSE Liberty Linux 9 repositories will grow over time because older package versions are not removed. Based on the current[1] size of the repositories, to meet the 1.5 times size recommendation you will need approximately 335 GB of disk space for the default repositories.
If you need the optional
Source
andDebug
repositories, you will need an additional 665 GB available.
Download the appropriate
Minimal-VM
image for your virtualization infrastructure from https://www.suse.com/download/sles/.Use the
Minimal-VM
image to start the virtual machine.The default disk size for SLES Minimal VM is 24 GB. If you can customize the configuration before the installation begins, increase the available storage so there is enough disk space for repository mirroring.
When the
JeOS Firstboot
screen appears, select .Choose your keyboard layout and select
.Review the
End User License Agreement
and select . To agree with the terms of the license, select .Choose your time zone and select
.Enter a
root
password and select , then confirm the password and select again.JeOS Firstboot shows the command to use to register this VM. You do not need to write this down; the command is explained in this procedure. Select
.When the VM is ready, log in as the
root
user with the password you entered during setup.Register the VM using your SUSE Customer Center email address and the registration code for SUSE Liberty Linux:
#
SUSEConnect -e EMAIL_ADDRESS -r REGISTRATION_CODE
This activates the
Basesystem
,Server Applications
, andPython 3
modules.If you did not already increase the VM's disk space before the installation began, increase it now. You might need to shut down the VM to do so. The VM must have enough space to mirror the SUSE Liberty Linux 9 repositories.
You must also configure a static IP address and host name for the VM. If you are familiar with any networking tools in SLES, configure the network with your preferred tool. If not, use the YaST graphical interface:
Install YaST and the YaST
network
module:#
zypper install yast2 yast2-network
Start the YaST
network
module:#
yast2 lan
In the
tab, select to change the settings of theeth0
device. The dialog opens.In the
tab, activate .Fill in the
, , and fields.Select
.Switch to the
tab and fill in the field.Change
tono
.Fill in at least one
field.Switch to the
tab and select . A new dialog opens.Fill in the
field. Make sure to remove the-
character.From the
drop-down list, selecteth0
.Select
to close the dialog.Select
to complete the configuration and close YaST.Check the network settings:
#
ip addr
Check that the network interface can access external networks:
#
ping www.suse.com
Cancel the ping with Ctrl–C.
You can now install RMT on the virtual machine.
3 Configuring the RMT server #
Use this procedure to configure the Repository Mirroring Tool (RMT) on SUSE Linux Enterprise Server (SLES) 15.
A SLES 15 virtual machine is installed as described in Section 2, “Installing a virtual machine to host RMT”.
The SLES machine has a static IP address and host name.
You have a SUSE Customer Center account and organization credentials.
On the SLES machine, install RMT:
#
zypper in rmt-server
Install the following packages, which are not installed by default on a SLES Minimal VM:
#
zypper install yast2-rmt mariadb nginx
Start the YaST
rmt
module:#
yast2 rmt
Enter your
, then select .To find your organization credentials, log in to SUSE Customer Center, select your organization from , and click . Your organization's are in the top right corner.
Enter
for a new MariaDB database user, then select . The new user is created.When prompted, enter and confirm a new password for the MariaDB root user, then select
.Enter a
for the SSL certificates. The common name is usually the host name of the server.If the server has other domain names or IP addresses, enter these as
. Select to add new names. When all common names are entered, select .If prompted, enter and confirm a password for the CA private key, then select
.Activate the check box
, then select .YaST displays the
. If there are no issues, select .Review the
, then select to close YaST.
YaST enables and starts all RMT systemd
services and timers.
4 Mirroring SUSE Liberty Linux repositories with RMT #
Use this procedure to mirror the SUSE Liberty Linux repositories for Red Hat Enterprise Linux 9.
The RMT server is installed and up to date.
The RMT server has enough storage available for repository mirroring. The amount of storage required depends on the number of repositories you mirror. We recommend at least 1.5 times the total size of all enabled repositories. Be aware that the SUSE Liberty Linux repositories will grow substantially over time.
Your organization credentials appear correctly in
/etc/rmt.conf
.You have a SUSE Liberty Linux subscription activated in SUSE Customer Center.
On the RMT server, update the available product and repository metadata:
#
rmt-cli sync
Synchronization is also performed automatically by
rmt-server-sync.timer
. You can check the status and the next scheduled synchronization time with the following command:#
systemctl status rmt-server-sync.timer
Enable SUSE Liberty Linux 9 using the product ID
2538
:#
rmt-cli products enable 2538
This enables all the default repositories associated with the product.
If your subscription includes the High Availability extension, enable the extension using the product ID
2539
:#
rmt-cli products enable 2539
To check whether the High Availability extension is available, run this command:
rmt-cli products list --all --name="Liberty" --version=9
If you also need the
Source
orDebug
repositories, enable them with the following commands:SLL-9-Source-Updates
,SLL-AS-9-Source-Updates
andSLL-CB-9-Source-Updates
:#
rmt-cli repos enable 5964 5967 5970
SLL-9-Debug-Updates
,SLL-AS-9-Debug-Updates
andSLL-CB-9-Debug-Updates
:#
rmt-cli repos enable 5965 5968 5971
SLL-9-HA-Source-Updates
andSLL-9-HA-Debug-Updates
:#
rmt-cli repos enable 5973 5974
Start package mirroring for the enabled repositories:
#
rmt-cli mirror
Packages are downloaded to the RMT server once per day by
rmt-server-mirror.timer
. You can check the status and the next scheduled download time with the following command:#
systemctl status rmt-server-mirror.timer
5 Registering RHEL with RMT #
Use this procedure to register Red Hat Enterprise Linux 9 with the RMT server.
CentOS Stream is not supported.
The RMT server is running rmt-server version 2.10 or later.
The SUSE Liberty Linux 9 repositories are available on the RMT server.
The system you want to register can access the RMT server.
The system you want to register is up to date. SUSE Liberty Linux only supports the latest minor release of RHEL 9.
You have a SUSE Liberty Linux subscription activated in SUSE Customer Center.
You have removed the system from any Red Hat subscription services it was registered to.
On the RHEL system, download the
rmt-client-setup-res
script:#
curl http://RMT_SERVER/tools/rmt-client-setup-res --output rmt-client-setup-res
Run the
rmt-client-setup-res
script with the URL of the RMT server as a parameter:#
sh rmt-client-setup-res https://RMT_SERVER
The script installs
SUSEConnect
and its dependencies, then downloads and runs thermt-client-setup
script, which performs the following tasks:Downloads all keys from
http://RMT_SERVER/repo/keys
.Imports the keys with
gpg --import
andrpm --import
.Downloads the CA certificate from
https://RMT_SERVER/rmt.crt
.Imports the CA certificate to the trust store.
Uses
SUSEConnect
to register the system with the RMT server. Registering the system usingSUSEConnect
adds and enables all default repositories.
You should see
Successfully registered system
.Verify the installed product:
#
SUSEConnect --status-text
You should see the following output:
Installed Products: ------------------------------------------ SUSE Liberty Linux release file (SLL/9/x86_64) Registered ------------------------------------------
If your subscription includes the High Availability extension, activate it with the following command:
#
SUSEConnect -p SLL-HA/9/x86_64
To check whether the extension is available, run the
SUSEConnect --list-extensions
command.Verify the available repositories:
#
dnf repolist all
The default repositories
SLL-9-Updates
,SLL-AS-9-Updates
andSLL-CB-9-Updates
should beenabled
. If you activated the High Availability extension,SLL-9-HA-Updates
should also beenabled
.You will also see optional
Source
andDebug
repositories with the statusdisabled
. Be aware that these repositories are listed even if they are not mirrored on the RMT server. You can check the mirrored repositories by browsing the directory listing athttps://RMT_SERVER/repo/SUSE/Updates/
or by logging in to the RMT server and runningrmt-cli repos list
.If you need the
Source
orDebug
repositories, enable them with the following command:#
dnf config-manager --enable REPO_ID
Run the update command to make sure there are no errors:
#
dnf update
You can now keep your system up to date from repositories provided by SUSE Liberty Linux.
6 Troubleshooting #
nginx.service
is inactive after installing the rmt-server packageContinue the procedure to configure RMT in YaST. This often resolves the issue. If that fails, Apache might be installed on your server, and must be disabled. Apache conflicts with NGINX because both web servers listen on port 80.
- SUSE Liberty Linux does not appear in
rmt-cli products list
afterrmt-cli sync
Check your network. If the network is down,
rmt-cli sync
fails without showing an error.- Mirroring completes with errors
If some packages could not be downloaded because of timeouts, rerun the
rmt-cli mirror
command until all packages are downloaded.- Setup script cannot access the SUSE Liberty Linux repository
The
repodata
directory on the RMT server will not be available until all of the packages for that repository are downloaded. If some packages could not be downloaded to the RMT server because of timeouts during the first mirroring, rerun thermt-cli mirror
command until all packages are downloaded.- Setup script cannot install SUSEConnect because of package dependencies
SUSE Liberty Linux only supports the latest minor release of RHEL. If your system is running the latest version and SUSEConnect still has package dependency issues, try the following workaround:
Edit the
rmt-client-setup-res
script to add--skip-broken
to the following line:$DNF install SUSEConnect librepo --skip-broken
Run the script and accept any proposed package changes. SUSEConnect will be skipped.
Run the script a second time. The package changes from the first attempt can sometimes resolve the package dependency issues, allowing the second attempt to successfully install SUSEConnect.
dnf update
fails withErrors during downloading metadata for repository — Status code: 404
The repository shown in the error message might not be mirrored on the RMT server. The optional
Source
andDebug
repositories can be enabled withdnf config-manager
even if they are not available from RMT.Run
dnf repolist all
to show the status of the repositories.If the repository shown in the error message has the status
enabled
, disable it with the following command:#
dnf config-manager --disable REPO_ID
Run
dnf update
again to see if the issue is resolved.If you need the unavailable repository for your system, see Section 4, “Mirroring SUSE Liberty Linux repositories with RMT”.