1. Configuration management with Puppet in Foreman

Puppet is a configuration management tool to automate host configurations across your infrastructure. You can use Puppet to consistently manage configurations of hosts registered to Foreman. Foreman uses OpenVox server as the Puppet-compatible central server for the integration.

1.1. How Puppet integrates with Foreman

Puppet uses a server-agent architecture. OpenVox server communicates with OpenVox agents on hosts registered to Foreman to manage the Puppet configuration of these hosts. Foreman components integrate with that architecture to provide configuration management capabilities in Foreman.

Puppet architecture in Foreman comprises the following components:

OpenVox server

OpenVox server is the central component that stores Puppet configuration definitions in Foreman. It runs on Foreman server or Smart Proxy servers.

Note

Puppet server is no longer supported for Puppet integration with Foreman. To integrate your Puppet infrastructure with Foreman, you need to use an OpenVox server instead. An OpenVox server is functionally equivalent to a Puppet server.

OpenVox agent

OpenVox agent is a service that communicates with an OpenVox server to manage the configuration of hosts. It runs on hosts registered to Foreman.

Note

As a legacy alternative, Puppet agent also remains compatible with Foreman for Puppet integration. However, an OpenVox agent is the recommended agent for Puppet integration, and it is functionally equivalent to a Puppet agent. You cannot run both OpenVox agent and Puppet agent on the same host.

Puppet modules

A Puppet module is a collection of classes, manifests, resources, files, and templates. The Puppet modules work as components of host configuration definitions.

Puppet environments

Puppet environments are used to control versions of configuration definitions or to manage variants of the definitions, and to test the definitions before you deploy them on production. You can create multiple Puppet environments.

On each run, the OpenVox agent collects Puppet facts about the host and sends them to the OpenVox server. The OpenVox server forwards those facts to Foreman.

Note

To list Puppet facts on a host, run the puppet facts command.

Foreman acts as an external node classifier (ENC) for the OpenVox server. Based on the facts and other definitions Foreman receives from the OpenVox server, Foreman constructs the ENC answer to the OpenVox server.

Based on the ENC answer, the OpenVox server compiles a catalog for the host and sends it to the agent.

The agent evaluates the system state on the host. If the agent finds differences between the desired state defined in the catalog and the actual state, known as drifts, it enforces correction of the state of the host.

The agent reports correction results back to the OpenVox server. The OpenVox server receives correction results from the agent and reports them to Foreman.

If the Puppet modules you are using support the use of parameters, you can override parameters of the module by using Smart Class parameters in Foreman. In Foreman, you define the parameters as key-value pairs, which behave similar to host parameters or Ansible variables.

1.2. High-level steps for configuration management with Puppet

After you deploy an OpenVox agent on a host, use Foreman to manage Puppet modules, import classes, set parameter overrides, and assign classes to hosts so configuration is applied automatically or on demand.

Configuration management with Puppet involves the following high-level steps:

  1. Managing Puppet modules on the OpenVox server by installing and updating them.

  2. Importing Puppet classes and environments from Puppet modules into Foreman.

  3. Optional: Creating config groups from Puppet classes.

  4. Configuring overrides of Smart Class parameters on various levels.

  5. Assigning Puppet classes or config groups to host groups or individual hosts.

  6. Configuring intervals for runs of the OpenVox agent on hosts and for configuration enforcement runs of the OpenVox server.

  7. Monitoring configuration management using reports in the Foreman web UI. For more information, see Monitoring Foreman resources in Administering Foreman.

  8. Configuring email notifications. For more information, see Configuring Email Notification Preferences in Administering Foreman.

After assigning Puppet classes or config groups, Foreman runs configuration management automatically in the configured intervals to enforce Puppet configuration on your hosts, or you can initiate it manually on demand with the Run Puppet Once feature. For more information, see Running Puppet once using SSH.

1.3. OpenVox versions supported for integration with Foreman

Before you begin with the Puppet integration, review which versions of the OpenVox server and OpenVox agent are supported for integration with Foreman.

OpenVox Server 8 is supported on Foreman server and Smart Proxy servers.

Important

The Puppet modules you use must be compatible with the OpenVox Server version you run.

OpenVox Agent 8 is supported on hosts registered to Foreman.

Additionally, Puppet agent 7 remains compatible with OpenVox in Foreman as a legacy alternative. Hosts registered to Foreman that run Puppet agent 7 can still integrate with the OpenVox implementation in Foreman. However, Puppet agent 7 is end of life. Foreman community recommends to use OpenVox agent 8.

