Puppet Module for Network UPS Tools (NUT)
APACHE-2.0 License
This module ensures that the Network UPS Tools (NUT) are installed and configured.
RHEL/CentOS, Ubuntu, Debian and OpenBSD are supported using Puppet 5 or later.
This module will potentially configure your host to respond to power failures.
On RHEL/CentOS platforms you will need to have access to the EPEL repository by using stahnma/epel or by other means.
In the very simplest case, you can just include the following:
include ::nut
The above example is not terribly useful as it does not include any UPS devices, so it should be extended to something like the following:
include ::nut
::nut::ups { 'sua1000i':
driver => 'usbhid-ups',
port => 'auto',
}
::nut::user { 'local':
password => 'password',
upsmon => 'master',
}
::nut::user { 'remote':
password => 'password',
upsmon => 'slave',
}
::nut::client::ups { 'sua1000i@localhost':
user => 'local',
password => 'password',
}
If the host does not have any UPS device directly attached, but is powered by one which is controlled by another host such as the one above, use the following:
include ::nut:client
::nut::client::ups { 'sua1000i@remotehost':
user => 'remote',
password => 'password',
}
The reference documentation is generated with puppet-strings and the latest version of the documentation is hosted at https://bodgit.github.io/puppet-nut/ and available also in the REFERENCE.md.
This module has been built on and tested against Puppet 5 and higher.
The module has been tested on:
The module relies on PDK and has both rspec-puppet and beaker-rspec tests. Run them with:
$ bundle exec rake spec
$ PUPPET_INSTALL_TYPE=agent PUPPET_INSTALL_VERSION=x.y.z bundle exec rake beaker:<nodeset>
Please log issues or pull requests at github.