Icinga2 Setup (Überlegungen)
- VM auf $server
- Debian Jessie
Konfiguration
- Pro zu überwachendem Host ein configfile, das per Salt generiert wird
- filename == node_id (FQDN)
- Elemente
- Name
- Rollen
- Loopback-IPs
- …?
Checks
- Vordefinierte Checks auf Icinga2-Server, die für Hosts mit bestimmten Eigenschaften (Hostname Rollen, …) ausgeführt werden
Auf dem Icinga2-Server ausgeführt
- ping v4/v6 auf Lookback-IPs
- Verfügbarkeit von zentralen Diensten
- DNS
- NTP
- Webseiten
- Mail
- Dings
- ping v6 für definierte Liste von Knoten von besonderem Interesse
- Ablauf von Zertifikaten (Liste aus pillar)
Auf den Nodes ausgeführt
Bedingt icinga2-client (per Salt verteilt) und SSL-Zertifikat für den Host (auch per Salt zu verteilen) zur Authentifikation ggü Icinga2-Server.
- Plattenplatz
- RAM
- CPU
- Load
- Uptime
- Verfügbare Updates?
- ggf. eingeschränkt auf Blacklist von unattended-upgrades
- ggf. eingeschränkt auf Alarmierung nur wenn älter als 24h oder nur wenn Security..
- Reboot notwenwendig weil neuer Kernel installiert?
- Müssen Dienste neugestartet werden, um neue Libraries zu nutzen (needrestart (aus Backports))
- Interface-Konfiguration OK? (ifquery -c -a)
Nach Rollen
- router
- Bird: läuft er?
- Bird: OSPF Neighbors
- Bird: iBGP Sessions
- Bird: eBGP Sessions
- batman
- Interfaces oben?
- keine unbekannten gateways online (rogue gw check), aber bekannte gateways online
- service respondd@$site läuft für alle konfigurierten Sites
- batman_gw
- DHCP-Server running und Pool ok
- Gateway aktiv wenn konfiguriert (BATMAN-Mode = server)
- fastd
- Status der Fastd Tunnel
- fastd_peers
- Peers-Repo aktuell?
checknodes.py ok (läuft per pre-receive script im gogs)
- influxdb
- läuft und ist per https erreichbar
- yanic
- läuft der Dienst für jede Site
- ist der Webserver auf Port 8080 erreichbar
Wenn konfiguriert
- Status der OpenVPN Tunnel
- Update-Status von Wordpress-Installationen (public.in.ffho.net)
- unifi controller (unifi.in.ffho.net)
- läuft der dienst
- für alle unifi-sites: letztes update der aps nicht älter als x
Alerting
- Per Mail an $ops-Liste
- Per Telegram-Bot in $Gruppe