In an Icinga2 HA scenario like the one described in the documentation[*] the 
IDO-DB backend is usually a single point of failure.

There are a number of ways to work around that limitation, the documentation 
suggests a couple of them (a VIP pointing to a MySQL cluster, or disabling HA 
in the ido backend and having a db on each master).

Would it be better to have a single non-HA db on every master node? Will that 
have any effect on IcingaWeb2 since different instances will be talking to 
different databases?
Or would it be better to have a MySQL Cluster node on every master node, with 
the whole system acting as a single MySQL Cluster so all data is shared between 
all nodes?
What about PostgreSQL solutions?
In other words, do Icinga developers or experienced users have a preferred / 
recommended solution when there is a need to deploy Icinga2 in full HA?

This could also be related to the handling of split brain situations.
If every node has a local non-HA database and they lose connectivity between 
each other I’m assuming they would go split brain and every node will try to 
run every check and there is the possibility of double checks and double 
notifications and, depending on the network and the configuration, false alarms.
On the other hand, if the IDO DB backend is in HA mode and the Icinga2 
instances go split brain and one of them cannot access its configured IDO DB 
backend, will it consider itself “out of the cluster” and stop actively running 
checks and notifications?

[*] High-Availability Master with Clients, 
https://www.icinga.com/docs/icinga2/latest/doc/06-distributed-monitoring/#high-availability-master-with-clients

--
Luca Lesinigo
_______________________________________________
icinga-users mailing list
icinga-users@lists.icinga.org
https://lists.icinga.org/mailman/listinfo/icinga-users

Reply via email to