...
Le démon arbiter lit la configuration du synchronizer. Il la divise en N parts (N schedulers = N parts),et les distribue au démon Shinken Enterprise approprié. Il gère également la notion de haute disponibilité : si un démon en particulier meurt, il renvoie la configuration géré gérée 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
...
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 définis 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 source | Destination | Port | Protocole | Note |
|---|---|---|---|---|
| Arbiter | Synchronizer | 7765 | HTTPS | |
| Arbiter | Scheduler | 7768 | HTTPS | |
| Arbiter | Poller | 7771 | HTTPS | |
| Arbiter | Reactionner | 7769 | HTTPS | |
| Arbiter | Receiver | 7773 | HTTPS | |
| Arbiter | Arbiter | 7770 | HTTPS | seulement si il y a un arbiter esclave,et seulement du maître vers l'esclave. |
| Arbiter | Broker | 7772 | HTTPS |
Définition du format
| Propriété | Défaut | Description |
|---|---|---|
| arbiter_name | N/A | Cette variable est utilisée pour identifier le *nom réduit* de l'arbiter auquel les données sont associées. |
| address | N/A | Cette 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_name | N/A | 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 . |
| port | 7770 | Cette directive est utilisée pour définir le port TCP utilisé par ce démon . |
| spare | 0 | 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* (maître/non-spare). |
| modules | N/A | Cette variable définit tous les modules chargés par l'arbiter qui correspond à cette définition . |
| timeout | 3 | Cette variable définit pendant combien de temps l'arbiter bloquera en attendant la réponse du démon. |
| data_timeout | 120 | Utilisé lors d'envoi de données à un autre process. |
| max_check_attempts | 3 | 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_interval | 60 | Intervalle de Ping toutes les N secondes. |
| accept_passive_unknown_check_results | 0 | 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
} |