Version information
This version is compatible with:
- Puppet Enterprise 2023.2.x, 2023.1.x, 2023.0.x, 2021.7.x, 2021.6.x, 2021.5.x, 2021.4.x, 2021.3.x, 2021.2.x, 2021.1.x, 2021.0.x, 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.1 < 8.0.0
- , , , , , ,
Tasks:
- reload
Start using this module
Add this module to your Puppetfile:
mod 'silug-zram', '1.0.4'
Learn more about managing modules with a PuppetfileDocumentation
zram
Table of Contents
- zram
- [Table of Contents](#table-of-contents)
Overview
This module configures zram swap using udev rules (no init scripts or systemd units needed).
Module Description
Want to know more about zram? Read the Linux kernel documentation.
Setup
What zram affects
Creates the following files:
- /lib/udev/zram
- /etc/udev/rules.d/01-zram.rules
- /etc/modprobe.d/zram.conf
Finally, it loads the zram module.
Setup Requirements
This module requires puppetlabs-stdlib and puppet-kmod.
Beginning with zram
Make sure you are using a kernel that includes the zram module.
Usage
class { 'zram': }
Reference
The zram
class accepts the following parameters:
-
numdevices
Number of zram devices. Defaults to the number of processors ($facts['processorcount']
). -
disksize
Size of zram devices. Defaults to half of memory divided bynumdevices
.
See REFERENCE.md
for more details.
Limitations
This module has been tested on a number of systems. (See
metadata.json
for a full list.) It should work on any
Linux distribution that includes the zram kernel module.
Development
Send me a pull request on GitHub.
Reference
Table of Contents
Classes
zram
: Configures and loads zram kernel modulezram::config
: Configuration for thezram
modulezram::install
: Add or remove packages to enable zram managementzram::load
: Loads the zram kernel module
Tasks
reload
: Reloads the zram kernel module
Classes
zram
zram
This module configures zram using udev rules (no init scripts or systemd units needed).
Examples
include zram
Parameters
The following parameters are available in the zram
class:
numdevices
Data type: Integer
Number of zram devices. Defaults to the number of processors ($facts['processorcount']
).
Default value: $facts['processorcount']
disksize
Data type: Integer
Size of zram devices. Defaults to half of memory divided by numdevices
.
Default value: (
zram::config
Configuration for the zram
module
zram::install
Add or remove packages to enable zram management
Parameters
The following parameters are available in the zram::install
class:
required
Data type: Variant[ Undef, String[1], Array[String[1]] ]
Packages required for zram to function
Default value: undef
conflicts
Data type: Variant[ Undef, String[1], Array[String[1]] ]
Packages that conflict with zram
Default value: undef
required_ensure
Data type: String[1]
ensure
attribute of required
packages
Default value: 'installed'
conflicts_ensure
Data type: String[1]
ensure
attribute of conflicts
packages
Default value: 'absent'
zram::load
Loads the zram kernel module
Tasks
reload
Reloads the zram kernel module
Supports noop? true
Parameters
verbose
Data type: Optional[Boolean]
Enable verbose output
What are tasks?
Modules can contain tasks that take action outside of a desired state managed by Puppet. It’s perfect for troubleshooting or deploying one-off changes, distributing scripts to run across your infrastructure, or automating changes that need to happen in a particular order as part of an application deployment.
Tasks in this module release
Dependencies
- puppetlabs-stdlib (>= 4.25.0 < 9.0.0)
- puppet-kmod (>= 2.1.0 < 4.0.0)
- puppetlabs-augeas_core (>= 1.0.0 < 2.0.0)