Distributed monitoring Setup

This forum was archived to /woltlab and is now in read-only mode.
  • Hey,


    I'm new here so if I do this wrong please correct me :-)


    I'm trying to build a setup spanning multiple data centers. For this case I'll call them dc1 and dc2.


    My plan is to create a zone that spans dc1 and dc2, this zone will include a HA master setup with a master in dc1 and a master in dc2.


    In every data center I will create data center zone which will be called the respective data center names, these zones both will contain 2 satellites. The clients will be placed in these under these data center zones. All clients and satellites are able to reach both masters.


    I would actually like to config sync everything, so config sync to the satellites which config sync to the clients. I would like to hear from you if this is a smart move and if this is possible.


    I have build a similair setup currently which works with command execution endpoints, this sadly following the exact documentation on the docs gives me a error of a duplicate device...

  • I guess you followed this doc : https://www.icinga.com/docs/ic…er-satellites-and-clients


    However, if I understand well, you want to build a HA architecture with two servers that are in two diffrents places (i.e datacenter) ?

    I'm not sure if this is efficient and recommended. I guess it's better if all servers are in the same place. Maybe someone can confirm, or not, my toughts

  • I'm not sure if this is efficient and recommended.

    2 Masters, one at each DC, running in HA / Load sharing mode *is* recommended and efficient.

    • Watch out: Only one of the masters is the configuration master, in case you are using zones.d/zone config files instead of the director.
    • Think about what you do with the SQL-Server redundancy, you did not mention that by now.
    • Below the two masters you would have the satellite zones Satellite-DC1 and Satellite-DC2, if you like with two endpoints in them each - again forming a load sharing scenario.
    • Below the respective Satellite Zone you would have N Client Zones that actually execute the checks.
    • That way, The master sees both datacenters but each datacenter only sees the resources related to it.
  • Hi,


    I hate to hijack this thread (if it can be considered that), but I feel that my problem may be pertinent to @tdmike's implementation with his HA setup.


    Regarding the SQL-Server redundancy that sru mentioned, how exactly do you set that up? I'd like to point out this excerpt from the docs:



    For the line 1, since the DB IDO feature by default only runs on one node, does that mean it must be enabled for the secondary master? If so, does it starting working by default? In my instance, I can't seem to get it working with my primary master and secondary master both having the ido_mysql feature enabled with enable_ha = true. I get the error saying "Backend Icinga2 is not running" and the idodb doesn't seem to be connected.


    For line 3, it mentioned that all endpoint will have the DB IDO feature enabled and "connect to the configured database". How would that be set up?

  • You need to enable_ha = true for the IDO_XXX Feature on both masters.

    Both masters will agree about the active DB Master then (the only one that writes to the database).

    But icinga2 is a pure application server and thus you need to setup your sql cluster using some vip-solution on your own.

    In other words:

    Have some solution with an external sql server (cluster), with both masters having the possibility to write to that same IP.

  • Quote

    But icinga2 is a pure application server

    Hmm, so even if icinga2 is a pure application server, it can have a local database until you decide to have an HA cluster setup, at which point you will need to have an external sql server? Meaning that it wouldn't make sense to have the sql server cluster located on one of the masters for both masters to write to?

  • 2 Masters, one at each DC, running in HA / Load sharing mode *is* recommended and efficient.

    • Watch out: Only one of the masters is the configuration master, in case you are using zones.d/zone config files instead of the director.
    • Think about what you do with the SQL-Server redundancy, you did not mention that by now.
    • Below the two masters you would have the satellite zones Satellite-DC1 and Satellite-DC2, if you like with two endpoints in them each - again forming a load sharing scenario.
    • Below the respective Satellite Zone you would have N Client Zones that actually execute the checks.
    • That way, The master sees both datacenters but each datacenter only sees the resources related to it


    • Would you advise to use director ?
    • We will be using MySQL with pacemaker for HA

    The post was edited 1 time, last by tdmike ().

  • If you are alone and have a smaller environment, use config files.

    If you want your environment to be managed by other persons, use the director.

    If you have a really big environment, use the director. In addition, consider to use puppet or similar to

    create the host objects in config files.