Red Hat Training

A Red Hat training course is available for RHEL 8

Chapter 2. Installing RHEL image builder

Before using RHEL image builder, you must install it.

2.1. RHEL image builder system requirements

The host that runs RHEL image builder must meet the following requirements:

Table 2.1. RHEL image builder system requirements

ParameterMinimal Required Value

System type

A dedicated host or virtual machine. Note that RHEL image builder is not supported in containers, including Red Hat Universal Base Images (UBI).

Processor

2 cores

Memory

4 GiB

Disk space

20 GiB of free space in the ` /var/cache/` filesystem

Access privileges

root

Network

Internet connectivity to the Red Hat Content Delivery Network (CDN).

Note

If you do not have internet connectivity, use RHEL image builder in isolated networks. For that, you must override the default repositories to point to your local repositories to not connect to Red Hat Content Delivery Network (CDN). Ensure that you have your content mirrored internally or use Red Hat Satellite.

2.2. Installing RHEL image builder

Install RHEL image builder to have access to all the osbuild-composer package functionalities.

Prerequisites

  • You are logged in to the RHEL host on which you want to install RHEL image builder.
  • The host is subscribed to Red Hat Subscription Manager (RHSM) or Red Hat Satellite.
  • You have enabled the BaseOS and AppStream repositories to be able to install the RHEL image builder packages.

Procedure

  1. Install RHEL image builder and other necessary packages:

    # yum install osbuild-composer composer-cli cockpit-composer
    • osbuild-composer - A service to build customized RHEL operating system images.
    • composer-cli- This package enables access to the CLI interface.
    • cockpit-composer - This package enables access to the Web UI interface. The web console is installed as a dependency of the cockpit-composer package.
  2. Enable and start RHEL image builder socket:

    # systemctl enable --now osbuild-composer.socket
  3. If you want to use RHEL image builder in the web console, enable and start it.

    # systemctl enable --now cockpit.socket

    The osbuild-composer and cockpit services start automatically on first access.

  4. Load the shell configuration script so that the autocomplete feature for the composer-cli command starts working immediately without logging out and in:

    $ source /etc/bash_completion.d/composer-cli
  5. Restart the running osbuild-composer service on your RHEL host.

    # systemctl restart osbuild-composer
Important

The osbuild-composer package is the new backend engine that will be the preferred default and focus of all new functionality beginning with Red Hat Enterprise Linux 8.3 and later. The previous backend lorax-composer package is considered deprecated, will only receive select fixes for the remainder of the Red Hat Enterprise Linux 8 life cycle and will be omitted from future major releases. It is recommended to uninstall lorax-composer in favor of osbuild-composer.

Verification

  • Verify that the installation works by running composer-cli:

    # composer-cli status show

Troubleshooting

You can use a system journal to track RHEL image builder activities. Additionally, you can find the log messages in the file.

  • To find the journal output for traceback, run the following commands:

    $ journalctl | grep osbuild
  • To show both remote or local workers:

    $ journalctl -u osbuild-worker*
  • To show the running services:

    $ journalctl -u osbuild-composer.service

2.3. Reverting to lorax-composer RHEL image builder backend

The osbuild-composer backend, though much more extensible, does not currently achieve feature parity with the previous lorax-composer backend.

To revert to the previous backend, follow the steps:

Prerequisites

  • You have installed the osbuild-composer package

Procedure

  1. Remove the osbuild-composer backend.

    # yum remove osbuild-composer
    # yum remove weldr-client
  2. In the /etc/yum.conf file, add an exclude entry for osbuild-composer package.

    # cat /etc/yum.conf
    [main]
    gpgcheck=1
    installonly_limit=3
    clean_requirements_on_remove=True
    best=True
    skip_if_unavailable=False
    exclude=osbuild-composer weldr-client
  3. Install the lorax-composer package.

    # yum install lorax-composer composer-cli
  4. Enable and start the lorax-composer service to start after each reboot.

    # systemctl enable --now lorax-composer.socket
    # systemctl start lorax-composer

Additional resources