2. Enabling Puppet integration with Foreman

Before you can use Puppet for configuration management in Foreman, you need to deploy an OpenVox server on Foreman server or Smart Proxy servers and install the OpenVox agent on your hosts.

2.1. Installing OpenVox server on Foreman server and Smart Proxy servers

Use the foreman-installer utility to install an OpenVox server on Foreman server. Optionally, you can also install additional OpenVox servers on Smart Proxy servers.

Procedure
  1. Install OpenVox server on Foreman server:

    # foreman-installer \
    --enable-foreman-cli-puppet \
    --enable-foreman-plugin-puppet \
    --enable-puppet \
    --foreman-proxy-puppet true \
    --foreman-proxy-puppetca true \
    --puppet-server true
  2. Optional: If you want manage configuration with Puppet on Smart Proxy servers, install OpenVox server on Smart Proxy servers:

    # foreman-installer \
    --enable-puppet \
    --foreman-proxy-puppet true \
    --foreman-proxy-puppetca true \
    --puppet-server true

2.2. Configuring OpenVox agent on a host during provisioning

If you prefer to install and configure the OpenVox agent on a host when provisioning the host through Foreman, add the puppet_setup snippet to your provisioning template. A configured OpenVox agent is required on the host for Puppet integration with your Foreman.

Prerequisites
  • You created a product and repository for the upstream OpenVox agent. For more information, see Importing Content in Managing content.

  • You created an activation key that enables the OpenVox agent repository for hosts. For more information, see Managing Activation Keys in Managing content.

Procedure
  1. In the Foreman web UI, navigate to Hosts > Templates > Provisioning Templates.

  2. Select a provisioning template depending on your host provisioning method. For more information, see Kinds of Provisioning Templates in Provisioning hosts.

  3. Ensure the puppet_setup snippet is included as follows:

    <%= snippet 'puppet_setup' %>

    Note that this snippet is already included in the templates shipped with Foreman, such as Kickstart default or Preseed default.

  4. Enable the OpenVox agent using a host parameter in global parameters, a host group, or for a single host. Add a host parameter named enable-puppet8, select the boolean type, and set the value to true.

  5. Set configuration for the OpenVox agent.

    • If you use an integrated OpenVox server, ensure that you select a Puppet Smart Proxy, Puppet CA Smart Proxy, and Puppet environment when you create a host.

    • If you use a non-integrated OpenVox server, either set the following host parameters in global parameters, or a host group, or when you create a host:

      • Add a host parameter named puppet_server, select the string type, and set the value to the hostname of your OpenVox server, such as openvox.example.com.

      • Optional: Add a host parameter named puppet_ca_server, select the string type, and set the value to the hostname of your Puppet CA server, such as puppet-ca.example.com. If puppet_ca_server is not set, the OpenVox agent will use the same server as puppet_server.

      • Optional: Add a host parameter named puppet_environment, select the string type, and set the value to the Puppet environment you want the host to use.

  6. Ensure your host has access to the OpenVox agent packages from Foreman server by using an appropriate activation key.

2.3. Configuring OpenVox agent on a host during registration

If you prefer to install and configure the OpenVox agent on a host when registering the host to Foreman, enable the OpenVox agent with host parameters in global parameters or a host group. A configured OpenVox agent is required on the host for Puppet integration with your Foreman.

Prerequisites
  • You created a product and repository containing the OpenVox agent and synchronized the repository to Foreman. For more information, see Importing content in Managing content.

  • You created an activation key that enables the OpenVox agent repository for hosts. For more information, see Managing activation keys in Managing content.

Procedure
  1. In the Foreman web UI, navigate to Configure > Global Parameters to add host parameters globally. Alternatively, you can navigate to Configure > Host Groups and edit or create a host group to add host parameters only to a host group.

  2. Enable the OpenVox agent using a host parameter in global parameters or a host group. Add a host parameter named enable-puppet8, select the boolean type, and set the value to true.

  3. Specify configuration for the OpenVox agent using the following host parameters in global parameters or a host group:

    • Add a host parameter named puppet_server, select the string type, and set the value to the hostname of your OpenVox server, such as openvox.example.com.

    • Optional: Add a host parameter named puppet_ca_server, select the string type, and set the value to the hostname of your Puppet CA server, such as puppet-ca.example.com. If puppet_ca_server is not set, the OpenVox agent will use the same server as puppet_server.

    • Optional: Add a host parameter named puppet_environment, select the string type, and set the value to the Puppet environment you want the host to use.

    Until the BZ2177730 is resolved, you must use host parameters to specify the OpenVox agent configuration even in integrated setups where the OpenVox server is a Smart Proxy server.

  4. Navigate to Hosts > Register Host and register your host using an appropriate activation key. For more information, see Registering hosts by using global registration in Managing hosts.

  5. Navigate to Infrastructure > Smart Proxies.

  6. From the list in the Actions column for the required Smart Proxy server, select Certificates.

  7. Click Sign to the right of the required host to sign the SSL certificate for the OpenVox agent.

