Concept

Le collecteur de type "synchronizer-collector-linker" est une source qui permet au démon de type "Synchronizer" de récupérer les hôtes provenant d'une installation Shinken distante.

Le collecteur de type "synchronizer-collector-linker" interroge l'écouteur de type " listener-shinken " du Synchronizer distant pour y récupérer l'intégralité des hôtes, y compris les nouveaux et les différences.


Certaines situations justifient la mise en place de plusieurs instances Shinken interconnectées. Voici deux exemples :

  • Découverte dans un sous-réseau sécurisé :
    • Lorsqu’on souhaite découvrir les machines d’un sous-réseau sécurisé à l’aide du collecteur de type "discovery-import " ( réalisant des scans réseau via nmap ), il faudrait, dans un schéma classique, ouvrir les flux réseau vers l’ensemble des équipements à scanner. Cela peut représenter un risque en matière de sécurité.
    • Pour contourner cette contrainte, il est recommandé d’installer une instance Shinken directement dans le sous-réseau concerné. Cette instance locale se chargera des scans nmap. L’instance centrale récupérera les hôtes locaux via un collecteur de type "synchronizer-collector-linker ".
  • Autonomie d’un administrateur distant :
    • Un administrateur Shinken distant peut avoir besoin d’autonomie pour créer et gérer ses propres hôtes. En utilisant un Synchronizer sur sa propre instance, il peut ensuite faire remonter ses hôtes vers l’instance centrale grâce au collecteur de type "synchronizer-collector-linker ".


Cette page détaille la configuration d'un collecteur de type "synchronizer-collector-linker". Une autre page est dédiée à son utilisation ( voir la page Collecteur de type ( synchronizer-collector-linker ) - Import depuis un autre Synchronizer ).

Activation de la source

Les collecteurs de type "synchronizer-collector-linker" doivent être activés sur un démon de type "Synchronizer".

  • L'activation du collecteur s'effectue en ajoutant le nom de ce collecteur dans le fichier de configuration du Synchronizer.
    • Pour cela, il faut ouvrir le fichier de configuration du Synchronizer et ajouter le nom du collecteur de type "synchronizer-collector-linker" dans le paramètre sources.
  • Shinken ne livre pas de collecteur de type "synchronizer-collector-linker" par défaut à l'installation ou à la mise à jour.

Ajouter un collecteur de type synchronizer-collector-linker

Il est possible d'avoir plusieurs collecteurs de type " synchronizer-collector-linker ".

  • Il faut alors répéter les étapes suivantes et donner un nom différent à chaque collecteur.


Comment choisir un nom pour ce nouveau collecteur ?

  • Pour l'exemple, il s'appellera "Mon-Collecteur-Synchronizer-Linker".
  • Remplacer dans l'exemple le mot "Mon-Collecteur-Synchronizer-Linker" par le nom choisi.


Pour ajouter une autre source, il faut :

  • Copier le fichier de définition de la source d'exemple : /etc/shinken-user-example/configuration/daemons/synchronizers/sources/synchronizer-collector-linker/synchronizer-collector-linker-example.cfg  dans le répertoire de définition des sources :  /etc/shinken/sources/
    (  Exemple : /etc/shinken/sources/collector__synchronizer-collector-linker__Mon-Collecteur-Synchronizer-Linker.cfg   )

    cp /etc/shinken-user-example/configuration/daemons/synchronizers/sources/synchronizer-collector-linker/synchronizer-collector-linker-example.cfg /etc/shinken/sources/collector__synchronizer-collector-linker__Mon-Collecteur-Synchronizer-Linker.cfg


  • Ensuite, il faut modifier le fichier nouvellement créé pour configurer le nouveau collecteur.
  • Il faut vérifier que le fichier appartient à l'utilisateur shinken et qu'il possède le droit d'édition.

    • Si ce n'est pas le cas, il faut effectuer les commandes suivantes :

      chown shinken:shinken /etc/shinken/sources/collector__synchronizer-collector-linker__Mon-Collecteur-Synchronizer-Linker.cfg
      chmod u+w  /etc/shinken/sources/collector__synchronizer-collector-linker__Mon-Collecteur-Synchronizer-Linker.cfg
  • Ouvrir ce fichier ( collector__synchronizer-collector-linker__Mon-Collecteur-Synchronizer-Linker.cfg )

    • Modifier la ligne source_name en remplaçant le nom par défaut "synchronizer-collector-linker-example" par le nom choisi "Mon-Collecteur-Synchronizer-Linker".

      define source {
          [...]
          source_name         Mon-Collecteur-Synchronizer-Linker
      }
  • Ajouter le nom de la nouvelle source au Synchronizer en modifiant le paramètre sources du fichier /etc/shinken/synchronizers/synchronizer-master.cfg.

    define synchronizer {
        [...]
        sources                   Source 1, Source 2, Source 3, Mon-Collecteur-Synchronizer-Linker    
        [...]
    }


  • Redémarrer le Synchronizer pour qu'il puisse prendre en compte cette nouvelle source.

