Chapter 1. Image builder description
To deploy a system on a cloud platform, create a system image. To create RHEL system images, use the image builder tool.
1.1. What is image builder?
You can use image builder to create customized system images of RHEL, including system images prepared for deployment on cloud platforms. Image builder automatically handles the setup details for each output type and is therefore easier to use and faster to work with than manual methods of image creation. You can access the image builder functionality through a command-line interface in the composer-cli
tool, or a graphical user interface in the RHEL web console.
From RHEL 8.3 onward, the osbuild-composer
back end replaces lorax-composer
. The new service provides REST APIs for image building.
1.2. Image builder terminology
- Blueprint
A blueprint is a description of a customized system image. It lists the packages and customizations that will be part of the system. You can edit blueprints with customizations and save them as a particular version. When you create a system image from a blueprint, the image is associated with the blueprint in the image builder interface of the RHEL web console.
You can create blueprints in the TOML format.
- Compose
- Composes are individual builds of a system image, based on a specific version of a particular blueprint. Compose as a term refers to the system image, the logs from its creation, inputs, metadata, and the process itself.
- Customizations
- Customizations are specifications for the image that are not packages. This includes users, groups, and SSH keys.
1.3. Image builder output formats
Image builder can create images in multiple output formats shown in the following table. To check the supported types, run the command:
# composer-cli compose types
Table 1.1. Image builder output formats
Description | CLI name | file extension |
---|---|---|
QEMU QCOW2 Image |
|
|
TAR Archive |
|
|
Amazon Machine Image Disk |
|
|
Azure Disk Image |
|
|
Google Cloud Platform |
|
|
VMware Virtual Machine Disk |
|
|
Openstack |
|
|
RHEL for Edge Commit |
|
|
RHEL for Edge Container |
|
|
RHEL for Edge Installer |
|
|
RHEL for Edge Raw |
|
|
RHEL for Edge Simplified Installer |
|
|
ISO image |
|
|
1.4. Image builder system requirements
The environment where image builder runs, for example a dedicated virtual machine, must meet requirements listed in the following table.
Table 1.2. Image builder system requirements
Parameter | Minimal Required Value |
---|---|
System type | A dedicated virtual machine. Note that image builder is not supported on containers, including Red Hat Universal Base Images (UBI). |
Processor | 2 cores |
Memory | 4 GiB |
Disk space |
20 GiB of free space in the |
Access privileges | Administrator level (root) |
Network | Internet connectivity |
If you do not have internet connectivity, you can use image builder in isolated networks if you reconfigure it to not connect to Red Hat Content Delivery Network (CDN). For that, you must override the default repositories to point to your local repositories. Ensure that you have your content mirrored internally or use Red Hat Satellite. See Managing repositories for more details.
Additional resources