Install Containerized Uyuni Proxy

Only openSUSE Leap 15.3 and newer are supported to be used as container host for Uyuni Proxy containers.

1. Container Host Requirements

Table 1. Proxy Container Host Hardware Requirements
Hardware Details Recommendation

CPU

Minimum 2 dedicated 64-bit CPU cores

RAM

Test Server

Minimum 2 GB

Production Server

Minimum 8 GB

Disk Space

Minimum 100 GB

The container proxy must have a unique Fully Qualified Domain Name (FQDN). This should not be the same as the FQDN of the container host. To ensure that the Uyuni domain name can be resolved by its clients, both container proxy and client machines must be connected to a working DNS server. You also need to ensure that reverse lookups are correctly configured.

2. Install Container Services on the host system

Container host used as a base for Uyuni Proxy containers needs to be first registered as a Salt client to the Uyuni Server.

For more information about registering Salt client to the Uyuni Server, see client-configuration:registration-overview.adoc.

Containers Module is required to be available for container host.

Uyuni Proxy containers are using podman and systemd to run and manage all proxy containers.

First step is to install container control files provided by package uyuni-proxy-systemd-services.

Procedure: Installation Of Container Services For Uyuni Proxy
  1. Assign Containers Module software channel to the container host in the Uyuni.

    For more information about assigning software channels to the system, see administration:channel-management.adoc.

  2. Log in as root on the container host.

  3. Manually install Uyuni Proxy service package:

    zypper install uyuni-proxy-systemd-services

3. Customize Uyuni Proxy configuration

Uyuni Proxy containers require some volumes to be mounted for long term storage. Those volumes are automatically created by podman and can be listed using the podman volume ls command. By default, podman stores the files of the volumes in /var/lib/containers/storage/volumes. The needed volume are named:

  • uyuni-proxy-squid-cache

  • uyuni-proxy-rhn-cache

  • uyuni-proxy-tftpboot

To override the default volume settings, create the volumes prior to the first start of the pod using the podman volume create command.

In the /etc/sysconfig/uyuni-proxy-systemd-services.config file it is possible to add custom arguments passed to podman container pod:

  • EXTRA_POD_ARGS=''

In this file it is possible to modify the tag to use for the container images:

  • TAG=latest

4. Allow network access for provided services on container host firewall

Uyuni Proxy containers work as so called node-port service. This means proxy container pod shares container host network TCP and UDP port space. For this reason container host firewall must be configured to accept incoming traffic on ports used by Uyuni Proxy containers. Those ports are:

  • 69/UDP - TFTP

  • 80/TCP - HTTP

  • 443/TCP - HTTPS

  • 4505/TCP - Salt

  • 4506/TCP - Salt

  • 8022/TCP - SSH

Continue with setting up the installed Uyuni Proxy as a containers at proxy-container-setup.adoc.