Ansible role for configuring Monit. Sample usage see example.yml.
Install this role with ansible-galaxy.
$ ansible-galaxy install pgolm.monit
An Ansible ready host.
monit_cycle
: Time between checks in seconds. Defaults to120
.monit_log_destination
: Where the log will be written. Can be a path to a file or "syslog", which will write to syslog daemon. Defaults to/var/log/monit.log
.monit_state_file
: State file path. Defaults to/var/lib/monit/state
.monit_id_file
: Id file path. Defaults to/var/lib/monit/id
.monit_eventqueue_dir
: Event queue directory path. It is only used when this variable is defined. Defaults to/var/lib/monit/events
.monit_eventqueue_slots
: Event queue slots. It is only used whenmonit_eventqueue_dir
is defined. Defaults to100
.monit_services
: List of hashes of services to be monitorized by monit.name
: Name of the process or host.type
: Type of monitorization, "process", "process_by_name", "host", "filesystem" and "system" are supported.target
: Target of monitorization. Should be a pidfile, processname, an address or undefined, depending on thetype
of service.start
: Command that starts the service. Optional.stop
: Command that stop the service. Optional.user
: Linux username of the user starting the program. Optional.group
: Linux group of the user starting the program. Optional.rules
: List of rules to be included in this service. Optional.
monit_service_delete_unlisted
: Remove existing service monitorization configurations not declared in theservices
. Defaults totrue
.monit_mail_enabled
: Enable mail alerts. Defaults tofalse
.monit_mailserver_host
: Mailserver host address. Defaults tolocalhost
.monit_mailserver_port
: Mailserver host port. Defaults to25
.monit_mailserver_user
: Username for authentication on mailserver.monit_mailserver_password
: Password for authentication on mailserver.monit_mailserver_timeout
: Timeout for mailserver connection. Defaults to5
.monit_mailserver_ssl_version
: If defined, monit will use this algorithm for SSL connection to the mail server. Possible values areSSLAUTO
,SSLV2
,SSLV3
,TLSV1
,TLSV11
,TLSV12
.monit_alert_address
: Mail address where the alerts will be sent to.monit_alert_mail_format
: A hash of options for mail-format.from
: Sender mail address.reply-to
: A reply-to mail address.subject
: Mail subject.message
: Mail message body.
monit_webinterface_enabled
: Enable monit web interface. Defaults totrue
.monit_webinterface_bind
: IP address to bind web interface. Defaults to0.0.0.0
(listen for external requests).monit_webinterface_port
: Port for web interface. Defaults to2812
.monit_webinterface_rw_group
: Define group of users allowed to read and write on web interface. It is only applied when defined and is empty by default.monit_webinterface_r_group
: Define group of users allowed to read on web interface. It is only applied when defined and is empty by default.monit_webinterface_acl_rules
: List of ACL rules for the web interface, such as "localhost" or "hauk:password". It is only applied when defined and is empty by default.monit_apache_rules
: List of monitoring rules for apache service. You should adjust them to your needs.monit_apache_groups
: List of groups for the apache service. This list is empty by default.monit_memcached_rules
: List of monitoring rules for memcached service. You should adjust them to your needs.monit_memcached_groups
: List of groups for the memcached service. This list is empty by default.
This role writes a monit_services_configured
on /etc/ansible/facts.d/monit.fact
in order to keep track of the configured monitors between different plays. This helps us removing unused monitors.
MIT
Feel free to contribute by add issue and pull request.