Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


Introduction

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 admin shinken qui pourrait créer ses hôtes via un Synchronizer distant et les collecter en centrale via le synchronizer-collector-linker. 


Panel
titleSommaire

Table of Contents


Fonctionnement

Le collecteur synchronizer-collector-linker va se connecter à chaque shinken distant listé:

  • Il interroge le listener « shinken-listener » de chaque shinken distant.
  • Il récupère tous les hôtes présents, y compris 
    • les hôtes en nouveau
    • les hôtes avec leurs différences ( comme si elles avaient été acceptées )

Il interrogera à tour de rôle chacun des Shinkens distants pour collecter les hôtes et les présenter au mécanisme de calcul de nouveauté et différence du Synchronizer qui l'héberge.


Configuration ( affichage de la source dans la page d’accueil)

La définition du collecteur

Il faut créer dans le répertoire /etc/shinken/sources le fichier  synchronizer-collector-linker.cfg

Voici les paramètres à renseigner :

PropriétéExempleDescription

source_name

synchronizer-collector-linkerNom de la source. (doit être unique)

order

3Ordre dans la consolidation de l'algorithme pour cette source . Voir dans la page Synchronizer pour plus d'information

import_interval

5Intervalle en minute de lancement de la source pour réaliser un import.

module_type

synchronizer-collector-linkerLe type de module à lancer par le Synchronizer ( mécanique interne au démon )

data_backend

mongodbBase de donnée backend utilisée ( forcément une base mongoDB )

mongodb_database

synchronizerBase de donnée mongo dans laquelle sera la configuration du module

mongodb_uri

mongodb://localhost/?safe=false
URI de la base mongodb

description        

This collector will gather hosts from remote ShinkenLa description à montrer dans l'UI.

enabled

1

1 - Activer le collecteur

0 - Vue dans l'interface, mais ne collecte pas de données.

not_stored_properties 

 _SE_UUID

Cette valeur ne doit pas être enlevée, sauf si vous désirez que les hôtes récupérés des sites distants gardent leur
SE_UUID dans le shinken centrale ( où le synchronizer-collector-linker est présent ).



  • Un exemple ce trouve dans le répertoire /etc/shinken-user-example/configuration/daemons/synchronizers/sources/synchronizer-collector-linker/

Exemple de définition:

Code Block
#===============================================================================
# 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
    data_backend             mongodb
    mongodb_uri              mongodb://localhost/?safe=false
    mongodb_database         synchronizer
    description              This source is about loading remote synchronizers configurations
    enabled                  1
	not_stored_properties    _SE_UUID
}


Configuration du démon Synchronizer pour déclarer le collecteur


Modifiez le fichier /etc/shinken/synchronizers/synchronizer-master.cfg
( ou le .cfg que vous utilisez pour définir les options du synchronizer )


A la fin de la ligne "sources", rajoutez votre source.

Exemple :

Code Block
    sources               syncui,cfg-file-shinken,active-dir-example,sync-vmware,cfg-file-nagios,discovery,openldap-example,synchronizer-collector-linker


Redémarrez le Synchronizer pour qu'il prenne acte de la nouvelle source :

Code Block
languagebash
service shinken-synchronizer restart


Vous verrez dans l'interface le nouveau collecteur apparaître


Utilisation du collecteur

Définir la connexion aux Shinken distants

Il faut définir les sites distants qui vont être contactés pour récupération de leurs hôtes : 

  • Cliquez sur le nom de la source dans la page principale pour ouvrir la page de détail du dernier lancement de la source. Ensuite, il faut cliquer sur l'onglet "Liste des Synchronizers distant".



  • Cliquez sur le bouton à droite pour ouvrir la page d'édition d'un site distant 


  • Les champs à remplir sont les suivants :

PropriétéExempleDescription

Nom

Site distant 1Nom d'affichage du site distant dans la liste des sites distants. (Doit être unique)

Adresse

192.168.1.100Adresse du Synchronizer distant. (Par défaut : le Nom)

Nom de l'utilisateur

ShinkenLors de la connexion, le collecteur va se connecter au listener shinken-listener avec ce nom d'utilisateur.

Mot de passe

Shinken

Le mot de passe qui va avec le nom d'utilisateur

HTTPS

Vrai

Est-ce que la connexion vers shinken-listener est en HTTPS?

Préfixe de Renommage

Site-Distant-1

Ce préfixe sera ajouté à tous hôtes récupérés de ce site distant.

  • Si ce préfixe est changé APRÈS l'import d’élément, ce dernier sera renommé automatiquement dans le Synchronizer pour éviter d'avoir une différence sur le nom.
  • Ex: host1 sera présenté comme l'hôte Site-Distant-1-host1

Notes

Site de bordeauxDescription affichée dans la liste des sites distants

Activé

VraiEst-ce que le synchronizer défini sera utilisé dans le prochain import d'hôtes.


Une sauvegarde réussie redirigera vers la liste des Synchronizers distants.


Tip
titleImportant
Vérifier Vérifierz dans la page de définition du shinken-listener distant que le mot de passe est le même que celui renseigné dans cette page. Sinon la connexion au Synchronizer distant sera impossible.


Lors de la création, le Synchronizer distant doit impérativement être joignable pour que la sauvegarde puisse avoir lieu.
Durant une modification, le Synchronizer distant doit être joignable uniquement quand le champ adresse est modifié.

En effet, lors de la vérification, le synchronizer-collector-linker interroge le Shinken distant pour récupérer son identifiant unique.
Cela permet d'identifier

  • un Synchronizer distant si celui-ci venait à être ré-installé, sans qu'il y ai besoin de modifier la configuration du linker.
  • tous les hôtes venant d'un synchronizer distant, car ils sont "marqués" avec cette identifiant pour pouvoir les retrouver au prochain import.


Info

Si une nouvelle installation est faite sans restauration, les hôtes récupérés seront considérés comme nouveaux, car ceux-ci n'utilisent pas cet identifiant comme clef de synchronisation.



Info
titleEn cas d'erreur



Vous pouvez tester manuellement la connexion avec le Synchronizer distant à l'aide de la commande affichée sous le formulaire d'édition.

Panel



Info

Deux sites distants ne peuvent pas avoir le même préfixe de renommage. Une erreur vous avertira si vous rentrez un préfixe déjà utilisé par un autre synchronizer distant.



Liste des synchronizers distants 

Vous pouvez voir sur cette page la liste de tout les Synchronizers distants que vous avez configuré ainsi que leurs caractéristiques.  

Un Synchronizer peut avoir plusieurs statuts :

  •  Les éléments ont été importés sans rencontrer de problèmes 
  •  Les éléments ont été partiellement importés, un événement empêche l'import de tous les éléments.
  •  Les éléments n'ont pas été importés, une erreur est survenue.
  •  Les éléments sont en train d'être importés.
  •  Les éléments n'ont jamais été importés.
  •  Les éléments ne sont plus importés, la connexion à ce Synchronizer distant est désactivée.

La colonne message peut vous aider en donnant plus d'informations sur le statut affiché.

Vous pourrez modifier la définition d'un site distant en cliquant sur l'engrenage ou sur le nom.  


Panel


Précisions techniques

Clés de synchronisation

Les clés de synchronisation sont accrochés aux éléments importés utilisées pour les identifier dans les sources. Le fonctionnement et l'utilité des clés de synchronisation sont décrits de manière plus détaillée dans la page de documentation dédiée: Précision techniques sur le fonctionnement de l'import des sources.


Les propriétés suivantes sont ajoutées comme clés de synchronisation de l'objet Shinken:

  • UUIDShinkenDistant-UUID : il est donc composé de 2 valeurs séparées par un tiret.
    • UUIDShinkenDistant : unique dans une Installation Shinken 
    • UUID de l'hôte sur le synchronizer distant
  • hostname (pour rappel, le hostname est égal à PREFIX-HOSTNAME ( du site distant ), au moment de l'import). Cette clé de synchronization est dynamique. En effet, si le préfixe de renommage du Synchronizer distant change, les noms des hôtes seront renommés ainsi que leur sync-key pour être en adéquation.