2.4. Configuring OpenVox agent on a host manually

On hosts that are already registered to Foreman, you can install and configure the OpenVox agent manually. A configured OpenVox agent is required on the host for Puppet integration with your Foreman.

Prerequisites
  • The host must have a Puppet environment assigned to it.

  • Ensure a repository containing the OpenVox agent is enabled on the host.

Procedure
  1. Log in to the host as the root user.

  2. Install the OpenVox agent package:

    • On hosts running Enterprise Linux:

      # dnf install openvox-agent
    • On hosts running Debian/Ubuntu:

      # apt install puppet-agent
    • On hosts running SUSE Linux Enterprise Server:

      # zypper install puppet-agent
  3. Add the OpenVox agent to PATH in your current shell using the following script:

    . /etc/profile.d/puppet-agent.sh
  4. Configure the OpenVox agent. Set the environment parameter to the name of the Puppet environment to which the host belongs:

    # puppet config set server foreman.example.com --section agent
    # puppet config set environment My_Puppet_Environment --section agent
  5. Start the OpenVox agent service:

    # puppet resource service puppet ensure=running enable=true
  6. Create a certificate for the host:

    # puppet ssl bootstrap
  7. In the Foreman web UI, navigate to Infrastructure > Smart Proxies.

  8. From the list in the Actions column for the required Smart Proxy server, select Certificates.

  9. Click Sign to the right of the required host to sign the SSL certificate for the OpenVox agent.

  10. On the host, run the OpenVox agent again:

    # puppet ssl bootstrap

3. Disabling Puppet integration with Foreman

Disable Puppet integration in Foreman when you no longer need configuration management or want to remove Puppet data from the database and server. Optionally remove all OpenVox server data, including environments, with the --remove-all-data argument.

Warning

If you disable Puppet with the --remove-all-data argument, you will not be able to re-enable Puppet afterwards. This is a known issue, see the Bug 2087067.

Procedure
  1. If you have used OpenVox server on any Smart Proxies, disable OpenVox server on all Smart Proxies:

    # foreman-maintain plugin purge-puppet --remove-all-data
  2. Disable OpenVox server on Foreman server:

    # foreman-maintain plugin purge-puppet --remove-all-data

4. Managing Puppet modules

Managing Puppet modules includes installing the modules from your preferred source and keeping them updated.

4.1. Installing a Puppet module on Foreman server

You can install a pre-built Puppet module from the Puppet Forge or a private Puppet module that is not available on the Puppet Forge by manually coping the module to your Foreman server. The Puppet Forge is a repository that provides Puppet modules contributed by the community.

Note

Puppet modules flagged as supported are officially supported and tested by Puppet Inc.

Procedure
  1. Navigate to forge.puppet.com and search for the Puppet module you want.

  2. Choose how to install the Puppet module:

    • To install from the Puppet forge, install the Puppet module on your Foreman server:

      # puppet module install My_Puppet_Module -i /etc/puppetlabs/code/environments/production/modules

      Use the -i parameter to specify the path and Puppet environment, for example production.

      Once the installation is completed, the output looks as follows:

      Notice: Preparing to install into /etc/puppetlabs/code/environments/production/modules ...
      Notice: Created target directory /etc/puppetlabs/code/environments/production/modules
      Notice: Downloading from https://forgeapi.puppet.com ...
      Notice: Installing -- do not interrupt ...
      /etc/puppetlabs/code/environments/production/modules
      |-| puppetlabs-ntp (v8.3.0)
        |-- puppetlabs-stdlib (v4.25.1) [/etc/puppetlabs/code/environments/production/modules]
    • To install manually, copy the module and its dependencies to Foreman server:

      $ scp -r My_Puppet_Module root@foreman.example.com:/etc/puppetlabs/code/environments/production/modules/My_Puppet_Module

4.2. Updating a Puppet module on your Foreman server

Regularly updating Puppet modules installed on your Foreman server helps ensure they stay up-to-date with their source.

