sysctl_conf

pdk
Configure Linux kernel parameters at runtime via Hiera configs
deric

deric

deric

2,079 downloads

420 latest version

4.8 quality score

Version information

  • 0.2.0 (latest)
  • 0.1.1
  • 0.1.0
released Oct 26th 2020
This version is compatible with:
  • Puppet Enterprise 2019.8.x, 2019.7.x, 2019.5.x, 2019.4.x, 2019.3.x, 2019.2.x, 2019.1.x, 2019.0.x, 2018.1.x, 2017.3.x, 2017.2.x, 2016.4.x
  • Puppet >= 4.10.0 < 7.0.0
  • CentOS
    ,
    OracleLinux
    ,
    RedHat
    ,
    Scientific
    ,
    Debian
    ,
    Ubuntu

Start using this module

Documentation

deric/sysctl_conf — version 0.2.0 Oct 26th 2020

Puppet sysctl_conf

Puppet
Forge Build Status Puppet Forge
Downloads

Configure Linux kernel parameters at runtime via Puppet's Hiera based sysctl.conf management.

Description

By default for each key (e.g. net.ipv4.ip_forward) creates a corresponding configuration file (e.g. /etc/sysctl.d/net.ipv4.ip_forward.conf) with given value (net.ipv4.ip_forward = 1). sysctl configuration is applied immediately.

sysctl_conf::values:
  net.ipv4.ip_forward:
    value: '1'

Setup

Either include sysctl_conf directly in your node's definition:

include sysctl_conf

or via Hiera call, e.g.:

lookup('classes', {merge => unique}).include

then make sure to include sysctl_conf in classes definition:

classes:
  - sysctl_conf

Merge behavior

Cofigure merge behavior suitable for you needs:

lookup_options:
  sysctl_conf::values:
    merge: deep

Usage

  • set simple value:
sysctl_conf::values:
  vm.overcommit_memory:
    value: '1'
  • ignore non-activated configuration option
sysctl_conf::values:
  "net.ipv6.conf.%{networking.primary}.disable_ipv6":
    value: '1'
    silent: true
  • delete entry
sysctl_conf::values:
  kernel.keys.root_maxkeys:
    ensure: absent
  • don't persist configuration on disk
sysctl_conf::values:
  net.ipv6.conf.all.disable_ipv6:
    value: '1'
    persist: false
  • add comment
sysctl_conf::values:
  vm.swappiness:
    value: '0'
    comment: 'disable swap'
  • don't apply changes with sysctl command (will be applied upon next reboot)
sysctl_conf::values:
  kernel.sem:
    value: '250 32000 256 256'
    apply: false
  • custom configuration file
net.ipv4.ip_forward:
  kernel.sem:
    value: '1'
    target: '/etc/sysctl.d/forwarding.conf'

Documentation

Generate documentation:

$ rake strings:generate

in markdown:

$ puppet strings generate --format markdown --out sysctl_conf.md