Fonctionnement

Vous pouvez définir un tagger qui va utiliser automatiquement le nom pour modifier des propriétés sur les hôtes / clusters qui respectent sa règle de nommage ( une regexp ) sur une propriété.

Typiquement, le cas d'usage classique est de rajouter/modifier des templates d'hôtes/clusters sur les éléments s'ils respectent une règle de nommage sur le nom.

Comment définir un tagger

Voir la documentation comment configurer le tagger : Module sync-regexp-tag

Cas d'exemple: automatiquement assigner au royaume Bordeaux les hôtes/clusters dont le nom commence par bdx

Exemple 1: mettre la valeur du royaume directement dans la valeur du royaume

Si nous avons des hôtes ou clusters dont le nom commence par la chaine bdx nous savons qu'il est situé à Bordeaux. Il est donc intéressant de l’assigner automatiquement au royaume Bordeaux, ce qui permettra de les superviser au plus proche possible (et donc avoir les bonnes règles de firewall par exemple pour lancer les sondes vers les serveurs).


Nous pouvons donc définir le module suivant que nous accrochons au tagger (comme indiqué précédemment).

Il va fonctionner ainsi:

  • SI la propriété host_name ( le nom ) de l'hôte/cluster commence par bdx
    • ALORS on va écraser ( method=set ) la propriété realm ( property ) avec la valeur Bordeaux ( value ).
define module{
  module_name       sync-regexp-tag-bordeaux-basic
  module_type       sync-regexp-tag

  # La regexp a appliquer
  matched_regexp    ^bdx.*
  
  # on va appliquer la regexp sur le nom de l'hote/cluster
  matched_prop      host_name

  # On va alors ecraser la propriete realm avec la valeur Bordeaux
  property          realm
  method            set
  value             Bordeaux

}

Exemple 2: plus flexible, rajouter un modèle "bordeaux" ( prioritaire sur les autres modèles )

Si la méthode 1 fonctionne, elle n'est pas optimale: en effet, changer le royaume par Bordeaux est utile, mais dans le futur la localisation à Bordeaux va peut-être demander à ce qu'une équipe locale ait les droits d'accès et de notifications sur la machine par exemple.

Il faudrait alors faire un second module, ce n'est pas l'idéal.


Il est donc fortement recommandé de ne pas modifier les propriétés directement, mais plutôt de passer par des modèles d'hôtes/cluster.

Il sera ainsi facile de faire des changements en masse sur toutes les machines Bordeaux, en modifiant juste le modèle Bordeaux.


Nous pouvons donc définir le module suivant que nous accrochons au tagger ( comme indiqué au-dessus ).

Il va:

  • SI la propriété host_name ( le nom ) de l'hôte/cluster commence par bdx
    • ALORS on va rajouter au début ( method=prepend ) de la propriété use ( property ) avec la valeur bordeaux ( value ).
define module{
  module_name       sync-regexp-tag-bordeaux-recomanded
  module_type       sync-regexp-tag

  # La regexp a appliquer
  matched_regexp    ^bdx.*
  
  # on va appliquer la regexp sur le nom de l'hote/cluster
  matched_prop      host_name

  # On va alors rajouter le template bordeaux au debut de use (prioritaire)
  property          use
  method            prepend
  value             bordeaux
}

Visualisation dans l'interface de configuration

Vous pouvez consulter la configuration des différents taggers sur nom d'hôtes présent sur le Synchronizer sur la page d'accueil en cliquant sur regexp-tags.


Un onglet vous permet de visualiser également un résumé des règles qui vont s'appliquer.