Skip to content

ULHPC/puppet-sysctl

Repository files navigation

Sysctl Puppet Module

Puppet Forge License Supported Platforms

Configure and manage sysctl

  Copyright (c) 2026 UL HPC Team <hpc-sysadmins@uni.lu>

| Project Page | Sources | Issues |

Synopsis

Configure and manage sysctl.

This module implements the following elements:

  • Puppet classes:

    • sysctl
    • sysctl::common
    • sysctl::common::debian
    • sysctl::common::redhat
    • sysctl::params
  • Puppet definitions:

    • `sysctl::value: set a kernel parameter with sysctl

All these components are configured through a set of variables you will find in manifests/params.pp.

Dependencies

See metadata.json. In particular, this module depends on

Overview and Usage

Class sysctl

This is the main class defined in this module. It accepts the following parameters:

  • $ensure: default to 'present', can be 'absent'

Use it as follows:

 include ' sysctl'

Definition sysctl::value

The definition sysctl::value provides a way to define a kernel parameter with sysctl. This definition accepts the following parameters:

  • $ensure: default to 'present' (will create or update the value), can be 'absent' (will remove the parameter)
  • value: set the kernel parameter (in sysctl.conf and with sysctl)

Examples:

Set a tunable such that the kernel does not reboot automatically if a node panics:

    sysctl::value { 'kernel.panic':
	      ensure => 'present',
	      value  => 0
    }

Unset the tunable (reset to default):

    sysctl::value { 'kernel.panic':
	      ensure => 'absent'
    }

Librarian-Puppet / R10K Setup

You can of course configure the sysctl module in your Puppetfile to make it available with Librarian puppet or r10k by adding the following entry:

 # Modules from the Puppet Forge
 mod "ULHPC/sysctl"

or, if you prefer to work on the git version:

 mod "ULHPC/sysctl",
     :git => 'https://github.com/ULHPC/puppet-sysctl',
     :ref => 'main'

Developments / Issues / Contributing to the code

This Puppet Module has been implemented in the context of the UL HPC Platform of the University of Luxembourg. It relies on Vox Pupuli modulesync for its organization.

You can submit bugs / issues / feature requests using the ULHPC/sysctl Puppet Module Tracker. You are more than welcome to contribute to its development by sending a pull request.

Licence

This project and the sources proposed within this repository are released under the terms of the GPL-3.0 licence.

Licence

About

Puppet module to configure and manage sysctl

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors