Description
Cette source permet de récupérer tous les hôtes d'une installation Shinken distante.
Certaines situations nécessitent l’existence de plusieurs Shinken Entreprise que l'on voudrait connecter ensemble:
- Exemple 1: Découvrir les machines d'un sous-réseau sécurisé
- Pour utiliser le collecteur discovery ( réalisant des scans réseau via nmap ) vers ce sous-réseau sécurisé, il faudrait ouvrir les flux vers tous les équipements ce qui créerait une faille de sécurité.
- Pour contourner cela, il est possible d'installer un Shinken dans le sous-réseau, ce dernier réalisant les scans nmap, et le connecter à un Shinken central via le synchronizer-collector-linker pour récupérer les hôtes découverts dans le sous-réseau.
- Exemple 2: Donner une autonomie à un administrateur Shinken qui pourrait créer ses hôtes via un Synchronizer distant et les collecter en centrale via le synchronizer-collector-linker.
La source synchronizer-collector-linker va requêter le Synchronizer distant via son listener-shinken pour y récupérer l'intégralité des hôtes, y compris ceux en nouveau/différences.
Activation du collecteur
Vous pouvez essayer ce type de source soit en activant le collecteur "synchronizer-collector-linker" présent par défaut ou en activant vos propres collecteurs de type synchronizer-collector-linker.
Activer le collecteur synchronizer-collector-linker livré par défaut
Par défaut, l’installation ou la mise à jour de Shinken Entreprise va mettre à disposition une définition de type synchronizer-collector-linker appelé "synchronizer-collector-linker".
- La configuration de ce collecteur se trouve par défaut dans le fichier : /etc/shinken/sources/synchronizer-collector-linker.cfg
- Le collecteur synchronizer-collector-linker s'active comme les autres sources, c'est-à-dire en modifiant le fichier /etc/shinken/synchronizers/synchronizer-master.cfg ( ou le .cfg que vous utilisez pour définir les options du Synchronizer )
- Ce collecteur est déjà présent dans la liste des sources livrées par défaut, il n'y a donc rien à modifier.
S'il n'y est pas, vous pouvez le rajouter pour qu'il soit de nouveau actif.
Exemple:define synchronizer { [...] sources Source 1, Source 2, Source 3, synchronizer-collector-linker [...] }
Redémarrez le Synchronizer pour qu'il puisse prendre en compte cette nouvelle source
service shinken-synchronizer restart
Ajouter un autre collecteur de type synchronizer-collector-linker
Vous pouvez avoir plusieurs sources du type synchronizer-collector-linker, pour par exemple se connecter à plusieurs serveurs Open LDAP.
Choisissez un nom pour ce nouveau collecteur.
- Pour l'exemple, nous allons l'appeler "Mon-Collecteur-Synchronizer-Linker".
- Remplacer dans l'exemple le mot "Mon-Collecteur-Synchronizer-Linker" par le nom que vous aurez choisi.
Pour ajouter une autre source, vous devez :
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
- Ouvrer 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" par le nom que vous avez 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émarrez le Synchronizer pour qu'il puisse prendre en compte cette nouvelle source.
service shinken-synchronizer restart
Configuration
Voici le détail du fichier de configuration de la source qui se trouve ( suivant la procédure choisie ) :
- Soit dans le fichier que vous venez de créer en ajoutant le module ( par exemple /etc/shinken/sources/collector__synchronizer-collector-linker__Mon-Collecteur-Synchronizer-Linker.cfg ).
- Soit dans le fichier /etc/shinken/sources/synchronizer-collector-linker.cfg.
Exemple de fichier de configuration
Vous trouverez aussi systématiquement un exemple dans /etc/shinken-user-example/configuration/daemons/synchronizers/sources/synchronizer-collector-linker/synchronizer-collector-linker-example.cfg
#===============================================================================
# synchronizer-collector-linker
#===============================================================================
# Daemons that can load this source:
# - synchronizer
# This source is about loading remote synchronizers configurations
#===============================================================================
define source {
source_name synchronizer-collector-linker
order 2
import_interval 5
module_type synchronizer-collector-linker
mongodb_uri mongodb://localhost/?safe=false
mongodb_database synchronizer
description This source is about loading remote synchronizers configurations
enabled 1
# 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 module de type synchronizer-collector-linker dans votre architecture Shinken.
- Chaque instance devra avoir un nom unique.
| Nom | Type | Unité | Défaut | Commentaire |
|---|---|---|---|---|
source_name | Texte | --- | synchronizer-collector-linker | Nous vous conseillons de choisir un nom en fonction de l'utilisation du module pour que votre configuration soit simple à maintenir. Chaîne de caractères composée de lettres, de chiffres et des caractères _ et - .
|
module_type | Texte | --- | synchronizer-collector-linker | Ne peut être modifié |
Interval d'import et ordre de la source
| Nom | Type | Unité | Défaut | Commentaire |
|---|---|---|---|---|
import_interval | Entier positif | minute | 0 | Délai écoulé entre les imports automatiques de la source. |
order | Entier positif | --- | 2 | L'ordre de la source dans l'interface de configuration ( A un impact dans la fusion des données lors des imports de sources ). Voir la page du Synchronizer pour plus d'information au sujet des fusions.
|
Connexion à la base mongo
Afin de garder en mémoire les différents identifiants de communication avec vos autres Synchronizers, le module a besoin de se connecter à une base mongo, pour y sauvegarder ces informations.
... mongodb_uri mongodb://localhost/?safe=false mongodb_database synchronizer ...
| Nom | Type | Unité | Défaut | Commentaire |
|---|---|---|---|---|
mongodb_uri | Texte | --- | mongodb://localhost/?safe=false | Vous pouvez trouver la syntaxe de l'uri de MongoDB à l'adresse https://docs.mongodb.com/manual/reference/connection-string/ |
mongodb_database | Texte | --- | synchronizer | Nom de la base de données où sont stockés les données du module |
Propriétés non récupérées
...
#======== Properties not stored ========
# Properties which can be defined in the items from the source but which Shinken will not import.
# not_stored_properties
...
| Nom | Type | Unité | Défaut | Commentaire |
|---|---|---|---|---|
not_stored_properties | Texte | --- | _SE_UUID | Empêche la récupération de certaines propriétés des hôtes récoltés |
Il est possible de définir des propriétés que la source ne devra pas récupérer. Ceci est utile si vos instances Shinken distantes utilisent des propriétés propres à leur fonctionnement.
Nous vous conseillons de laisser la valeur "_SE_UUID" et d'en rajouter d'autres si vous le souhaitez. Si vous supprimez la valeur "_SE_UUID", vos hôtes posséderont les mêmes "_SE_UUID" que sur le Shinken sur lesquels ils ont été récupérés.