geerlingguy.munin-node

Ansible Role: Munin Node

CI

This role installs munin-node, which is a monitoring tool, on RedHat/CentOS or Debian/Ubuntu servers.

Requirements

For RedHat/CentOS users, ensure the EPEL repository is installed before using this role. You can do this using the geerlingguy.repo-epel role.

Role Variables

Here are the available configuration variables and their default values:

  • munin_node_bind_host: "*"

    • This defines the IP address where munin-node will listen. You can use 127.0.0.1 (localhost) or * (all addresses). The default port is 4949.
  • munin_node_host_name: ''

    • Specify this if the Munin master shows an incorrect hostname when connecting to munin-node. Usually, the default should work fine.
  • munin_node_allowed_ips:

    • This is a list of IP addresses that can access the server. Use Python-style regular expressions and single quotes for escaping.
      • '^127.0.0.1$'
      • '^::1$'
  • munin_node_allowed_cidrs: []

    • List of allowed IP networks in CIDR format, like 10.0.0.0/8. Hosts in these networks can access the server.
  • munin_node_denied_cidrs: []

    • List of denied IP networks in CIDR format. Hosts in these networks will be blocked from accessing the server. This takes priority over allowed networks.

Configuring Munin Plugins

You can enable plugins by using the munin_node_plugins list. For example:

  • munin_node_plugins:
      • name: uptime

If the plugin name does not match the expected name, include a plugin field:

  • munin_node_plugins:
      • name: if_eth0
      • plugin: if_

Plugin settings

For extra configuration for your added plugins, use a hashmap with the plugin's name and its settings. For example:

  • munin_node_config: { "ps_test": { "env.regex": "bash", "env.name": "bash" } }

This will create a configuration file at /etc/munin/plugin-conf.d/ansible.conf with:

  • [ps_test]
    • env.regex bash
    • env.name bash

Installing External Plugins

You can also add external plugins using munin_node_install_plugins. These can be sourced from local files or downloaded. Example:

Dependencies

None.

Example Playbook

Here’s how you can use this role in a playbook:

  • hosts: servers
    • roles:
      • { role: geerlingguy.munin-node }

License

MIT / BSD

Author Information

This role was created in 2014 by Jeff Geerling, the author of Ansible for DevOps.

Rafał Trójniak ansible-galaxy@trojniak.net added the Munin plugin configuration.

Informazioni sul progetto

Munin node monitoring endpoint for RedHat/CentOS or Debian/Ubuntu.

Installa
ansible-galaxy install geerlingguy.munin-node
Licenza
mit
Download
25k
Proprietario
Father, author, developer, maker. Sometimes called "an inflammatory enigma". #stl #drupal #ansible #k8s #raspberrypi #crohns