Chapter 1. Installing Red Hat Edge Manager on Red Hat Enterprise Linux
Install Red Hat Edge Manager on Red Hat Enterprise Linux to manage edge devices and applications at scale.
To get started using Red Hat Edge Manager on Red Hat Enterprise Linux, you must first:
- Install the Red Hat Edge Manager RPM package
- Configure your credentials
- Install the Flight Control CLI
- Optional: For Red Hat Ansible Automation Platform, OpenID Connect, or other authentication choices after installation, see Choosing authentication for Red Hat Edge Manager on Red Hat Enterprise Linux.
1.1. Installing the Red Hat Edge Manager RPM package Copy linkLink copied to clipboard!
Prepare your Red Hat Enterprise Linux host for the installation of the Red Hat Edge Manager by enabling the necessary repositories, installing the flightctl-services package, and then starting and verifying the running services.
Prerequisites
- An active Red Hat Edge Manager subscription enabled for your Red Hat account
A Red Hat Enterprise Linux host with:
- Minimal installation
- 4 cores and 16GB RAM (recommended)
- Administrative access (root or sudo-capable user)
- SSH access
- Podman installed for managing containers
- A DNS name that resolves to the Red Hat Edge Manager host’s IP address
Procedure
- SSH into your Red Hat Enterprise Linux host.
Authenticate and log in to the Red Hat Container Registry:
sudo podman login registry.redhat.ioInstall the necessary repositories and packages:
Ensure that the Red Hat Edge Manager repositories are enabled by running the following example command based on the version of Red Hat Enterprise Linux and architecture of your host:
sudo subscription-manager repos --enable edge-manager-1.0-for-rhel-9-x86_64-rpmsInstall the Red Hat Edge Manager service by running:
sudo dnf install -y flightctl-services
Enable and start the services:
WarningThis command may take a few minutes to fully initialize all background services.
sudo systemctl enable --now flightctl.targetExecute the following command to verify the status of the required services:
sudo systemctl list-units flightctl-*.service
Ensure that all listed services show a status of active.
Some services are one-time initialization tasks (such as flightctl-db-migrate.service) and will correctly display a status of active (exited). Persistent background services will display as active (running).
Troubleshooting
If your services do not run correctly, use the following log command to troubleshoot further and remediate:
sudo journalctl -u <impacted service> -b --no-pager
Once the operational status of the Flight Control services has been verified, the management server is ready to process requests.
You may now access the Web UI at https://<DNS_Name>; however, you must first configure valid authentication credentials to gain entry to the dashboard.
1.1.1. Configure authentication credentials Copy linkLink copied to clipboard!
By default, Red Hat Edge Manager on Red Hat Enterprise Linux uses the PAM Issuer to provide OIDC-compliant authentication backed by local system credentials.
Procedure
Create the
flightctl-adminrole group for global administrators:sudo podman exec flightctl-pam-issuer groupadd flightctl-adminOn your Red Hat Enterprise Linux host, generate an encrypted password hash for the new account. Do not enter a plaintext password in a
podman execcommand or in shell history. Runmkpasswdso the password is read interactively:mkpasswd -m sha-512If
mkpasswdis not installed, install thewhoispackage (dnf install whois) or generate a SHA-512 crypt hash withopenssl passwd -6.Create the user with a home directory, add the user to the group
flightctl-admin, and apply the hash as the account password. Enclose the hash in single quotes so the shell does not expand$characters in the hash.sudo podman exec flightctl-pam-issuer useradd \ -m \ --groups flightctl-admin \ -p '<PASSWORD_HASH>' \ <USER>
1.1.2. Installing the Flight Control CLI Copy linkLink copied to clipboard!
You can install the Flight Control CLI via the RPM package or by downloading the binary from the UI.
1.1.2.1. Installing the Flight Control CLI RPM package Copy linkLink copied to clipboard!
To install the Flight Control CLI using the RPM, complete the following steps:
Procedure
Install the
flightctlCLI with your package manager by running the following command:sudo dnf install -y flightctl-cliVerify that the
flightctlCLI is working correctly by running the following command:flightctl versionNoteThe output displays the Client Version. The Server Version is only available after you authenticate. Use the
flightctl logincommand to log into the CLI for the first time to enable server version access.Run the following command to initiate the authentication process for the web UI.
NoteIf you are using self-signed certificates, you will be prompted to allow an insecure connection.
flightctl login https://<DNS_Name>:3443 --username <user_name> --password <password>
The CLI is now successfully authenticated and configured to communicate with the Flight Control API. It establishes a secure link between your local environment and the management server, allowing you to issue subsequent commands to manage your fleets and devices.
1.1.2.2. Installing the Flight Control CLI binary from the UI Copy linkLink copied to clipboard!
To install the Flight Control CLI binary from the UI, complete the following steps:
Procedure
-
Navigate to the UI at
https://<DNS_Name>/and log in using the credentials you created in the Configure authentication credentials section. - Click the ❔ (question mark) icon in the upper part of the Red Hat Edge Manager UI.
Select and click the downloadable archive file based on your Red Hat Enterprise Linux processor architecture.
The
<flightctl-os-arch>.tar.gzfile is downloaded to your default download location.Extract the
flightctlbinary file from the downloaded archive.$ tar -xvf <flightctl-os-arch>.tar.gzCopy the
flightctlbinary into a directory in your execution path asroot, then set execute permission on the installed file. In the following example, the/usr/local/bindirectory is on the path for users on the system:$ sudo cp flightctl /usr/local/bin/ $ sudo chmod +x /usr/local/bin/flightctlVerify that the
flightctlis working correctly by running the following command:flightctl version