Versions Compared

Key

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

Role

The arbiter daemon reads the configuration from the synchronizer. It divides it into Le démon arbiter lit la configuration du synchronizer. Il la divise en N parts (N schedulers = N parts), and distributes them to the appropriate et les distribue au démon Shinken Enterprise daemons. Additionally, it manages the high availability features: if a particular daemon dies, it re-routes the configuration managed by this failed daemon to the configured spare. Finally, it receives input from users  or passive check results and routes them to the appropriate daemon. Passive check results are forwarded to the Scheduler responsible for the check. There can only be one active arbiter with other arbiters acting as hot standby spares in the architecture.

Connexion with the synchronizer

approprié. Il gère également la notion de haute disponibilité : si un démon en particulier meurt, il renvoie la configuration géré par le démon mort à son spare défini qui reçoit les informations des utilisateurs ou les résultats de checks passifs et les routent vers le démon approprié . Les résultats de checks passifs sont renvoyés au Scheduler responsable du check. Il ne peut y avoir qu'un seul arbiter actif avec les autres arbiters jouant le rôle de spare en standby 

Connexion avec le synchronizer

La communication entre l'arbiter et le synchronizer est faite sur le port standard du The communication between the arbiter and the synchronizer is done on the standard port of the synchronizer (7765).

Connexion

...

avec les autres démons

Ce démon est utilisé pour vérifier et distribuer la configuration aux autres démons, sauf au Synchronizer. Cette connexion sur le port standard des autres démons, et utilise une connexion HTTPS si ceux-ci l'ont prévu

Image Added

Données

Ce démon stocke la totalité du système de configuration en mémoire. Il a accès à tous les noms de serveurs, adresse, type et commande définie pour les vérifier. 

Il stocke également en mémoire les contacts définis, qui doivent recevoir les notifications pour les hôtes et services définis.

Résumé des connexions de l'Arbiter 

Démon sourceDestinationPortProtocole

This daemon is used to check and dispatch configuration to the other daemons, but not to the Synchronizer. The connexion is done on the standard port of the other daemons, and will use a HTTPS connexion if the other daemons are defined to use it.

 

Image Removed

Data

This daemon is hosting the whole system configuration into memory. It has access to all server names, address, types, and also the defined command used to check them.

It also hosts in memory the defined contacts that should receive notification for the defined hosts and services.

Arbiter connexion summary

Source daemonDestinationPortProtocolNote
ArbiterSynchronizer7765HTTPS 
ArbiterScheduler7768HTTPS 
ArbiterPoller7771HTTPS 
ArbiterReactionner7769HTTPS 
ArbiterReceiver7773HTTPS 
ArbiterArbiter7770HTTPSOnly if there is an arbiter slave, and only from the master to the slaveseulement si il y a un arbiter esclave,et seulement du maître vers l'esclave.
ArbiterBroker7772HTTPS 

 

...

Définition du format

 

PropertyPropriétéDefaultDéfautDescription
arbiter_nameN/AThis variable is used to identify the *short name* of the arbiter with which the data will be associated withCette variable est utilisée pour identifier le *nom réduit* de l'arbiter auquel les données sont associées.
addressN/AThis directive is used to define the address from where the main arbiter can reach this arbiter (that can be itself). This can be a DNS name or an IP addressCette directive permet de définir l'adresse d'où l'arbiter principal peut contacter cet arbiter (qui peut être lui même). Ça peut être un nom DNS ou une adresse IP .
host_nameN/AThis variable is used by the arbiters daemons to define which 'arbiter' object they are : all these daemons on different servers use the same configuration, so the only difference is their server name. This value must be equal to the name of the server (like with the hostname command). If none is defined, the arbiter daemon will put the name of the server where it's launched, but this will not be tolerated with more than one arbiter (because each daemons will think it's the master)Cette variable est utilisée par les démons arbiters pour définir quel objet 'arbiter' ils sont : tous ces démons sur différents serveurs utilisent la même configuration, donc la seule différence entre eux est le nom du serveur. Cette valeur doit être égale au nom du serveur (comme avec la commande du hostname ).Si aucun n'est défini, le démon arbiter va utiliser le nom du serveur où il est lancé, mais cela ne sera possible qu'avec un seul arbiter .
port7770This directive is used to define the TCP port used by the daemonCette directive est utilisée pour définir le port TCP utilisé par ce démon .
spare0This variable is used to define if the daemon matching this arbiter definition is a spare one or not. The default value is Cette variable permet de savoir si le démon correspondant à la définition de l'arbiter est un spare ou pas. La valeur par défaut est *0* (mastermaître/non-spare).
modulesN/AThis variable is used to define all modules that the arbiter daemon matching this definition will loadCette variable définit tous les modules chargés par l'arbiter qui correspond à cette définition .
timeout3This variable defines how much time the arbiter will block waiting for the response of this daemonCette variable définit pendant combien de temps l'arbiter bloquera en attendant la réponse du démon.
data_timeout120Data send timeout. When sending data to another Utilisé lors d'envoi de données à un autre process.
max_check_attempts3If ping fails N or more, then the node is considered dead. 3 attempts by default.Si le ping est en échec N fois ou plus, alors le nœud est considéré comme mort. (par défaut, 3 tentatives)
check_interval60Intervalle de Ping node every toutes les N secondssecondes.
accept_passive_unknown_check_results0If this is enabled, the arbiter will accept passive check results for unconfigured hosts and will generate unknown host/service check result broks.

...

Si c'est activé, l'arbiter acceptera les retours de checks passifs pour les hôtes non configurés et générera un retour hôte/service inconnu .

Exemple de définition

Code Block
define arbiter{
  arbiter_name Main-arbiter
  address node1.mydomain
  host_name node1
  port 7770
  spare 0
  modules module1,module2
}