I have a master-satellite-agent setup with icinga director installed on the master and on the satellite. So far this is working.
Now I am wondering: Is there a way to synchronize data from my master’s director db to my satellite’s director db? Specifically I am interested in synchronizing only those parts of the db that point to a certain cluster zone. I guess a necessity which comes up here is to sync service (templates, sets, …) that do not have a cluster zone set. I thought of setting up multiple db’s and the (different) satellites connecting to the different db’s on my master but here again I see the issue of e.g. services getting doubly declared - or being undeclared in some (other) db.
Ultimately I’d like to synchronize in both directions. If my colleagues define something on the satellite’s director I’d want this to appear in my master’s director. Unfortunately I see a user privilege problem here: Users on the satellite are implicitly editing my master’s director. So, I am not sure if this is particularly wanted but if I got some sort of “db merge request from satellite xy” this issue may be resolved.
This question may be “generalized”: The same question may be applied e.g. to the certificate monitoring icingaweb2-plugin which i wish to synchronize between machines (here I’d like to have it one-way towards the master x509-db).
How would you (try to) do it? So far our workflow is: Define stuff in master’s director, results are being synced to satellite’s icinga2 (not director).
EDIT: I just thought: This would generally change how the master and satellite connect because it would be master director → satellite director → satellite icinga2 (+ defined agents…) instead of master director → master icinga2 → satellite icinga2 (+ agents). But would this not be a desirable setup?