| Scroll Ignore | ||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||
|
Concept
Il est possible de définir sur un Tagger une action qui va utiliser une plage d’adresses IP afin d'éditer automatiquement une propriété des hôtes issus de l'import des sources en fonction de la valeur de leur IP ou nom DNS ( propriété "address" ).
- Cette action est portée par un module de type
sync_ip_tag,que vous aurez besoin d'ajouter sur votre qu'il faudra rajouter sur le Tagger. - L'intérêt est, par exemple, d'ajouter le modèle d'hôte DMZ sur les hôtes avec des adresses comprises dans la plage IP 172.20.0.0/26 ( voir la page Tagger utilisant un module basé sur les plages IP ).
L'activation de ce module se fait en 3 étapes :
- Définir le module de type
sync_ip_tag. - L'ajouter au Tagger qui exécutera cette règle.
- Si vous n'avez pas déjà de tagger Tagger défini, il faut le mettre en place ( voir la page Definition des taggers ).
- Redémarrer le Synchroniser pour que cette modification soit prise en compte.
Définition du module
La configuration des modules doit être placée dans le dossier /etc/shinken/modules/
- Un exemple de fichier de configuration est disponible ici : /etc/shinken-user-example/configuration/daemons/synchronizers/modules/sync_ip_tag/MY-MODULE-ip-tag.cfg
Copier cet exemple et adapter le à votre au besoin ( voir plus bas, la description des différents paramètres ).
Scroll Title title
taggersCode Block language text theme Emacs cp /etc/shinken-user-example/configuration/daemons/synchronizers/modules/sync_ip_tag/MY-MODULE-ip-tag.cfg /etc/shinken/modules/MY-MODULE-ip-tag.cfg
Nous vous recommandons Shinken recommande d'intégrer, dans le nom du module, un rappel du type du module. C'est plus simple en gestion ( ex : MY-MODULE-ip-tag.cfg ).
- Renommé Renommer le module ( paramètre module_name ).
- Éditer les paramètres pour définir l'action du module :
- Les hôtes à impacter.
- La nature de l'action.
Exemple de fichier de configuration
Cette Cet exemple ajoute
- le modèle d'hôte DMZ sur les hôtes , à la fin des modèles d'hôtes utilisé utilisés par chaque hôte,
- avec des adresses comprises dans la plage IP 172.20.0.0/30.
| Code Block | ||||
|---|---|---|---|---|
| ||||
#===============================================================================
# ip-tag-*
#===============================================================================
# Daemons that can load this module:
# - synchronizer (into a tagger object)
# This module add new templates into hosts objects based on their IP range. For example to set a DMZ template is an host is in a DMZ ip range.
#===============================================================================
define module{
#======== Module identity =========
# Module name. Must be unique
module_name MY-MODULE-ip-tag
# Module type (to load module code). Do not edit.
module_type sync_ip_tag
#======== Ip range definiton, and objects edition =========
# IP range to detect. Should looks like: XXX.XXX.XXX.XXX/YY
ip_range 172.20.0.0/30
# host_name listed will be skipped by tagger
# ignore_hosts
# property: which property to edit on the hosts. Default: use (templates definitions)
property use
# method: how to edit the host "property". Several methods are available:
# - replace = put the value if not another one is in place
# - append = add the value at the END
# - prepend = add the value at the BEGINING
# - set = just the value, erase the previous value set by other tagger or source.
method append
# value: which value to set on the property
value MY-HOST-TEMPLATEDMZ
} |
Détails des sections composant le fichier de configuration
Identification du module
| Code Block | ||||
|---|---|---|---|---|
| ||||
#======== Module identity ========= # Module name. Must be unique module_name MY-MODULE-ip-tag # Module type (to load module code). Do not edit. module_type sync_ip_tag |
Il est possible de définir plusieurs instances de module de type sync_ip_tag dans l'architecture Shinken .
- Chaque instance devra avoir un nom unique.
| Scroll Title | |||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||||||||
|
Définition des hôtes
ouoù l'action de modification sera
appliquéappliquée ( plage d'adresses IP et exclusion )
| Code Block | ||||
|---|---|---|---|---|
| ||||
#======== Ip range definiton, and objects edition =========
# IP range to detect. Should looks like: XXX.XXX.XXX.XXX/YY
ip_range 172.20.0.0/30
# host_name listed will be skipped by tagger
# ignore_hosts |
| Scroll Title | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||
|
Édition des hôtes
| Code Block | ||||
|---|---|---|---|---|
| ||||
# property: which property to edit on the hosts. Default: use (templates definitions)
property use
# method: how to edit the host "property". Several methods are available:
# - replace = put the value if not another one is in place
# - append = add the value at the END
# - prepend = add the value at the BEGINING
# - set = just the value, erase the previous value set by other tagger or source.
method append
# value: which value to set on the property
value MY-HOST-TEMPLATEDMZ |
| Scroll Title | ||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||
|
Déclarer le Module dans le Tagger
L'activation des taggers se fait dans le fichier de configuration du Synchronizer :
IlPour qu'un Tagger utilise les règles définies dans un module, il faut ajouter le nom du
Taggermodule au paramètre
taggers modules dans le fichier de configuration du
Tagger (ex : /etc/shinken/
synchronizerstaggers/
synchronizerMY-
masterTAGGER.cfg )
.Exemple : Le Tagger livré par défaut dont le nom est "ip-tags"avec un Tagger appelé MY-TAGGER :
| Code Block | ||||
|---|---|---|---|---|
| ||||
define tagger {
# Shinken Enterprise. Lines added by import core. Do not remove it, it's used by Shinken Enterprise to update your objects if you re-import them.
_SE_UUID core-tagger-f69a7f125adc11e5ae66080027f08538
_SE_UUID_HASH d183bc0dd8dba3d7a98725f676d7283c
# End of Shinken Enterprise part
tagger_name MY-TAGGER
order 1
modules TAGGER-MODULE-01, TAGGER-MODULE-02, MY-MODULE-ip-tag
description
} |
Pour prendre en compte le changement de configuration, il faut redémarrer le Synchronizer :
| language | text |
|---|---|
| theme | Emacs |
| Excerpt Include | ||||||||
|---|---|---|---|---|---|---|---|---|
|
Affichage des Taggers sur l'interface de Configuration
Changer le screen pour montrer à l'intérieur du tagger
Les règles apportées par chaque module apparaissent à l'intérieur du Tagger, dans l'onglet Regles Règles :
| Panel |
|---|

