Build Cluster Image Issues¶
Issues related to building diskless cluster node images, S3/MinIO image storage, and architecture-specific build failures.
S3 Upload Fails¶
Symptom
The build_image_x86_64.yml or build_image_aarch64.yml playbook fails
during the image upload stage. The built image is not visible in the
boot-images S3 bucket.
Cause
- The MinIO service on the OIM is not running or is unreachable.
- S3 credentials are misconfigured.
- Insufficient disk space on the MinIO storage volume.
Resolution
-
Verify MinIO is running and accessible:
Run on: omnia_core containers3cmd ls -
If MinIO is unreachable, restart it on the OIM host:
Run on: OIM hostsystemctl restart minio.service -
Verify the
boot-imagesbucket exists:Run on: omnia_core containers3cmd ls s3://boot-images -
After resolving the issue, re-run the build image playbook.
Kernel Image Not Found in S3¶
Symptom
provision.ymlfails with a kernel validation error.- The specified
kernel_version_overrideis not found in S3.
Cause
The build image step did not complete successfully, or the kernel packages were not available in the Pulp repository when the image was built.
Resolution
-
Verify that the build image step completed successfully and uploaded images to S3:
Run on: omnia_core containers3cmd ls -Hr s3://boot-images -
Look for kernel and initramfs entries matching your functional group:
s3://boot-images/efi-images/<functional_group>/rhel-<functional_group>_omnia_<version>/vmlinuz-<kernel_version> s3://boot-images/efi-images/<functional_group>/rhel-<functional_group>_omnia_<version>/initramfs-<kernel_version>.img -
If the expected kernel is missing, verify that the kernel packages were available in the Pulp repository before running
build_image_x86_64.yml. The build process selects the latest kernel available across all configured repositories. -
Re-run the build image playbook to rebuild with the correct kernel:
Run on: omnia_core containercd /omnia/build_image_x86_64 ansible-playbook build_image_x86_64.yml -
After the build completes, verify the new kernel image in S3 using
s3cmd ls -Hr s3://boot-imagesand then re-runprovision.yml.
Build Image Fails for aarch64 — Missing Inventory¶
Symptom
The build_image_aarch64.yml playbook fails with:
"aarch64 functional groups detected in pxe_mapping_file but no hosts
found in 'admin_aarch64' inventory group" or "The inventory group
'admin_aarch64' does not exist or has no hosts."
Cause
The PXE mapping file contains aarch64 functional groups, but the playbook
was run without an inventory file containing the [admin_aarch64] group.
Resolution
-
Create an inventory file with the
[admin_aarch64]group containing exactly one ARM admin node:[admin_aarch64] <arm_admin_node_ip> -
Re-run the build image playbook with the inventory file:
Run on: omnia_core containercd /omnia/build_image_aarch64 ansible-playbook build_image_aarch64.yml -i inventory
Note
The [admin_aarch64] group must have exactly one host. NFS must be
configured on the OIM for aarch64 image building.
Repository Sync Issues¶
Symptom
local_repo.ymlfails to sync the additional kernel repositories.- Kernel packages are not available in Pulp after sync.
build_image_x86_64.ymlbuilds an image with an older kernel than expected.
Cause
Repository URLs in local_repo_config.yml are incorrect or
unreachable, or RHEL subscription certificates are invalid or expired.
Resolution
-
Verify repository URLs are correct and accessible from the
omnia_corecontainer:Run on: OIM hostpodman exec -it omnia_core curl -I <repository_url> -
For RHEL subscription (EUS) repositories, verify that the entitlement certificates are valid and correctly placed:
Run on: omnia_core containerls -la /opt/omnia/rhel_repo_certs/ -
Validate kernel packages are available in the synced Pulp repository. From within the
omnia_corecontainer, list the repository distributions:Run on: omnia_core containerpulp rpm distribution list -
Query the Pulp content endpoint to check for kernel packages. Replace
<oim_admin_ip>with the OIM admin IP and<repo_name>with the distribution name from the previous step:Run on: omnia_core containercurl -k https://<oim_admin_ip>:2225/pulp/content/opt/omnia/offline_repo/cluster/x86_64/rhel/10.0/rpms/<repo_name>/Packages/k/ | grep kernel -
If no kernel packages are found, correct the repository URLs in
local_repo_config.ymland re-runlocal_repo.yml.
Images Not Created for All Functional Groups¶
Symptom
After running the build image playbook, s3cmd ls -Hr s3://boot-images
shows images for some functional groups but not all groups defined in the
mapping file.
Cause
- The mapping file contains functional groups that do not match the target architecture of the playbook being run.
local_repo.ymlwas not executed with software packages for all required functional groups.
Resolution
-
Verify which functional groups are defined in the mapping file:
Run on: omnia_core containercat /opt/omnia/input/project_default/pxe_mapping_file.csv -
Ensure
local_repo.ymlwas executed withsoftware_config.jsonthat includes software for all required architectures and functional groups. -
Re-run the appropriate build image playbook and verify images:
Run on: omnia_core containers3cmd ls -Hr s3://boot-images
Info
- Build Cluster Node Images -- Full image build procedure.
- Create Local Repos -- Local repository setup.
- Create Mapping File -- Mapping file configuration.