Rôle

Le Receiver reçoit les données de checks passifs, et agit comme une commande tampon distribuée, qui sera lue par l'Arbiter. Il peut y avoir plusieurs Receiver pour du load-balancing et des rôles de spare en standby à chaud.

Il peut également utiliser des modules pour accepter des données provenant de différents protocoles. 

  • Module pour la collecte de données passives: module WS Arbiter 

Communications vers les autres démons

L'Arbiter récupère les données du Receiver chaque seconde.

Résumé des connexions du Receiver


SourceDestinationPortProtocoleNote
ArbiterReceiver7773HTTP/HTTPS


Données

Le Receiver garde en mémoire tampon les données des commandes externes. Ces commandes externes ont des noms d'hôtes ou de checks.

Description des variables


PropertyDefaultDescription
receiver_nameN/ACette variable est utilisée pour définir le nom raccourci du démon auquel les données sont associées.
addressN/ACette directive est utilisée pour définir l'adresse permettant à l'Arbiter de joindre ce Receiver. Par défaut "localhost", changez-le par un nom DNS ou une adresse IP.
port7773Cette directive est utilisée pour définir le port TCP utilisé par ce démon.
use_ssl0Cette variable est utilisée pour définir si le Receiver doit être contacté en HTTPS (*1*) ou HTTP (*0*). La valeur par défaut est *0* (HTTP).
spare0Cette variable est utilisée pour définir si le Receiver peut être géré comme un spare (prendra uniquement la configuration si le maître échoue). La valeur par défaut est *0* (maître).
realmN/ACette variable est utilisée pour définir le royaume où le Receiver doit être. Si aucun n'est sélectionné, celui par défaut lui sera assigné.
direct_routing0Si activé, il enverra directement les commandes aux schedulers s’il connait le nom de l'hôte dans la commande.
timeout3Cette variable est utilisée pour définir le temps en secondes avant que l'Arbiter ne considère ce démon comme à l'arrêt. Si ce démon est joignable en HTTPS (use_ssl à 1) avec une latence élevée, nous vous conseillons alors d'augmenter cette valeur de timeout (l'Arbiter aura besoin de plus d'allers/retours pour le contacter).
data_timeout120Cette variable est utilisée pour définir le temps en secondes avant de considérer un transfert de configuration ou de données comme échoué.
max_check_attempts3Si le ping permettant de détecter la disponibilité réseau du nœud 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 toutes les N secondes.
modulesN/ACette variable est utilisée pour définir les modules chargés par le Receiver.
vmware__statistics_compute_enable1Cette variable permet de désactiver la mesure par le daemon de la charge CPU des ESX qui hébergent le daemon.
Peut-être, pratique dans le cas où les vmware-tools de la VM ne sont pas activés ou ne fournissent pas toutes les informations attendues.
enabledN/ACette variable est utilisée pour définir si le Receiver est activé ou non.



Exemple de définition 

(warning) Il est conseillé d'éditer les fichiers .cfg avec l'encodage utf-8

#===============================================================================
# RECEIVER
#===============================================================================
# The receiver manages passive information. It's just a "buffer" which will
# load passive modules and be read by the arbiter to dispatch data.
#===============================================================================

define receiver {

    #======== Daemon name and address =========
    # Daemon name. Must be unique
    receiver_name             receiver-master

    # IP/fqdn of this daemon (note: you MUST change it by the real ip/fqdn of this server)
    address                   node1.mydomain

    # Port (HTTP/HTTPS) exposed by this daemon
    port                      7773

    # 0 = use HTTP, 1 = use HTTPS
    use_ssl                       0



    #======== Realm and architecture settings =========
    # Realm to set this daemon into
    spare                     0

    # Realm to set this daemon into
    realm                     All

    # 1 = will directly send commands to the schedulers if it know about the hostname in the command
    direct_routing            0



    #======== Daemon connection timeout and down state limit =========
    # timeout: how many seconds to consider a node don't answer
    timeout                   3

    # data_timeout: how many second to consider a configuration transfert to be failed
    # because the network brandwith is too small.
    data_timeout              120

    # max_check_attempts: how many fail check to consider this daemon as DEAD
    max_check_attempts        3

    # Check this daemon every X seconds
    check_interval            60



    #======== Modules to enable for this daemon =========
    # Available:
    # - ws-arbiter: webservice interface
    modules



    #======== Enable or not this daemon =========
    # 1 = is enabled, o = is disabled
    enabled                  1
}