Installs munin, a monitoring system, on RedHat/CentOS/Rocky Linux or Debian/Ubuntu Linux servers.
If you are running a RedHat-based distribution, you need to install the EPEL repository, which can be simply installed via the geerlingguy.repo-epel
role.
If you would like to view munin's graphs and output via HTTP, you will need an HTTP server like Apache or Nginx running.
Available variables are listed below, along with default values (see defaults/main.yml
):
munin_packages:
- python3-passlib
- munin
Packages installed for Munin. If you are running Python 3, you should override this variable and set the first item to python3-passlib
.
munin_dbdir: /var/lib/munin
munin_htmldir: /var/www/html/munin
munin_logdir: /var/log/munin
munin_rundir: /var/run/munin
munin_includedir: /etc/munin/conf.d
Some default locations for Munin-generated files, configurations, logs, etc.
munin_html_strategy: cron
munin_graph_strategy: cron
munin_max_processes: 12
See the official Munin documentation for munin.conf for more information on these and other optional directives.
munin_cron_job: present
Determines whether the munin cron job (which runs every 5 minutes) should be active. By setting this to absent
, you can leave munin installed and configured on your server but effectively disable it. This allows quick enabling or disabling for munin monitoring.
munin_admin_user: munin
munin_admin_password: munin
These values will be used to generate a user via htpasswd under which the munin pages will be password protected with basic HTTP authentication. (Note: This method only works when Munin is running under default Apache configurations; if you use Nginx or a customized Apache server, you will need to configure authentication on your own).
munin_hosts:
- name: "localhost"
address: "127.0.0.1"
extra: ["use_node_name yes"]
A listing of hosts to which munin will connect and monitor. Each item in the list will be added to your munin configuration like the following (assuming you're using the above example):
[localhost]
address: 127.0.0.1
use_node_name yes
See documentation for Munin Node Definitions for more details as to what values to use here.
munin_alerts:
- name: "JohnDoe"
email: "[email protected]"
subject: "Munin-notification for ${var:group} :: ${var:host}"
level: "warning critical"
You can configure email alerts using the munin_alerts
variable.
None.
- hosts: servers
roles:
- geerlingguy.munin
MIT / BSD
This role was created in 2014 by Jeff Geerling, author of Ansible for DevOps.