Jump to contentJump to page navigation: previous page [access key p]/next page [access key n]
documentation.suse.com / Registering RHEL 9 with RMT
SUSE Liberty Linux

Registering RHEL 9 with RMT

Publication Date: July 25, 2024

This guide describes how to use SUSE Liberty Linux to update Red Hat Enterprise Linux 9.

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 receive updates for Red Hat Enterprise Linux and SUSE Linux Enterprise Server. An optional High Availability extension is also available.

Important

CentOS Stream is not supported.

You can register RHEL 9 with one of the following tools:

  • Repository Mirroring Tool (RMT)

  • SUSE Manager

This guide describes how to register with an RMT server. RMT is a proxy system for the SUSE Customer Center. The RMT server is registered with the SUSE Customer Center, and other systems in the network are registered with the RMT server and receive packages from it directly.

Procedure overview

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 subscription to register this machine.

Tip

If you would prefer to install a full SLES machine on bare metal, see Installation Quick Start.

Requirements
  • 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
    Important: SUSE Liberty Linux 9 repository size

    The SUSE Liberty Linux repositories will grow substantially over time, because older package versions are not removed. To meet the 1.5x size recommendation, based on the current[1] size of the SUSE Liberty Linux 9 repositories, you will need approximately 275 GB of disk space available for the RMT server.

Procedure 1: Installing a virtual machine to host RMT
  1. Download the appropriate Minimal-VM image for your virtualization infrastructure from https://www.suse.com/download/sles/.

  2. 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.

  3. When the JeOS Firstboot screen appears, select Start.

  4. Choose your keyboard layout and select OK.

  5. Review the End User License Agreement and select EXIT. To agree with the terms of the license, select Yes.

  6. Choose your time zone and select OK.

  7. Enter a root password and select OK, then confirm the password and select OK again.

  8. 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 OK.

  9. When the VM is ready, log in as the root user with the password you entered during setup.

  10. 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, and Python 3 modules.

  11. 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 repository.

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:

Procedure 2: Setting a static IP address in YaST
  1. Install YaST and the YaST network module:

    # zypper install yast2 yast2-network
  2. Start the YaST network module:

    # yast2 lan
  3. In the Overview tab, select Edit to change the settings of the eth0 device. The Network Card Setup dialog opens.

  4. In the Address tab, activate Statically Assigned IP Address.

  5. Fill in the IP Address, Subnet Mask, and Hostname fields.

  6. Select Next.

  7. Switch to the Hostname/DNS tab and fill in the Static Hostname field.

  8. Change Set Hostname via DHCP to no.

  9. Fill in at least one Name Server field.

  10. Switch to the Routing tab and select Add. A new dialog opens.

  11. Fill in the Gateway field. Make sure to remove the - character.

  12. From the Device drop-down list, select eth0.

  13. Select OK to close the dialog.

  14. Select OK to complete the configuration and close YaST.

  15. Check the network settings:

    # ip addr

    Check that the network interface can access external networks:

    # ping www.suse.com

    Cancel the ping with CtrlC.

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.

Requirements
Procedure 3: Configuring the RMT server
  1. On the SLES machine, install RMT:

    # zypper in rmt-server
  2. Install the following packages, which are not installed by default on a SLES Minimal VM:

    # zypper install yast2-rmt mariadb nginx
  3. Start the YaST rmt module:

    # yast2 rmt
  4. Enter your Organization Credentials, then select Next.

    Tip

    To find your organization credentials, log in to the SUSE Customer Center, select your organization from My Organizations, and click Proxies. Your organization's Mirroring credentials are in the top right corner.

  5. Enter Database Credentials for a new MariaDB database user, then select Next. The new user is created.

  6. When prompted, enter and confirm a new password for the MariaDB root user, then select OK.

  7. Enter a Common Name for the SSL certificates. The common name is usually the host name of the server.

  8. If the server has other domain names or IP addresses, enter these as Alternative common names. Select Add to add new names. When all common names are entered, select Next.

  9. If prompted, enter and confirm a password for the CA private key, then select OK.

  10. Activate the check box Open Ports for HTTP and HTTPS in Firewall, then select Next.

  11. YaST displays the RMT Service Status. If there are no issues, select Next.

  12. Review the Configuration Summary, then select Finish 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.

Requirements
  • 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 the SUSE Customer Center.

Procedure 4: Mirroring the SUSE Liberty Linux repositories with RMT
  1. 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
  2. Enable SUSE Liberty Linux 9 using the product ID 2538:

    # rmt-cli product enable 2538

    This enables all the default repositories associated with the product.

  3. If your subscription includes the High Availability extension, enable the extension using the product ID 2539:

    # rmt-cli product enable 2539
    Tip

    To check whether the High Availability extension is available, run this command: rmt-cli products list --all --name="Liberty" --version=9

  4. If you also need the Source or Debug repositories, find and enable them with the following commands:

    # rmt-cli repo list --all | grep SLL-
    # rmt-cli repo enable REPO_ID
  5. 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.

Important

CentOS Stream is not supported.

Requirements
  • 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 the SUSE Customer Center.

  • You have removed the system from any Red Hat subscription services it was registered to.

Procedure 5: Registering RHEL with RMT
  1. 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
  2. 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 the rmt-client-setup script, which performs the following tasks:

    • Downloads all keys from http://RMT_SERVER/repo/keys.

    • Imports the keys with gpg --import and rpm --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 using SUSEConnect adds and enables all default repositories.

    You should see Successfully registered system.

  3. 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
    
    ------------------------------------------
  4. Verify the available repositories:

    # dnf repolist

    You should see SLL-9-Updates, SLL-AS-9-Updates, and SLL-CB-9-Updates.

  5. If your subscription includes the High Availability extension, activate it with the following command:

    # SUSEConnect -p SLL-HA/9/x86_64
    Tip

    To check whether the extension is available, run the SUSEConnect --list-extensions command.

  6. 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 package

Continue 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 doesn't appear in rmt-cli products list after rmt-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 the rmt-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:

  1. Edit the rmt-client-setup-res script to add --skip-broken to the following line:

    $DNF install SUSEConnect librepo --skip-broken
  2. Run the script and accept any proposed package changes. SUSEConnect will be skipped.

  3. 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.



[1] As of 27 June, 2024