The puppet infrastructure tune command

The puppet infrastructure tune command outputs optimized settings for Puppet Enterprise (PE) services based on recommended guidelines.

Running puppet infrastructure tune queries PuppetDB to identify processor and memory facts about your infrastructure hosts. The command outputs settings in YAML format for you to use in Hiera.

This command is compatible with most standard PE configurations, including those with compilers, a replica, or standalone PostgreSQL.

You must run this command on your primary server as root. Using sudo for elevated privileges is not sufficient. Instead, start a root session by running sudo su -, and then run the puppet infrastructure command.

These options are commonly used with the puppet infrastructure tune command:

  • --current outputs existing tuning settings from the PE console and Hiera. This option also identifies duplicate settings declared in both the console and Hiera
  • --memory_per_jruby <MB> outputs tuning recommendations based on specified memory allocated to each JRuby in Puppet Server. If you implement tuning recommendations using this option, specify the same value for puppetserver_ram_per_jruby.
  • --memory_reserved_for_os <MB> outputs tuning recommendations based on specified RAM reserved for the operating system.
  • --common outputs common settings, which are identical on several nodes, separately from node-specific settings.

For more information about the tune command, run puppet infrastructure tune --help.

The puppet infrastructure tune command fails if environmentpath (in your puppet.conf file) is set to multiple environments. Comment out this setting before running this command. For details about this setting, refer to environmentpath in the open source Puppet documentation.

Related information