Procedure
  1. Connect to your OpenVox server using SSH and find out where the Puppet modules are located:

    # puppet config print modulepath

    This returns output as follows:

    /etc/puppetlabs/code/environments/production/modules:/etc/puppetlabs/code/environments/common:/etc/puppetlabs/code/modules:/opt/puppetlabs/puppet/modules:/usr/share/puppet/modules
  2. If the module is located in the path as displayed above, the following command updates a module:

    # puppet module upgrade module name

4.3. Managing Puppet modules with r10k

You can manage Puppet modules and environments using r10k. r10k uses a list of Puppet roles from a Puppetfile to download Puppet modules from the Puppet Forge or git repositories. It does not handle dependencies between Puppet modules.

A Puppetfile looks as follows:

forge "https://forge.puppet.com"

mod "puppet-nginx",
  :git => "https://github.com/voxpupuli/puppet-nginx.git",
  :ref => "master"

mod "puppetlabs/apache"
mod "puppetlabs/ntp", "8.3.0"

5. Importing Puppet classes and environments into Foreman

Import Puppet classes and environments from the installed Puppet modules to Foreman server or any attached Smart Proxy server before you assign any of the classes to hosts.

Prerequisites
  • Ensure to select Any Organization and Any Location as context, otherwise the import might fail.

  • Before you run an import of Puppet modules into Foreman, the environment must already exist as the folder /etc/puppetlabs/code/environments/example_environment on the OpenVox server and contain installed Puppet modules.

Procedure
  1. In the Foreman web UI, navigate to Configure > Puppet ENC > Classes or Configure > Puppet ENC > Environments.

  2. Click Import in the upper right corner and select which Smart Proxy you want to import modules from. You may typically choose between your Foreman server or any attached Smart Proxy server.

  3. Select the Puppet environments to import using checkboxes on the left.

  4. Click Update to import the Puppet environments and classes to Foreman.

  5. The import should result in a notification as follows:

    Successfully updated environments and Puppet classes from the on-disk Puppet installation

6. Creating a custom Puppet environment

By creating a custom Puppet environment in Foreman, you can test custom configuration before applying it to the Puppet production environment.

Procedure
  1. In the Foreman web UI, navigate to Configure > Puppet Environments.

  2. Click Create Puppet Environment to create a Puppet environment.

  3. Enter a Name, alphanumeric characters and underscores are allowed, such as example_environment.

  4. Optional: Set a location context.

  5. Optional: Set an organization context.

  6. Click Submit to create the Puppet environment.

7. Creating a Puppet config group

A Puppet config group is a named list of Puppet classes that allows you to combine their capabilities and assign them to hosts at a click. This is equivalent to the concept of profiles in pure Puppet.

Procedure
  1. In the Foreman web UI, navigate to Configure > Puppet ENC > Config Groups.

  2. Click Create Config Group.

  3. Select the classes you want to add to the config group.

    1. Choose a meaningful Name for the Puppet config group.

    2. Add selected Puppet classes to the Included Classes field.

  4. Click Submit to save the changes.

8. Configuring Puppet smart class parameters

Configure Puppet smart class parameters in Foreman to override module defaults and tailor behavior per organization, location, or host.

8.1. Puppet parameter hierarchy

Puppet parameters follow a hierarchy so you can set defaults globally and override them per organization, location, host group, or host.

Parameters at a lower level override parameters of the higher levels:

  1. Global parameters

  2. Organization parameters

  3. Location parameters

  4. Host group parameters

  5. Host parameters

For example, host specific parameters override the parameter at any higher level, and location parameters only override parameters at the organization or global level. This feature is especially useful when you use locations or organizations to group hosts.

8.2. Overriding a smart class parameter globally

You can configure a Puppet class after you have imported it to Foreman server. This example overrides the default list of Network Time Protocol (NTP) servers.

Procedure
  1. In the Foreman web UI, navigate to Configure > Puppet ENC > Classes.

  2. Select the ntp Puppet class to change its configuration.

  3. Select the Smart Class Parameter tab and search for servers.

  4. Ensure the Override checkbox is selected.

  5. Set the Parameter Type drop down menu to array.

  6. Insert a list of ntp servers as Default Value:

    ["0.de.pool.ntp.org","1.de.pool.ntp.org","2.de.pool.ntp.org","3.de.pool.ntp.org"]

    An alternative way to describe the array is the yaml syntax:

    - 0.de.pool.ntp.org
    - 1.de.pool.ntp.org
    - 2.de.pool.ntp.org
    - 3.de.pool.ntp.org
  7. Click Submit to change the default configuration of the Puppet module ntp.

