Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

When all configurations are created, the Arbiter sends them to the N active Schedulers.

A Scheduler can start processing checks once it has received and loaded it's configuration without having to wait for all schedulers to be ready.

For larger configurations, having more than one Scheduler, even on a single server is highly recommended, as they will load their configurations (new or updated) faster.


The Arbiter also creates configurations for satellites (pollers, reactionners and brokers) with links to Schedulers so they know where to get jobs to do.

 

After sending the configurations, the Arbiter begins to watch for orders orders (called external command) from the users and is responsible for monitoring the availability of the satellites.

...

The Shinken Enterprise architecture is a high availability one. Before looking at how this works, let's take a look at how the load balancing works if it's now already done.

 

Nobody is perfect. A server can crash, an application too. That is why administrators have spares: they can take configurations of failing elements and reassign them.

For the moment the only daemon that does not have a spare is the Arbiter, but this will be added in the future. The Arbiter regularly checks if everyone is available. If a scheduler or another satellite is dead, it sends its conf to a spare node, defined by the administrator.

  • All satellites are informed by this change so they can get their jobs from the new element and do not try to reach the dead one.
  • If a node was lost due to a network interruption and it comes back up, the Arbiter will notice and ask the old system to drop its configuration.

The availability parameters can be modified from the default settings when using larger configurations as the Schedulers or Brokers can become busy and delay their availability responses.

The timers are aggressive by default for smaller installations . ( See daemon Daemons configuration parameters for more information on the three timers involved ). 

External commands dispatching

The administrator needs to send orders to the schedulers (like a new status for passive checks).

In Shinken Enterprise, the administrator just sends the order to the Arbiter, that's all. External commands can be divided into two types :

  • commands that are global to all schedulers.
  • commands that are specific to one element (host/check).

For each command, Shinken knows if it is global or not. :

  • If global, it just sends orders to all schedulers.
  • For specific ones instead it searches which scheduler manages the element referred by the command (host/check) and sends the order to this scheduler.

When the order is received by schedulers they just need to apply them.

...