Chapter 4. Install Red Hat Discovery containers in an air-gapped environment
You use the disconnected installation process when you want to run Red Hat Discovery on a Red Hat Enterprise Linux system that does not have internet access, also commonly referred to as a disconnected, offline, or air-gapped environment.
The process has two phases. First, on a connected RHEL system with internet access, you obtain the Discovery container images from the Red Hat Ecosystem Catalog and save them to a file for transfer. Second, on the disconnected RHEL system, you transfer the container images and install and configure Discovery. When installation is complete, Discovery starts automatically and is ready to use.
4.1. Install the Discovery application for the disconnected installation Copy linkLink copied to clipboard!
Install Podman on the connected system and pull the Red Hat Discovery container images from the Red Hat Ecosystem Catalog. Then follow the steps to install the Discovery application on a disconnected system:
- Transfer the images to the disconnected system
- Load them into local storage
-
Install the
discoveryctlmanagement tool - Configure and start the Discovery application
Prerequisites
Connected system:
- This system connects to the internet.
- This system must be able to connect to the Red Hat Ecosystem Catalog.
Disconnected system:
-
This system must be able to install Red Hat standard packages through
dnf. The Discovery repository for the Red Hat Enterprise Linux version and system architecture must be accessible on this system from a local package source:
RHEL version Architecture Repository name 10
x86_64
discovery-2-for-rhel-10-x86_64-rpms9
x86_64
discovery-2-for-rhel-9-x86_64-rpms8
x86_64
discovery-2-for-rhel-8-x86_64-rpmsSetting up and maintaining a local package source in a disconnected environment is outside the scope of Red Hat Discovery documentation. Ensure that the required repositories are accessible on the disconnected system. Common approaches include using Satellite to synchronize repositories to the disconnected environment or using a local package mirror configured with the required repositories.
Procedure
On the connected system:
Install or update Podman on the connected system.
sudo dnf install -y podmanLog in to the Red Hat Ecosystem Catalog (the registry.redhat.io website). When prompted, supply your Red Hat Customer Portal account credentials.
podman login registry.redhat.ioPull the Discovery container images and save them into a
.tar.gzfile.podman pull registry.redhat.io/discovery/discovery-ui-rhel9:2.8 registry.redhat.io/discovery/discovery-server-rhel9:2.8 registry.redhat.io/rhel9/postgresql-15:latest registry.redhat.io/rhel9/redis-7:latest podman save --multi-image-archive registry.redhat.io/discovery/discovery-ui-rhel9:2.8 registry.redhat.io/discovery/discovery-server-rhel9:2.8 registry.redhat.io/rhel9/postgresql-15:latest registry.redhat.io/rhel9/redis-7:latest | gzip > discovery-images.tar.gz
On the disconnected system:
-
Transfer
discovery-images.tar.gzto the disconnected system where Discovery will be installed. Install or update Podman on the disconnected system.
sudo dnf install -y podmanLoad the container images into local storage for Podman.
podman load -i discovery-images.tar.gzEnable the Discovery repository for the Red Hat Enterprise Linux version and system architecture, and install the
discoveryctlpackage. Replace<repository>with the repository name from the prerequisites table.sudo subscription-manager repos --enable <repository> sudo dnf install -y discoveryctlRun the following command to configure and install Discovery.
WarningDo not run any
discoveryctlcommands withsudoor as therootuser. Doing so will result in a broken installation.discoveryctl installThe Discovery application will automatically start after a successful installation.
NoteThe first time
discoveryctl installruns, it prompts for a new admin login username and password. Use those credentials to log in to Discovery.The initial startup of Discovery might take a long time to complete. To monitor startup progress, use the following commands:
# check if the service is running systemctl --user status discovery-app# list all current containers podman ps -a# display service logs sudo journalctl -t discovery-app sudo journalctl -t discovery-server# display and follow service logs sudo journalctl -f -t discovery-app sudo journalctl -f -t discovery-serverTo access Discovery from another computer in the same network, allow traffic on TCP port 9443 through any firewall to or on the system that is running the Discovery server.
-
Transfer