Jump to contentJump to page navigation: previous page [access key p]/next page [access key n]
documentation.suse.com / SUSE Linux Enterprise Server Documentation / RMT Guide / RMT installation and configuration
Applies to SUSE Linux Enterprise Server 15 SP3

2 RMT installation and configuration

RMT is included in SUSE Linux Enterprise Server starting with version 15. Install RMT directly during the installation of SUSE Linux Enterprise Server or install it on a running system. After the packages are installed, use YaST to do an initial configuration.

Warning
Warning: RMT server will conflict with installation server

Configuring a server to be an RMT server installs and configures the NGINX Web server, listening on port 80.

However, configuring a machine to be an installation server automatically installs the Apache Web server and configures it to listen on port 80.

Do not try to enable both these functions on the same server. It is not possible for a single server to host both simultaneously.

2.1 Storage requirements

Downloaded packages are stored in /usr/share/rmt/public/repo, which is a symbolic link to /var/lib/rmt/public/repo/.

The amount of storage your RMT server requires is dependent on several variables: the number of repositories and architectures that you mirror, and the number of products that are enabled. As a general guide, 1.5 times the total size of all enabled repositories should be sufficient. This is about 200 GB per SUSE Linux Enterprise release, including all extensions.

2.2 Installation during system installation

To install it during installation, select the rmt-server package. The package selection is available in the Installation Settings step of the installation when selecting Software.

RMT pattern
Figure 2.1: RMT pattern

We recommend to check for available RMT updates immediately after installing SUSE Linux Enterprise Server using the zypper patch command. SUSE continuously releases maintenance updates for RMT, and newer packages are likely to be available.

2.3 Installation on an existing system

To install RMT on a running SUSE Linux Enterprise Server installation, use zypper:

> sudo zypper in rmt-server

2.3.1 Installation on JeOS

SUSE Linux Enterprise Server JeOS (Just enough Operating System) is a minimal customizable operating system that is designed for specific usage scenarios, for example, to be run as:

  • A container host

  • A virtual machine guest

  • An appliance base system

  • A small server image

Therefore, JeOS image is a good choice for being used as an RMT server. You can download SUSE Linux Enterprise Server JeOS images for KVM, Xen, Microsoft Hyper-V, VMware, and OpenStack from the public SUSE Linux Enterprise Server download page at https://www.suse.com/download/sles/. Find more information on JeOS at https://documentation.suse.com/sles/15-SP3/html/SLES-all/article-jeos.html.

The installation of RMT on JeOS works identical to installing it on an already installed system (see Section 2.3, “Installation on an existing system”. To install RMT on JeOS, run the following command from the JeOS command line as root:

# zypper install rmt-server yast2-rmt nginx mariadb
Important
Important: Hardware requirements

When installing RMT on JeOS, be aware that it requires a minimum of 100 GB disk space, depending on the products you select to mirror. Another requirement is a CPU with at least 2 cores and 2 GB of RAM.

2.4 RMT configuration with YaST

Configure RMT with YaST as described in the following procedure. It is assumed that this procedure is executed on a newly installed system.

  1. Start YaST with the rmt module.

    > sudo yast2 rmt

    Alternatively, start YaST and select Network Services › RMT Configuration.

  2. Enter your organization credentials. To retrieve your credentials, refer to Section 4.1, “Mirroring credentials”.

  3. Enter credentials for a new MariaDB user and database name. This user will then be created. Then select Next.

    If a password for the MariaDB root user is already set, you are required to enter it. If no password is set for root, you are asked to enter a new one.

  4. Enter a common name for the SSL certificates. The common name should usually be the fully qualified domain name (FQDN) of the server. Enter all domain names and IP addresses with which you want to reach the RMT server as alternative common names.

    When all common names are entered, select Next.

    Tip
    Tip: Certificate locations for RMT
    • /etc/rmt/ssl/rmt-ca.crt

      This is the CA certificate bundle that yast2 rmt uses to certify the RMT server certificate. yast2 rmt will only create this file if it does not already exist.

    • /etc/rmt/ssl/rmt-server.crt and /etc/rmt/ssl/rmt-server.key

      yast2 rmt will only generate a new server certificate and private key if one does not already exist. To regenerate this certificate, refer to Section 8.1, “Regenerating HTTPS certificates”.

  5. If firewalld is enabled on this system, enable the check box to open the required ports.

    Enabling ports in firewalld
    Figure 2.2: Enabling ports in firewalld

    If firewalld is not enabled now and you plan to enable it later, you can always open relevant ports by running the yast2 rmt module.

    Tip
    Tip: Fine-tuning firewalld settings

    By clicking Firewall Details, you can open the relevant ports for specific network interfaces only.

    Continue with Next.

  6. To view the summary, click Next. Close YaST by clicking Finish. YaST then enables and starts all systemd services and timers.

2.5 Enabling SLP announcements

RMT includes the SLP service description file /etc/slp.reg.d/rmt-server.reg. To enable SLP announcements of the RMT service, follow these steps:

  1. If firewalld is running, open relevant ports and reload the firewalld configuration:

    > sudo firewall-cmd --permanent --add-port=427/tcp
    success
    > sudo firewall-cmd --permanent --add-port=427/udp
    success
    > sudo firewall-cmd --reload
  2. Verify that SLP server is installed and possibly install it:

    > sudo zypper install openslp-server
  3. Enable and start the SLP service:

    > sudo systemctl enable slpd.service
    > sudo systemctl restart slpd.service