Skip to content

Commit

Permalink
README/doc cleanup
Browse files Browse the repository at this point in the history
  • Loading branch information
Joshua Hoblitt committed Sep 14, 2013
1 parent 2a24156 commit 7c27501
Show file tree
Hide file tree
Showing 4 changed files with 82 additions and 32 deletions.
21 changes: 9 additions & 12 deletions Modulefile
Original file line number Diff line number Diff line change
@@ -1,14 +1,11 @@
name 'csail-smartd'
version '0.0.1'
source 'http://tig.csail.mit.edu/git-public/smartd.git'
author 'MIT Computer Science & Artificial Intelligence Laboratory'
name 'jhoblitt-smartd'
version '1.0.0'

author 'Joshua Hoblitt <[email protected]>'
license 'MIT'
summary 'Configures the smartd daemon from smartmontools'
description 'This module configures smartd, the monitoring daemon
from smartmontools. It tries to do so reasonably automatically, but
sometimes needs administrative help. It also includes a facter plugin
for detecting and identifying disks hiding behind an LSI MegaRAID/Dell PERC
RAID controller (currently only implemented for Linux).'
project_page 'http://tig.csail.mit.edu/wiki/TIG/PuppetAtCSAIL'
project_page 'https://github.com/jhoblitt/puppet-smartd'
source 'https://github.com/jhoblitt/puppet-smartd'
summary 'Manages the smartmontools package including the smartd daemon'
description 'Manages the smartmontools package including the smartd daemon'
dependency 'csail/shell_config', '>= 0.0.1'
dependency 'puppetlabs/stdlib', '>=4.1.0'
dependency 'puppetlabs/stdlib', '>= 4.1.0'
89 changes: 71 additions & 18 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,42 +3,95 @@ Puppet smartd Module

[![Build Status](https://travis-ci.org/jhoblitt/puppet-smartd.png)](https://travis-ci.org/jhoblitt/puppet-smartd)

#### Table of Contents

1. [Overview](#overview)
2. [Description](#description)
3. [Usage](#usage)
4. [Limitations](#limitations)
* [Tested Platforms](#tested-platforms)
5. [Support](#support)


Overview
--------

Manages the smartmontools package including the smartd daemon


Description
-----------

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.
Installs the [smartmontools](http://smartmontools.sourceforge.net/) package and
enables the `smartd` service.

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.

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.

Examples
--------
It is planned that in a future release the `megaraid` specific facts will be
migrated into the
[puppet-megaraid](https://github.com/jhoblitt/puppet-megaraid) module.`

### Forked

This is a fork of
[`csail/smartd`](http://tig.csail.mit.edu/wiki/TIG/PuppetAtCSAIL) that was
intially made primarily to fix support of probing `SATA` drives behind a LSI
Megaraid controllers. The author has been aware of the fork and it's hoped
that the two module can be merged. Since the initial fork, a number of small
API changes have been made to improve usage.


Usage
-----

### Basic Usage

include smartd

class{ 'smartd': }

### All Parameters

class{ 'smartd':
ensure => 'present',
package_name => 'smartmontools',
service_name => 'smartd',
service_ensure => 'running',
config_file => '/etc/smartd.conf',
devicescan => true,
devicescan_options => '-H -m [email protected]',
devices => [ '/dev/sg1', '/dev/sg2' ],
device_opts => { '/dev/sg1' => '-o on -S on -a', '/dev/sg2' => '-o on -S on -a' },
mail_to => 'root',
warning_schedule => 'diminishing',
}


Limitations
-----------

### Tested Platforms

These are the platforms that have had integration testing since the fork.

* el6.x


Support
-------

Please log tickets and issues at [github](https://github.com/jhoblitt/puppet-smartd/issues)

License
-------
See the file LICENSE.

Contact
-------
Joshua Hoblitt <[email protected]>
2 changes: 1 addition & 1 deletion manifests/init.pp
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# == Class: smartd
#
# install and configure the smartmontools monitoring daemon
# Manages the smartmontools package including the smartd daemon
#
# === Parameters
#
Expand Down
2 changes: 1 addition & 1 deletion manifests/params.pp
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# == Class: smartd::params
#
# Provides parameters for the smartd module
# This class should be considered private.
#
# === Authors
#
Expand Down

0 comments on commit 7c27501

Please sign in to comment.