Version information
Start using this module
Add this module to your Puppetfile:
mod 'csail-smartd', '0.0.2'
Learn more about managing modules with a PuppetfileDocumentation
smartd
This is the smartd
module and class. It configures the smartd
daemon,
which comes with smartmontools, and works on FreeBSD and Debian-ish Linux
systems. If your hardware supports it, smartd can automatically probe
for the drives, but if they are hidden behind a RAID controller, it
will need additional help. The module includes a facter plugin to
identify drives hiding behind an LSI MegaRAID/Dell PERC controller on
Linux systems if you have the LSI proprietary MegaCli
tool installed;
we don't have any FreeBSD machines with this controller so haven't written
the necessary code to use FreeBSD's standard mfiutil(8) utility instead.
The shell_config
module is required to edit a Debian-specific configuration
file; other OS families do not require it.
The module automatically configures a virtual monit::monitor
resource
(tag => default) to keep track of smartd
. Note that smartd
can take
a very long time to (re)start, so if you have a large number of
disk devices (e.g., 200 on a big ZFS file server) you will need to adjust
monit
's startup delay.
Configuring smartd
The following parameters are defined for the smartd
class:
ensure
: has standard Puppet ensure semantics (and supportspurged
state if your package provider does) (defaultpresent
)autoupdate
: true if you want to automatically upgrade the package whenever the puppet agent runs (default false)package_name
: name of the package which containssmartd
(defaultsmartmontools
which is the only name we've seen on any OS)service_name
: name of the service thatsmartd
runs under (defaultsmartd
, which again is the only one we've ever seen)scan
: true if you wantsmartd
to automatically detect all of the SMART-capable drives in the system; otherwise false (default true)devices
: array of devices you want to explicitly configuresmartd
to examine (default none)device_opts
: hash of options to apply to each device instead of the default ones (default none)mail_to
: email address to mail alerts to (defaultroot
)schedule
: how frequently to send alerts (see thesmartd
manual page under the-M
option for more details) (defaultdaily
)config_file
: where thesmartd
configuration is stored (default is OS-specific)
Currently, drives behind an LSI MegaRAID controller will be automatically
probed and added to the smartd
configuration file, if the MegaCli
utility is installed. There is no way to turn this behavior off.
This is arguably a bug.
License
See the file LICENSE.
Contact
Support
None.
Dependencies
- csail/shell_config (>= 0.0.1)
Copyright 2012 Massachusetts Institute of Technology Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, provided that both the above copyright notice and this permission notice appear in all copies, that both the above copyright notice and this permission notice appear in all supporting documentation, and that the name of M.I.T. not be used in advertising or publicity pertaining to distribution of the software without specific, written prior permission. M.I.T. makes no representations about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty. THIS SOFTWARE IS PROVIDED BY M.I.T. ``AS IS''. M.I.T. DISCLAIMS ALL EXPRESS OR IMPLIED WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL M.I.T. BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.