ansible/monitoring.yml

73 lines
1.9 KiB
YAML
Executable File

#!/usr/bin/env ansible-playbook
---
# Set variable adm_iface for all servers
- hosts: server
tasks:
- name: Register adm interface in adm_iface variable
shell: set -o pipefail && grep adm /sys/class/net/*/ifalias | sed "s|/sys/class/net/||" | sed "s|/ifalias:.*||"
register: adm_iface
check_mode: false
changed_when: true
args:
executable: /bin/bash
# Deploy Prometheus
- hosts: fyre.adm.crans.org
vars:
# Prometheus targets.json
prometheus:
node_targets: "{{ groups['server'] | list | sort }}"
ups_snmp_targets: [pulsar.adm.crans.org]
unifi_snmp_targets: "{{ groups['crans_unifi'] | list | sort }}"
blackbox_targets:
- https://crans.org
- https://www.crans.org
- https://grafana.crans.org
- https://wiki.crans.org
- https://pad.crans.org
apache_targets: [zamok.adm.crans.org]
snmp_unifi_password: "{{ vault_snmp_unifi_password }}"
grafana:
root_url: https://grafana.crans.org
ldap_bind_dn: "cn=grafana,ou=service-users,{{ ldap_base }}"
ldap_passwd: "{{ vault_ldap_grafana_passwd }}"
ldap_base: 'dc=crans,dc=org'
ldap_master_ipv4: '10.231.136.19'
ldap_user_tree: "cn=Utilisateurs,{{ ldap_base }}"
roles:
- prometheus
- prometheus-alertmanager
- prometheus-snmp-exporter
- prometheus-blackbox-exporter
- ninjabot
- grafana
# Monitor all hosts
- hosts: server,test_vm
roles:
- prometheus-node-exporter
# Export apache metrics
- hosts: zamok.adm.crans.org
roles:
- prometheus-apache-exporter
# Configure HP RAID monitoring
# You can list SCSI drives with `lsscsi -g`
- hosts: fyre.adm.crans.org,gateau.adm.crans.org
roles:
- smartd-hp-smartarray
# Monitor mailq with a special text exporter
- hosts: redisdead.adm.crans.org
roles:
- prometheus-node-exporter-postfix
# Monitor logs with mtail
- hosts: thot.adm.crans.org
roles:
- mtail