Installation Icinga2 with DB

Hello all,

If I’m in the wrong section, please move me.

Unfortunately, I don’t quite understand the documentation for Icinga2 and DB.
I would like to set up a completely new Icinga2 in order to avoid taking old loads with me.
Do I now not need a database for Icinga2 if I want to run it later as a satellite or agent?
Until now you always had to install a database, where does the database schema for Icinga2 come from? Is it simply missing from the documentation for Icinga2?
Furthermore, the question for me is, do I have to install Icingaweb2, or is it enough if I install Icinga DB Web?

In the blogpost, it is stated as a requirement:

Icinga 2 (>= v2.13.4)
Icinga Web 2 (>= v2.9)
Redis (>= 6.2)
Icinga DB (Documentation)
Icinga DB Web (Documentation)

I have to say, like other colleagues, that your documentation is often confusing because something is missing or misspelled.
But I really enjoy working with this tool.



Yes, Icinga2 still needs a database, this was previously done with IDO and MySQL. This is only applicable for your master icinga2 instance, if you want to run it as a satellite or agent, you only need icinga2 in a distributed setup.

For the icingadb itself, you need the icingadb, icingadb-redis and mysql package. The schema for mysql comes within the icingadb rpm.

mysql -u root -p icingadb </usr/share/icingadb/schema/mysql/schema.sql

this is stated in the docs as well → Here

You need to enable the feature on your master instance to enable the icingadb and set the connection details.

If you want to use the icingadb-web module, you need icingaweb2 as a base, yes. Like with all modules, icingadb-web is another module that can be installed. So you can run the classic monitoring module together with the new icingadb-web module.

It you find something confusing or missing in the docs, open an issue on github, or even better, submit a PR to improve the docs


I pasted this comment in my shell… works fine… but in my setup screen from icinga2 my installation-assistant tells me “ido schema not found in db”.

If I reenter this command to import the schema I get following message under Debian 11.4: “Table host alreadys exists”.

Where is the problem?

If you’re talking about the web-based installation assistant (wizard) then you might have chosen to install the monitoring module instead or in addition to the icingadb module.

The monitoring module requires the IDO schema, that’s the old database backend.

The icingadb module requires the equally named schema, that’s the successor of the IDO.

If you only choose icingadb, the wizard should let you pass.

1 Like

I think I just struggled with the same problem.

The “monitoring” module is selected by default, though (as opposed to most of the others), I think this is slightly unintuitive.

After clicking through the install now I have a more or less empty web interface (no default checks of e.g. the host icinga is running on), is this a result of not selecting the monitoring plugin, or something unrelated (last install was on Debian, this here on Ubuntu)?

That is an expected behavior after installing Icingaweb, by default the monitoring module get selected to get started but you can install the Icingadb-Web Module as well. You need a running icinga instance which connects to a database (IDO or IcingaDB) and point your web to it.