- Description
- Setup - The basics of getting started with sysctl
- Usage - Configuration options and additional functionality
- Reference - An under-the-hood peek at what the module is doing and how
- Limitations - OS compatibility, etc.
- License
- Authors
This module manages the sysctl configuration (in /etc/sysctl.conf by default) and runtime values.
To set a sysctl value in the configuration file and the runtime value. By default
sets the configuration in /etc/sysctl.conf by can be customized with the target
parameter.
sysctl::value { 'vm.nr_hugepages':
value => '1583'
}
The basic usage by setting the configuration file and runtime value.
sysctl::value { 'vm.nr_hugepages':
value => '1583'
}
When setting a key that contains multiple values, use a tab to separate the values.
sysctl::value { 'net.ipv4.tcp_rmem':
value => "4096\t131072\t131072",
}
If another config file then the default /etc/sysctl.conf is required.
sysctl::value { 'vm.nr_hugepages':
value => '1583',
target => '/etc/sysctl.d/mysysctl.conf',
}
To avoid duplication the sysctl::value calls multiple settings can be managed with
the sysctl::values
resource.
$my_sysctl_settings = {
'net.ipv4.ip_forward' => { value => 1 },
'net.ipv6.conf.all.forwarding' => { value => 1 },
}
# Specify defaults for all the sysctl::value to be created
$my_sysctl_defaults = {
require => Package['aa']
}
create_resources(sysctl::value, $my_sysctl_settings, $my_sysctl_defaults)
# or by using the sysctl::values resource
sysctl::values { 'multiple':
args => $my_sysctl_settings,
defaults => $my_sysctl_defaults,
}
You can configure hiera data and pass it to the sysctl::values
resource.
sysctl::values:
net.ipv4.ip_forward:
value: 1
net.ipv6.conf.all.forwarding:
value: 1
Here, include a complete list of your module's classes, types, providers, facts, along with the parameters for each. Users refer to this section (thus the name "Reference") to find specific details; most users don't read it per se.
For an extensive list of supported operating systems, see metadata.json
The 0.0.12 release is the last version that supports Puppet 3.
Copyright (C) 2011 Immerda Project Group
sysctl is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version.
sysctl is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with sysctl. If not, see http://www.gnu.org/licenses/.
This module is based on work by mh (mh@immerda.ch). The following contributors have contributed to this module, in alphabetical order.
- Artem Sidorenko (artem-sidorenko)
- Beefsalad (beefsalad)
- Decibelhertz (decibelhertz)
- Dominic (dol)
- Duncan Ward (ddub)
- Duritong (duritong)
- Emilien Macchi (EmilienM)
- Jason Hancock (jasonhancock)
- Merritt Krakowitzer (mkrakowitzer)
- Mh (mh@immerda.ch)
- Nicolas Zin (nicolas.zin@savoirfairelinux.com)
- Patrick Debois (jedi4ever)
- Sebastian Reitenbach (buzzdeee)
- Stefan Möding (smoeding)
- Thracky (Thracky)
- Tobias Urdin (tobias-urdin)