Configuration

Un exemple de configuration est disponible dans /etc/shinken-user-example/configuration/daemons/synchronizers/sources/synchronizer-collector-linker/synchronizer-collector-linker-example.cfg.

Exemple de fichier de configuration

#===============================================================================
# synchronizer-collector-linker
#===============================================================================
# Daemons that can load this source:
# - synchronizer
# This source is about loading remote synchronizers configurations
#===============================================================================

define source {


    #======== source identity =========
    # Source name. Must be unique
    source_name         synchronizer-collector-linker-example

    # Module type (to load module code). Do not edit.
    module_type         synchronizer-collector-linker

    # order: source order for a source imply if a source is before another source when merging data
    order               2

    # import_interval:  in minutes, what is the schedule import interval for this source.
    # note: 0 = don't schedule this source, will run only if an administrator launch it from the interface
    import_interval     5

    # enabled: is this source enabled or not
    enabled             1

    # description: display a description on the interface for this source
    description         This source is about loading remote Synchronizers configurations

    #======== Properties not stored ========
    # Do not remove _SE_UUID from this property unless you want hosts retrieved from remote sites to keep their _SE_UUID
    # in the main Shinken (where synchronizer-collector-linker is present)
    not_stored_properties           _SE_UUID

}

Détails des sections composant le fichier de configuration

Identification de la source

Il est possible de définir plusieurs instances de collecteur de type " synchronizer-collector-linker " dans une architecture Shinken.

  • Chaque collecteur doit avoir un nom différent.
    #======== source identity =========
    # Source name. Must be unique
    source_name         synchronizer-collector-linker-example

    # Module type (to load module code). Do not edit.
    module_type         synchronizer-collector-linker

NomTypeUnitéDéfautDescription
source_name 
Texte--- synchronizer-collector-linker

Il est conseillé de choisir un nom en fonction de l'utilisation du module pour que la configuration soit simple à maintenir.

Caractères autorisés : lettres, chiffres, underscore ( _ ) et trait d'union ( - )

  • Doit être unique.
  • Doit commencer par une lettre.
  • D'une longueur maximum de 40 caractères.
module_type 
Texte--- synchronizer-collector-linker Ne peut pas être modifié.

Fonctionnement de la source

define source {
    ...
    order              3
    import_interval    5
    enabled            1
    description        This source is about loading remote Synchronizers configurations
    ...
}
NomTypeUnitéDéfautDescription
order
Entier positif

---

2


Définit l'ordre de la source dans l'interface de configuration et dans le mélange des sources ( voir la page Le mélange des sources & les clés de synchronisation (sync-key) ).


Si l'ordre est changé depuis l'interface de configuration, le fichier .cfg sera mis à jour.

 

import_interval

Entier positif

minute 0

Délai écoulé entre les imports automatiques de la source.

  • S'il vaut 0, la source ne sera jamais exécutée automatiquement, uniquement manuellement.
enabled
Booléen--- 0

Permet d'activer ou de désactiver la source ( 1 pour activer, 0 pour désactiver ).

Activer ou désactiver la source dans l'interface de configuration mettra à jour le fichier .cfg.

description
Texte--- This source is about loading remote Synchronizers configurations

Description de la source qui apparaît dans l'interface du Synchronizer.

Propriétés non récupérées

Il est possible de définir des propriétés que la source ne devra pas récupérer. Ceci est utile si les instances Shinken distantes utilisent des propriétés propres à leur fonctionnement.

...
    #======== Properties not stored ========
    # Do not remove _SE_UUID from this property unless you want hosts retrieved from remote sites to keep their _SE_UUID
    # in the main Shinken (where synchronizer-collector-linker is present)
    not_stored_properties           _SE_UUID

...
NomTypeUnitéDéfautDescription
not_stored_properties
Texte--- _SE_UUID

Empêche la récupération de certaines propriétés des hôtes récoltés.

Si plusieurs propriétés doivent être listées, il faut les séparer par des virgules.

Exemple :

not_stored_properties _SE_UUID, realm, display_name 

Il est conseillé de laisser la valeur "_SE_UUID" et d'en rajouter d'autres si nécessaire. Si la valeur "_SE_UUID" est supprimée, les hôtes posséderont les mêmes "_SE_UUID" que sur le Shinken distant.


AI Tools (ctrl ×2)