-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Greetings all,

        I've been running a "simple" Icinga2 setup for a few months now.  It
took a bit to get things running, but I believe I understand how it's
working right now.  Currently I have a single Master node that runs
icinga2 and icingaweb2.  I have a number of clients also running
icinga2 so that I can do local checks on them.  I believe this is
called command bridge execution?

        I'm looking to break this up a bit into a hierarchical configuration.
 I'd like to set up a satellite node that would exist in a second data
center to handle all of the checks within that data center.  But I
still want clients to handle their own local checks, just passing them
on to the satellite or master that's local to the data center.  From
there the various satellites push that up to the master.  Setting up
the satellite seems straightforward enough as it's identical to
setting up one of the clients I already have.

        I've been reading the documentation, trolling the mailing lists,
hanging out on IRC, and I think I have it working now, but I want to
double check things.  So I have a bunch of questions which might help
me understand ...

- - Does the zones.conf file have to be synchronized between all masters
and satellites?  It seems like the answer is yes.  In addition, does
it need to be on all clients that are set up for command execution?

- - Does the ca.crt and ca.key need to be synchronized between all
masters and satellites?

- - I see there's a repository command in the cli, should I be using
this to sync between masters and satellites?  Will it handle the ca as
well?

- - Do clients that are performing command execution need to be
reconfigured with the satellite listed as the "master" for that client?

- - What features need to be enabled on the satellite?  I'm pretty sure
API is needed, but what about command?

My zones.conf file looks like this at the moment :

object Endpoint "master0.dc0.example.com" {
}

object Zone "dc0.example.com" {
  endpoints = [ "master0.dc0.example.com" ]
}

object Zone "global-templates" {
  global = true
}

object Endpoint "satellite1.dc1.example.com" {
  host = "10.0.1.4"
}

object Zone "dc1.example.com" {
  endpoints = [ "satellite1.dc1.example.com" ]
  parent = "dc0.example.com"
}

object Endpoint "client0.dc0.example.com" {
  host = "10.0.0.10"
}

object Zone "client0.dc0.example.com" {
  endpoints = [ "client0.dc0.example.com" ]
  parent = "dc0.example.com"
}

object Endpoint "client1.dc1.example.com" {
  host = "10.0.1.10"
}

object Zone "client1.dc1.example.com" {
  endpoints = [ "client1.dc1.example.com" ]
  parent = "dc1.example.com"
}


And the zones.d structure looks like this :

/etc/icinga2/zones.d
  global-templates/
    command-custom.conf
    commands.conf
    groups.conf
    notifications.conf
    satellite.conf
    services.conf
    templates.conf
    timeperiods.conf
    users.conf
  dc0.example.com
    hosts.comf
  dc0.example.com
    hosts.comf

It seems that now that I have this config in place, everything is
working.  Is this the correct way to handle this?

Thanks,

- -- 
- ---------------------------
Jason 'XenoPhage' Frisvold
xenoph...@godshell.com
- ---------------------------

"Any sufficiently advanced magic is indistinguishable from technology."
- - Niven's Inverse of Clarke's Third Law
-----BEGIN PGP SIGNATURE-----
Comment: GPGTools - http://gpgtools.org

iEYEARECAAYFAlXp/ykACgkQ8CjzPZyTUTTw1QCcCWlOOv3iwVQuxVrKPQKL6YLl
CNYAnj+7gQh8LKe605s4S2ZL/4Qh1sJG
=mCzO
-----END PGP SIGNATURE-----
_______________________________________________
icinga-users mailing list
icinga-users@lists.icinga.org
https://lists.icinga.org/mailman/listinfo/icinga-users

Reply via email to