8.3. Overriding a smart class parameter for an organization

You can use groups of hosts to override Puppet parameters for multiple hosts at once. The following example chooses the organization context to illustrate setting context based parameters.

Note that organization-level Puppet parameters are overridden by location-level Puppet parameters.

Procedure
  1. In the Foreman web UI, navigate to Configure > Puppet ENC > Classes.

  2. Click a class name to select a class.

  3. On the Smart Class Parameter tab, select a parameter.

  4. Use the Order list to define the hierarchy of the Puppet parameters. The individual host (fqdn) marks the most and the organization context (organization) the least relevant.

  5. Check Merge Overrides if you want to add all further matched parameters after finding the first match.

  6. Check Merge Default if you want to also include the default value even if there are more specific values defined.

  7. Check Avoid Duplicates if you want to create a list of unique values for the selected parameter.

  8. The matcher field requires an attribute type from the order list.

  9. Optional: Click Add Matcher to add more matchers.

  10. Click Submit to save the changes.

8.4. Overriding a smart class parameter for a location

You can use groups of hosts to override Puppet parameters for multiple hosts at once. The following examples chooses the location context to illustrate setting context based parameters.

Procedure
  1. In the Foreman web UI, navigate to Configure > Puppet ENC > Classes.

  2. Click a class name to select a class.

  3. On the Smart Class Parameter tab, select a parameter.

  4. Use the Order list to define the hierarchy of the Puppet parameters. The individual host (fqdn) marks the most and the location context (location) the least relevant.

  5. Check Merge Overrides if you want to add all further matched parameters after finding the first match.

  6. Check Merge Default if you want to also include the default value even if there are more specific values defined.

  7. Check Avoid Duplicates if you want to create a list of unique values for the selected parameter.

  8. The matcher field requires an attribute type from the order list. For example, you can choose Paris as location context and set the value to French ntp servers.

  9. Optional: Click Add Matcher to add more matchers.

  10. Click Submit to save the changes.

8.5. Overriding a smart class parameter on an individual host

You can override parameters on individual hosts. This is recommended if you have multiple hosts and only want to make changes to a single one.

Procedure
  1. In the Foreman web UI, navigate to Hosts > All Hosts.

  2. Click a host name to select a host.

  3. Click Edit.

  4. On the Host tab, select a Puppet Environment.

  5. Select the Puppet ENC tab.

  6. Click Override to edit the Puppet parameter.

  7. Click Submit to save the changes.

9. Assigning a Puppet class to a host group

Use a host group to assign the ntp Puppet class to multiple hosts at once. Every host you deploy based on this host group has this Puppet class installed.

Procedure
  1. In the Foreman web UI, navigate to Configure > Host Groups.

  2. Create or edit a host group.

  3. On the Host Group tab, set the following:

    1. The Lifecycle Environment describes the stage in which certain versions of content are available to hosts.

    2. The Content View is comprised of products and allows for version control of content repositories.

    3. The Environment allows you to supply a group of hosts with their own dedicated configuration.

  4. Navigate to the Puppet ENC tab.

  5. Add the Puppet class to the Included Classes or to the Included Config Groups if a Puppet config group is configured.

  6. Click Submit to save the changes.

10. Assigning a Puppet class to an individual host

Assigning a Puppet class to an individual host enables you to apply a specific configuration to that host, overriding any settings inherited from its host group. This is useful for custom configurations that you want to apply to a single host.

Procedure
  1. In the Foreman web UI, navigate to Hosts > All Hosts.

  2. Locate the host you want to add the ntp Puppet class to and click Edit.

  3. Select the Puppet ENC tab and look for the ntp class.

  4. Click the + symbol next to ntp to add the ntp submodule to the list of included classes.

  5. Click Submit to save your changes.

    Tip

    If the Puppet classes tab of an individual host is empty, check if it is assigned to the proper Puppet environment.

