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".
- Lorsqu’on souhaite découvrir les machines d’un sous-réseau sécurisé à l’aide du collecteur de type "
- 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".
- 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 "
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.
- Pour cela, il faut ouvrir le fichier de configuration du Synchronizer et ajouter le nom du collecteur de type
- 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.
service-shinken-synchronizer restart
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
| Nom | Type | Unité | Défaut | Description |
|---|---|---|---|---|
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 ( - )
|
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
...
}
| Nom | Type | Unité | Défaut | Description |
|---|---|---|---|---|
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) ).
|
import_interval | Entier positif | minute | 0 | Délai écoulé entre les imports automatiques de la source.
|
enabled | Booléen | --- | 0 | Permet d'activer ou de désactiver la source ( 1 pour activer, 0 pour désactiver ). |
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
...
| Nom | Type | Unité | Défaut | Description |
|---|---|---|---|---|
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.