Install the Red Hat Edge Manager RPM package
Prepare your Red Hat Enterprise Linux host for the Red Hat Edge Manager installation by enabling the necessary repositories, installing the flightctl-services package, and then starting and verifying the running services.
- An active Red Hat Edge Manager subscription enabled for your Red Hat account
- Firewall and network rules that allow administrators, automation, and edge devices to reach the Red Hat Edge Manager listeners on this host or its DNS name. For a port and traffic overview, see Network ports for Red Hat Edge Manager in the Additional resources section.
- A Red Hat Enterprise Linux host with:
- Red Hat Enterprise Linux 9.x or 10.x
- Minimal installation
- CPU, memory, and disk sized for your expected device count; see System requirements in the Additional resources section
- Administrative access (root or sudo-capable user)
- SSH access
- Podman installed for managing containers
- The system hostname must be set to a fully qualified domain name (FQDN), for example
rhem.example.com. Theflightctl-pam-issuerservice does not start without a FQDN hostname. - A DNS name that resolves to the Red Hat Edge Manager host’s IP address. Set this name as
global.baseDomainin/etc/flightctl/service-config.yamlso the HTTPS gateway can serve the web console and APIs on port443. For certificate and DNS planning, see Planning DNS and TLS for the standalone gateway in the Additional resources section.- SSH into your Red Hat Enterprise Linux host.
- Authenticate and log in to the Red Hat Container Registry:
sudo podman login registry.redhat.io - Install the necessary repositories and packages:
- Ensure that the Red Hat Edge Manager repositories are enabled by running the command for your Red Hat Enterprise Linux version:
For Red Hat Enterprise Linux 9:
sudo subscription-manager repos --enable edge-manager-1.3-for-rhel-9-x86_64-rpmsFor Red Hat Enterprise Linux 10:
sudo subscription-manager repos --enable edge-manager-1.3-for-rhel-10-x86_64-rpms - Install the Red Hat Edge Manager service by running:
sudo dnf install -y flightctl-services
- Ensure that the Red Hat Edge Manager repositories are enabled by running the command for your Red Hat Enterprise Linux version:
- Enable and start the services:
Warning This command might take a few minutes to fully initialize all background services.
sudo systemctl enable --now flightctl.target - Run 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, including flightctl-gateway.service when your release ships the standalone HTTPS gateway.
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).
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
After you verify that the Flight Control services are running, the management server is ready to process requests.
You can now access the web UI at your global.baseDomain address on port 443 through the HTTPS gateway. Configure valid authentication credentials before you sign in to the dashboard.
Configure authentication credentials Copy linkLink copied!
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.
The steps below create a first global administrator. To assign additional roles or organization-scoped roles through PAM groups, see Roles and organizations with the PAM issuer in the Additional resources section. To authenticate users from LDAP, FreeIPA, or Active Directory through SSSD, see Authenticating with SSSD and the PAM issuer in the Additional resources section.
- Create the
flightctl-adminrole group for global administrators:sudo podman exec flightctl-pam-issuer groupadd flightctl-admin - On your Red Hat Enterprise Linux host, prepare a Linux crypt (SHA-512) password hash for the next step’s
useradd -poption. Any tool that produces a compatible hash is acceptable; the examples below are optional. As a best practice, keep plain text out ofpodman execcommands and shell history. For example, 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>
Installing the Flight Control CLI Copy linkLink copied!
You can install the Flight Control CLI from the RPM package or by downloading the binary from the UI. You can also obtain a pre-configured flightctl login command from the web console UI.
Installing the Flight Control CLI RPM package
To install the Flight Control CLI by using the RPM, complete the following steps:
- Install the
flightctlCLI with your package manager by running the following command:sudo dnf install -y flightctl-cli - Verify that the
flightctlCLI is working correctly by running the following command:flightctl versionNote The output displays the Client Version. The Server Version is only available after you authenticate. Use the
flightctl logincommand to log in to the CLI for the first time to enable server version access. - Run the following command to initiate the authentication process for the web UI.
Note If you use certificates from the built-in generator or a private CA, trust
/etc/flightctl/pki/ca.crton the client or use--insecure-skip-tls-verifyonly in non-production environments.flightctl login https://<DNS_Name> --username <user_name> --password <password>Replace
<DNS_Name>with the same value asglobal.baseDomainin/etc/flightctl/service-config.yaml.
If you upgraded from a release that used port 3443 for the user API, you can continue to connect on port 3443 until you reconfigure your clients. For port planning, see Network ports for Red Hat Edge Manager in the Additional resources section.
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.
Installing the Flight Control CLI binary from the UI
To install the Flight Control CLI binary from the UI, complete the following steps:
- Navigate to your
global.baseDomainaddress and log in by 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.gz - Copy 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/flightctl - Verify that the
flightctlis working correctly by running the following command:flightctl version