Verification
  1. Verify the Puppet configuration.

    1. Navigate to Hosts > All Hosts and select the host.

    2. From the top overflow menu, select Legacy UI.

    3. Under Details, click Puppet YAML. This produces output similar as follows:

      ---
      parameters:
        // shortened YAML output
      classes:
        ntp:
          servers: '["0.de.pool.ntp.org","1.de.pool.ntp.org","2.de.pool.ntp.org","3.de.pool.ntp.org"]'
      environment: production
      ...
  2. Verify the ntp configuration.

    Connect to your host using SSH and check the content of /etc/ntp.conf.

    This example assumes your host is running CentOS 7. Other operating systems may store the ntp config file in a different path.

    Tip

    You can rerun the OpenVox agent on your host:

    # puppet agent -t
  3. Check which ntp servers are used for clock synchronization:

    # cat /etc/ntp.conf

    This returns output similar as follows:

    # ntp.conf: Managed by puppet.
    server 0.de.pool.ntp.org
    server 1.de.pool.ntp.org
    server 2.de.pool.ntp.org
    server 3.de.pool.ntp.org

    You now have a working ntp module which you can add to a host or group of hosts to roll out your ntp configuration automatically.

11. Enforcing Puppet configuration on hosts

You can enforce configuration from Foreman either manually on demand or automatically in configurable intervals.

11.1. Running Puppet once using SSH

Assign the job template to the Run Puppet Once feature to apply Puppet configuration on selected hosts immediately without waiting for the next scheduled run.

Procedure
  1. Edit remote execution settings on Foreman:

    1. In the Foreman web UI, navigate to Administer > Remote Execution Features.

    2. Select the puppet_run_host remote execution feature.

    3. Assign the Puppet Run Once – Script Default job template.

  2. To run Puppet on hosts, execute a remote job and select category Puppet and template Puppet Run Once - Script Default. Alternatively, click Run Puppet Once in the Schedule Remote Job drop down menu on the host details page.

11.2. Configuring Puppet intervals of automatic enforcement

Tune enforcement frequency and reporting by configuring intervals of automatic enforcement for Puppet.

Foreman considers hosts to be out of sync if the last Puppet report is older than the combined values of outofsync_interval and puppet_interval set in minutes.

Default values for automatic enforcement are as follows:

  • The OpenVox agent on your hosts runs every 30 minutes

  • The puppet_interval value is 35 minutes

  • The global outofsync_interval value is 30 minutes

Procedure
  1. Set the interval when the OpenVox agent runs and sends reports to Foreman:

    1. Connect to your host using SSH.

    2. Add the OpenVox agent run interval to /etc/puppetlabs/puppet/puppet.conf, for example, runinterval = 1h:

  2. Set the global out-of-sync interval:

    1. In the Foreman web UI, navigate to Administer > Settings.

    2. On the General tab, edit Out of sync interval. Set a duration, in minutes, after which hosts are considered to be out of sync.

  3. Set the Puppet out-of-sync interval:

    1. In the Foreman web UI, navigate to Administer > Settings.

    2. Select the Config Management tab.

    3. In the Puppet interval field, set the value to the duration, in minutes, after which hosts reporting using Puppet are considered to be out of sync.

Example 1. Example automatic enforcement values

The effective time after which hosts are considered out of sync is the sum of outofsync_interval and puppet_interval. For example, setting the global outofsync_interval to 30 and the puppet_interval to 60 results in a total of 90 minutes after which the host status changes to out of sync.

11.3. Overriding out-of-sync interval for a host group

You can override the out-of-sync interval for a host group from the Foreman web UI.

Procedure
  1. In the Foreman web UI, navigate to Configure > Host Groups.

  2. Select a host group.

  3. On the Parameters tab, click Add Parameter.

  4. In the Name field, enter outofsync_interval.

  5. From the Type dropdown menu, select integer.

  6. In the Value field, enter the new interval in minutes.

  7. Click Submit.

11.4. Overriding out-of-sync interval for an individual host

You can override the out-of-sync interval for an individual host from the Foreman web UI.

Procedure
  1. In the Foreman web UI, navigate to Hosts > All Hosts.

  2. Click Edit for a selected host.

  3. On the Parameters tab, click Add Parameter.

  4. In the Name field, enter outofsync_interval.

  5. From the Type dropdown menu, select integer.

  6. In the Value field, enter the new interval in minutes.

  7. Click Submit.

Appendix A: Host parameter hierarchy

You can access host parameters when provisioning hosts.

Hosts inherit their parameters from the following locations, in order of increasing precedence:

Parameter Level Set in Foreman web UI

Globally defined parameters

Configure > Global parameters

Organization-level parameters

Administer > Organizations

Location-level parameters

Administer > Locations

Domain-level parameters

Infrastructure > Domains

Subnet-level parameters

Infrastructure > Subnets

Operating system-level parameters

Hosts > Provisioning Setup > Operating Systems

Host group-level parameters

Configure > Host Groups

Host parameters

Hosts > All Hosts

Pre-release version Report issue