Icinga: DB IDO (Database Icinga Data Output)
Il core di Icinga, per comunicare con il mondo esterno, per esportarne configurazione e stato, fa uso di un DB (MySQL o PostgreSQL).
DB IDO (Database Icinga Data Output) si occupa dell'integrazione con il database ed è un prerequisito per l'interfaccia web (e non solo).
Occorre installare il programma, creare il database, fornire i permessi all'utente utilizzato da icinga (banalmente icinga) e fornire la struttura del db:
zypper install icinga2-ido-mysql
dalla shell del DB si crea il DB icinga, l'utente icinga (TO 'icinga'@'localhost') con password icinga (IDENTIFYED BY 'icinga' ) ovviamente la password, in un ambiente di produzione, deve essere cambiata con una più sicura.
mysql -u root -p CREATE DATABASE icinga; GRANT SELECT, INSERT, UPDATE, DELETE, DROP, CREATE VIEW, INDEX, EXECUTE ON icinga.* TO 'icinga'@'localhost' IDENTIFIED BY 'icinga'; exit
Si crea la struttura delle tabelle
mysql -u root -p icinga \ < /usr/share/icinga2-ido-mysql/schema/mysql.sql
Occorre poi modificare il file /etc/icinga2/features-available/ido-mysql.conf per inserire le corrette credenziali di accesso al db. In questo caso, si sono utilizzati di valori di default, basta togliere i commenti alle righe che seguono
library "db_ido_mysql" object IdoMysqlConnection "ido-mysql" { user = "icinga" password = "icinga" host = "localhost" database = "icinga" }
Non resta che abilitare le funzionalità richieste dal modulo e riavviare Icinga.
icinga2 feature enable ido-mysql icinga2 feature enable command systemctl restart icinga2