Role

The reactionner daemon issues notifications and launches event_handlers. This centralizes communication channels with external systems in order to simplify SMTP authorizations or RSS feed sources (only one for all hosts/services). There can be many reactionners for load-balancing and spare roles

Connexions with other daemons

The reactionner get it's configuration from the Arbiter daemon, on its 7769 port.

The configuration is the realm scheduler list where the reactionner will have to connect.

Mail server visibility

The reactionner launches notification plugins in order to notify contacts from host or checks alerts. Notification plugins are mainly based on the mail system, and so the reactionner server need a local MTA configured to relay emails to the contacts. The MTA configuration is up to the administrators.

Data

The reactionner get command from the schedulers.

It does not known about contacts objects. It only get commands to execute, and the commands are created by the schedulers

Reactionner connexion summary

SourceDestinationPortProtocolNote
ReactionnerSchedulers7768HTTPS 

 

 

Variable Descriptions

 

PropertyDefaultDescription
reactionner_nameN/AThis variable is used to identify the *short name* of the reactionner which the data is associated with.
addressN/AThis directive is used to define the address from where the main arbier can reach this reactionner. This can be a DNS name or a IP address.
port7772This directive is used to define the TCP port used bu the daemon.
spare0This variable is used to define if the reactionner must be managed as a spare one (will take the conf only if a master failed). The default value is *0* (master).
realmN/AThis variable is used to define the realm where the reactionner will be put. If none is selected, it will be assigned to the default one.
manage_sub_realms1This variable is used to define if the poller will take jobs from scheduler from the sub-realms of it's realm.
modulesN/AThis variable is used to define all modules that the reactionner will load.
reactionner_tagsNone

This variable is used to define the checks the reactionner can take. If no reactionner_tags is defined, reactionner will take all untagued notifications and event handlers. If at least one tag is defined, it will take only the checks that are also taggued like it.

By default, there is no reactionner_tag, so reactionner can take all untagued notification/event handlers (default).

   

Example Definition 

define reactionner{
  reactionner_name      Main-reactionner
  address               node1.mydomain
  port                  7769
  spare                 0
  realm                 All
  manage_sub_realms     0 ; Does it take jobs from schedulers of sub-Realms?
  min_workers           1 ; Starts with N processes (0 = 1 per CPU)
  polling_interval      1 ; Get jobs from schedulers each 1 second
  timeout               3 ; Ping timeout
  data_timeout          120 ; Data send timeout
  max_check_attempts    3 ; If ping fails N or more, then the node is dead
  check_interval        60 ; Ping node every minutes
  reactionner_tags      tag1
  modules               module1,module2
}
  • No labels