icinga2/doc/2.4-setting-up-ido.md

1.7 KiB

Configuring IDO

The IDO (Icinga Data Output) modules for Icinga 2 takes care of exporting all configuration and status information into a database. The IDO database is used by a number of projects including Icinga Web.

There is a separate module for each database backend. At present only support for MySQL is implemented.

Setting up the database

First of all you have to create a database for Icinga 2:

# mysql -u root -p

mysql> CREATE DATABASE icinga;
Query OK, 1 row affected (0.01 sec)

mysql>  GRANT USAGE ON icinga.* TO 'icinga'@'localhost'
          IDENTIFIED BY 'icinga'
          WITH MAX_QUERIES_PER_HOUR 0
          MAX_CONNECTIONS_PER_HOUR 0
          MAX_UPDATES_PER_HOUR 0;

mysql>  GRANT SELECT, INSERT, UPDATE, DELETE, DROP, CREATE VIEW, INDEX, EXECUTE
          ON icinga.* TO 'icinga'@'localhost';

mysql>  FLUSH PRIVILEGES;

mysql> quit

After creating the database you can import the Icinga 2 IDO schema using the following command:

# mysql -u root -p icinga < /path/to/icinga-src/components/db_ido_mysql/schema/mysql.sql

Installing the IDO module

Once you've set up your database you have to install the icinga2-ido-mysql package using your distribution's package manager.

The package provides a new configuration file that is installed in /etc/icinga2/features-available/ido-mysql.conf. You will need to update the database credentials in this file.

You can enable the ido-mysql feature configuration file using i2enfeature:

# i2enfeature ido-mysql
Module 'ido-mysql' was enabled.
Make sure to restart Icinga 2 for these changes to take effect.

After enabling the ido-mysql feature you have to restart Icinga 2:

# /etc/init.d/icinga2 restart