This guide describes the quickest way to get a Foreman server up and running. You can choose between a Puppet-based installation and containerized installation. For a full installation guide, see Installing Foreman Server with Katello nightly plugin on Enterprise Linux. The full installation guide is currently provided only for the Puppet-based installation.

Important

The foremanctl installer is a Technology Preview feature only. Technology Preview features are not supported by Foreman community. Foreman community does not recommend using them in production. These features provide early access to upcoming product features, enabling customers to test functionality and provide feedback during the development process.

1. System requirements

The following list shows the most critical requirements common for most scenarios.

  • Puppet-based installation

  • Containerized installation

  • The following operating system is supported for deploying Foreman:

    • Enterprise Linux 9 (x86_64)

  • Installing Foreman on a system with Extra Packages for Enterprise Linux (EPEL) is not supported.

  • Install Foreman server on a freshly provisioned system that serves no other function except to run Foreman server.

  • Ensure the system has at least 4 CPU cores and 20 GB of memory.

  • The following operating system is supported for deploying Foreman:

    • Enterprise Linux 9 (x86_64)

  • Install Foreman server on a freshly provisioned system that serves no other function except to run Foreman server.

  • Ensure the system has at least 4 CPU cores and 20 GB of memory.

2. Configuring repositories

Configure the required repositories.

Procedure
  • Puppet-based installation

  • Containerized installation

  1. Clear any metadata:

    # dnf clean all
  2. Install the foreman-release.rpm package:

    # dnf install https://yum.theforeman.org/releases/nightly/el9/x86_64/foreman-release.rpm
  3. Install the katello-repos-latest.rpm package:

    # dnf install https://yum.theforeman.org/katello/nightly/katello/el9/x86_64/katello-repos-latest.rpm
  4. Install the puppet-release package.

    • For Puppet 8:

      # dnf install https://yum.puppet.com/puppet8-release-el-9.noarch.rpm
    • For Puppet 7:

      # dnf install https://yum.puppet.com/puppet7-release-el-9.noarch.rpm
  • Enable the required repositories:

    # dnf copr enable @theforeman/foremanctl rhel-9-x86_64
Verification
  • Verify that the required repositories are enabled:

    # dnf repolist enabled

3. Running the Foreman installer

Install the required packages and run the Foreman installer utility.

Procedure
  • Puppet-based installation

  • Containerized installation

  1. Upgrade all packages:

    # dnf upgrade
  2. Install foreman-installer-katello:

    # dnf install foreman-installer-katello
  3. Run the Foreman installer:

    # foreman-installer --scenario katello

    The foreman-installer installer is a collection of Puppet modules that installs Foreman based on native operating system packages.

    The installation run is non-interactive by default. The script displays its progress and writes logs to /var/log/foreman-installer/katello.log.

    For a list of the available customization options, run foreman-installer --help or foreman-installer --full-help.

  1. Upgrade all packages:

    # dnf upgrade
  2. Install the foremanctl package:

    # dnf install foremanctl
  3. Run the installer:

    # foremanctl deploy

    You can find credentials to access your Foreman server in the message shown in the TASK [post_install : Admin credentials] task results.

    For a list of available options, run foremanctl --help.

Pre-release version Report issue