Chapter 1. Introducing RHEL for Edge images

A RHEL for Edge image is an rpm-ostree image that includes system packages to remotely install RHEL on Edge servers.

The system packages include:

  • Base OS package
  • Podman as the container engine
  • Additional RPM content

You can customize the image to configure the OS content as per your requirements, and can deploy them on physical and virtual machines, in an on-premise, cloud, or container environment.

You can deploy a RHEL for Edge image on Bare Metal, Appliance, and Edge servers.

With a RHEL for Edge image, you can achieve the following:

Key features

1.1. RHEL for Edge—supported architecture

Currently, you can deploy RHEL for Edge images on AMD and Intel 64-bit systems.

1.2. How to compose and deploy a RHEL for Edge image

The overall process to compose and deploy a RHEL for Edge image varies depending on whether your deployment environment is network-based or non-network-based.

Broadly, composing and deploying a RHEL for Edge image involves the following two phases:

  1. Composing a RHEL rpm-ostree image using Image Builder. You can access Image Builder through a command-line interface in the composer-cli tool, or use a graphical user interface in the RHEL 8 Web Console.
  2. Deploying the image using RHEL installer.

While composing a RHEL for Edge image, you can select any of the following image types:

  • RHEL for Edge Commit (.tar) - suitable for network-based environments. The commit image type is not directly bootable, even though it contains a full operating system. To boot commit image type, you must deploy it.
  • RHEL for Edge Container (.tar) - suitable for non-network-based deployments. The image type creates an OSTree commit and embeds it into an OCI container with a web server. When the container is started, the web server serves the commit as an OSTree repository.
  • RHEL for Edge Installer (.iso) - suitable for non-network-based deployments. The image type pulls the commit from the running container and creates an installable boot ISO with a kickstart file configured to use the embedded OSTree commit.

The image types vary in terms of their contents, and are therefore suitable for different types of deployment environments. While the RHEL for Edge Commit is suitable for network-based environments, the RHEL for Edge Container and RHEL for Edge Installer images are suitable for non-network-based deployments.

Following are the high-level steps for each of the deployment environments:

Non-Network-based deployments

Composing and deploying a RHEL for Edge image in non-network-based deployments involves the following high-level steps:

  1. Install and register a RHEL system
  2. Install Image Builder
  3. Using Image Builder, create a blueprint with customizations for RHEL for Edge Container image
  4. Import the RHEL for Edge blueprint in Image Builder
  5. Create a RHEL for Edge image embed in an OCI container with a webserver ready to deploy the commit as an OSTree repository
  6. Download the RHEL for Edge Container image file
  7. Deploy the container serving a repository with the RHEL for Edge Container commit
  8. Using Image Builder, create an empty blueprint for RHEL for Edge Installer image
  9. Create a RHEL for Edge Installer image configured to pull the commit from the running container embedded with RHEL for Edge Container image
  10. Download the RHEL for Edge Installer image
  11. Run the installation
  12. Create an image

The following diagram represents the RHEL for Edge image non-network deployment workflow:

Figure 1.1. Deploying RHEL for Edge in non-network environment

RHEL for Edge non-network deployment workflow

Network-based deployments

Composing and deploying a RHEL for Edge image in network-based deployments involves the following high-level steps:

Use Image Builder to create flexible RHEL rpm-ostree images to suit your requirements, and then use Anaconda to deploy them in your environment. Image Builder automatically identifies the details of your deployment setup and generates the image output as a rhel-edge-commit as a .tar file.

You can access Image Builder through a command-line interface in the composer-cli tool, or use a graphical user interface in the RHEL 8 Web Console.

You can compose and deploy the RHEL for Edge image by performing the following high-level steps:

  1. Install and register a RHEL system
  2. Install Image Builder
  3. Using Image Builder, create a blueprint for RHEL for Edge image
  4. Import the RHEL for Edge blueprint in Image Builder
  5. Create a RHEL for Edge image
  6. Download the RHEL for Edge image file
  7. Set up a web server
  8. Download a RHEL boot.iso image
  9. Using the web server, install the RHEL for Edge image on Edge devices

The following diagram represents the RHEL for Edge network image deployment workflow:

Figure 1.2. Deploying RHEL for Edge in network-base environment

RHEL for Edge network deployment workflow

Additional resources

For more information about installing and registering a RHEL system, see Performing a Standard RHEL Installation.

1.3. Difference between RHEL RPM images and RHEL for Edge images

You can create RHEL system images in traditional package-based RPM format and also as RHEL for Edge (rpm-ostree) images.

You can use the traditional package-based RPMs to deploy RHEL on traditional data centers. However, with RHEL for Edge images you can deploy RHEL on servers other than traditional datacenter. These servers include systems where processing of large amounts of data is done closest to the source where data is generated—Edge servers.

Refer to the following table to know how RHEL for Edge images differ from the package-based RHEL RPM images.

Table 1.1. Difference between RHEL RPM images and RHEL for Edge images

Key attributes

RHEL RPM image

RHEL for Edge image

OS assembly

You can assemble the packages locally to form an image.

The packages are assembled in an ostree which you can install on a system.

OS updates

You can use yum update to apply the available updates from the enabled repositories.

You can use rpm-ostree upgrade to stage an update if any new commit is available in the ostree remote at /etc/ostree/remotes.d/. The update takes effect on system reboot.

Repository

The package contains Yum repositories

The package contains Ostree remote repository

User access permissions

Read write

Read-only (/usr)

Data persistence

You can mount the image to any non tmpfs mount point

/etc & /var are read-write enabled and include persisting data.