Puppet module for mackerel-agent
Puppet Ruby HTML
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
manifests
spec
templates
test
.envrc.example
.fixtures.yml
.gitignore
.travis.yml
CHANGELOG.md
CONTRIBUTING.md
Gemfile
LICENSE
Puppetfile
README.md
Rakefile
Vagrantfile
metadata.json

README.md

Puppet module for mackerel-agent

Puppet Forge Dependency Status Build Status

Table of Contents

  1. Overview - What is the mackerel_agent module?
  2. Setup - The basics of getting started
  3. Usage - How to use the module
  4. Limitations - OS compatibility, etc.
  5. Development - Guide for contributing to the module

Overview

This Puppet module install and configure mackerel-agent.

Setup

Install via Puppet Forge:

$ puppet module install tomohiro-mackerel_agent

Usage

class { 'mackerel_agent':
  apikey              => 'Your API Key',
  roles               => ['service:web', 'service:database'],
  host_status         => {
    on_start => 'working',
    on_stop  => 'poweroff'
  },
  ignore_filesystems  => '/dev/ram.*',
  use_metrics_plugins => true,
  use_check_plugins   => true,
  metrics_plugins     => {
    apache2     => '/usr/local/bin/mackerel-plugin-apache2',
    php-opcache => '/usr/local/bin/mackerel-plugin-php-opcache'
  },
  check_plugins       => {
    access_log => '/usr/local/bin/check-log --file /var/log/access.log --pattern FATAL',
    check_cron => '/usr/local/bin/check-procs -p crond'
  }
}

Hiera

mackerel_agent::apikey: 'Your API Key'
mackerel_agent::roles:
  - 'service:web'
  - 'service:database'
mackerel_agent::host_status:
  on_start: working
  on_stop: poweroff
mackerel_agent::ignore_filesystems: '/dev/ram.*'
mackerel_agent::use_metrics_plugins: true
mackerel_agent::use_check_plugins: true
mackerel_agent::metrics_plugins:
  apache2: '/usr/local/bin/mackerel-plugin-apache2'
  php-opcache: '/usr/local/bin/mackerel-plugin-php-opcache'
mackerel_agent::check_plugins:
  access_log: '/usr/local/bin/check-log --file /var/log/access.log --pattern FATAL'
  check_cron: '/usr/local/bin/check-procs -p crond'

Limitations

These operation systems are supported.

  • RHEL 6
  • CentOS 6
  • Debian 7
  • Ubuntu 14.04

The person who want to add an operating system to supported list should implement it himself.

Development

Requirements

  • Puppet 3.7 or later
  • librarian-puppet

Setup development environments

Install dependencies:

$ bundle install --path vendor/bundle
$ bundle exec librarian-puppet install

You can run smoke tests:

$ export MACKEREL_API_KEY="your api key" # Export a your mackerel API key
$ vagrant up
$ vagrant provision

Testing

Unit tests:

$ bundle exec rake spec

Acceptance tests:

$ export DOCKER_HOST=tcp://your-docker-host-ip:port
$ BEAKER_set=centos-6-x64 bundle exec rake beaker

Contributing

See CONTRIBUTING guideline.

LICENSE

© 2014 - 2016 Tomohiro TAIRA.

This project is licensed under the Apache License, Version 2.0. See LICENSE for details.