| Scroll Ignore | ||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||
|
Les sources d'import par fichier permettent d'utiliser des fichiers de configuration existants pour importer des éléments.
La syntaxe de ces fichiers d'import est très proche de la syntaxe Nagios, à laquelle s'ajoute quelques clés spécifiques à Shinken Entreprise.
Les lignes commençant par un # seront considérées comme des commentaires et ne seront pas lues.
| Warning |
|---|
Les fichiers d'imports .cfg doivent être créer ou éditer avec l'encodage utf-8 |
| Info |
|---|
| Panel | |
|---|---|
Sommaire
|
Les hôtes
| Code Block | ||||
|---|---|---|---|---|
Pour créer un COMMENTAIRE ou mettre une ligne en COMMENTAIRE dans le fichier .cfg, il faut
Les lignes commentées ne seront pas lues et donc pas importées.
| ||||
|
Les hôtes
| Code Block |
|---|
define host { ##### Définition générale de l’hôte #### host_name [OBLIGATOIRE] *Nom de l'hôte* [OBLIGATOIRE] *Nom de l'hôte* name [OBLIGATOIRE] *Nom de l'hôte (lorsqu'il s'agit d'un modèle d'hôte)* display_name *Description* address *Adresse de l'hôte* use *Liste des modèles d'hôte à utiliser* hostgroups *Liste des groupes d'hôtes dans lesquels appartient l'hôte* realm *Royaume de l'hôte* business_impact [0-5]; Impact métier de l'hôte parents *Liste des hôtes desquels dépend cet hôte (d'un point de vue réseau)* notes_url *URL externe pouvant donner des informations supplémentaires sur l'hôte* notes_multi_url *Propriété utilisée pour définir plusieurs URL * enabled [0/1]; Est ce que l'hôte est activé/désactivé ? pack *Pack auquel appartient l'hôte* #### Données #### _NOMDEDONNEE *valeur de la donnée* #### Droits de l'utilisateur #### view_contacts *Les utilisateurs qui voient l'hôte* view_contact_groups *Les groupes d'utilisateurs qui voient l'hôte* notification_contacts *Les utilisateurs à notifier* notification_contact_groups *Les groupes d'utilisateurs à notifier* edition_contacts *Les utilisateurs peuvent modifier la configuration de l'hôte.* edition_contact_groups *Les groupes d'utilisateurs qui peuvent modifier la configuration de l'hôte.* contacts *Liste des contacts qui pourront Voir/Editer/EtreNotifié* contact_groups *Groupes d'utilisateurs qui pourront Voir/Editer/EtreNotifié* #### Parametres de supervision #### check_period *Période de temps pendant laquelle les checks sont exécutés* check_command *Commande utilisée pour vérifier le statut UP/DOWN de l'hôte* max_check_attempts *Nombre de vérifications de l'état de l'hôte pour passer en état HARD* check_running_timeout *Timeout de la commande de vérification de l'hôte (en secondes)* warning_threshold_cpu_usage *Nombre de secondes que peut consommer une commande avant d'apparaître en Warning dans le check 'Scheduler - Performance'* check_interval *Intervalle d’exécution de la commande de vérification de l'hôte* retry_interval *Intervalle de confirmation d'état (en minutes)* active_checks_enabled [0/1]; Est ce que les checks actifs sont activés pour cet hôte ? passive_checks_enabled [0/1]; Est ce que les checks passifs sont activés pour cet hôte ? maintenance_period *Période de temps récurrente pendant laquelle l'hôte est en maintenance* #### Notifications #### notifications_enabled [0/1]; Est ce que les notifications sont activées pour cet hôte ? notification_interval *Intervalle d'envoi des notifications (en minutes)* notification_period *Période de temps pendant laquelle les notifications sont actives* notification_options *Cette propriété permet de définir quels états de l'hôte peuvent envoyer des notifications* first_notification_delay *Délai avant l'envoi de la première notification* escalations *Liste des escalades de notifications utilisées pour cet hôte* #### Expert #### poller_tag *Poller tag associé à cet hôte* reactionner_tag *Poller reactionner associé à cet hôte* process_perf_data [0/1]; Prendre en compte la métrique éventuellement retournée par la check_command ? flap_detection_enabled [0/1]; Est ce que la détection du flapping est activée ? flap_detection_options [o,d,u] ;Cette propriété permet de définir quel statut d'un hôte sont pris en compte pour le calcul du % de FLAPPING low_flap_threshold [0-100]; Seuil de sortie de l'état Flapping high_flap_threshold [0-100]; Seuil d'entrée dans l'état Flapping event_handler_enabled [0/1]; Le gestionnaire d’événements est-il activé pour cet hôte ? event_handler *Commande utilisée pour le gestionnaire d’événements* check_freshness [0/1]; Est ce que la vérification de fraîcheur du check est activée ? freshness_threshold *Seuil de fraîcheur du check* business_impact_modulations *Modulation d'impact métier à utiliser* macromodulations *Modulation de données à utiliser* resultmodulations *Modulation de données à utiliser* service_excludes *Liste des checks à ne pas appliquer sur l'hôte* service_overrides [Check,propriété valeur]; Liste des surcharges appliquées à des checks (les surcharges peuvent être séparées par -=- ou la clé peut être dupliquée#=-) #### Modèles #### register [0/1]; L'objet est-il un modèle d'hôte ou un hôte ? for_all_users [0/1]; Est-ce que le modèle est visible par tout le monde (1) ou seulement par les utilisateurs administrateurs Shinken (0) ? } |
Pour créer un modèle d'hôte:
- La clé register doit avoir la valeur 0
- La clé host_name est remplacée par la clé name
- La clé for_all_users est spécifique aux modèles d'hôte. Elle ne doit pas exister pour un hôte.
| Info |
|---|
| Le nom d'hôte (host_name) ne doit pas exister en tant que nom de cluster. Si tel est le cas, un warning sera affiché à l'import indiquant que les éléments de même nom ont été ignorés. |
Les Clusters
Exemple de surcharge de check
Une surcharge de check sur un hôte peut être définie comme dans l'exemple suivant:
Les clusters sont en fait des hôtes particuliers.
Ils sont donc définis avec le mot clé host. La différence avec les clusters et les hôtes est qu'un cluster possède obligatoirement une règle bp_rule.
Comme pour les hôtes, il est possible de définir des modèles de cluster, via la clé register.
| Code Block |
|---|
define host {
is_cluster host_name 172.16.0.191
address [0/1]; il maintenant possible d'utiliser cette propriété pour déterminer si l'élément est un cluster
#### Définition du Cluster ####
host_name 172.16.0.191
use [OBLIGATOIRE] *Nom du Cluster*
name linux
service_overrides [OBLIGATOIRE] NET Stats,max_check_attempts 2-=#=-NET Stats,notifications_enabled 0
} |
Dans cet exemple, on désactive les notifications sur le check "NET Stats" accroché sur l'hôte et on met la valeur 2 dans la propriété "max_check_attempts" du check "Net Stats" accroché sur l'hôte. Les 2 surcharges de check sont séparées par -=#=-.
Les Clusters
Les clusters sont en fait des hôtes particuliers.
Ils sont donc définis avec le mot clé host. La différence avec les clusters et les hôtes est qu'un cluster possède obligatoirement une règle bp_rule.
Comme pour les hôtes, il est possible de définir des modèles de cluster, via la clé register.
| Code Block |
|---|
define host { is_cluster*Nom de modèle de Cluster (lorsqu'il s'agit d'un modèle de Cluster)* check_command bp_rule!ma-bp-rule use *Liste des modèles de cluster à utiliser* realm *Royaume de l'hôte* business_impact [0-5]; Impact métier du cluster notes_url *URL externe pouvant donner des informations supplémentaires sur l'hôte* notes_multi_url *Propriété utilisée pour définir plusieurs URL *[0/1]; il maintenant possible d'utiliser cette propriété pour déterminer si l'élément est un cluster #### Définition du Cluster #### enabledhost_name [OBLIGATOIRE] *Nom du Cluster* name [0/1]; Est ce que le cluster est activé/désactivé ? pack [OBLIGATOIRE] *Nom de modèle de Cluster (lorsqu'il s'agit d'un modèle de Cluster)* check_command *Pack auquel appartient le cluster* #### Supervision #### maintenance_period *Période de temps récurrente pendant laquelle le cluster est en maintenance* #### Valeurs par défaut pour les checks #### check_period *période de supervision pendant laquelle sont faites les vérifications de l'état du cluster par Shinken* check_running_timeout *Timeout de la commande de vérification du cluster (en secondes)* warning_threshold_cpu_usage *Nombre de secondes que peut consommer une commande avant d'apparaître en Warning dans le check 'Scheduler - Performance'* #### Droits de l'utilisateur #### view_contactsbp_rule!ma-definition-de-cluster ( DEPRECATED: correspond à l'ancienne manière de définir un cluster. Toujours opérationnelle, mais nous encourageons l'utilisation de la propriété bp_rule, ci dessous ) bp_rule *ma-definition-de-cluster* ; il est possible de définir le cluster avec cette clé (pour que cette clé soit prise en compte is_cluster 1 doit être défini pour l'élément) use *Les utilisateurs qui voient l'hôte* view_contact_groupsListe des modèles de cluster à utiliser* realm *LesRoyaume groupesde dl'utilisateurshôte* qui voient l'hôte* notification_contacts business_impact *Les utilisateurs à notifier* notification_contact_groups *Les groupes d'utilisateurs à notifier* edition_contacts[0-5]; Impact métier du cluster notes_url *LesURL externe utilisateurspouvant peuventdonner modifierdes lainformations configurationsupplémentaires desur l'hôte.* edition_contact_groups notes_multi_url *LesPropriété groupesutilisée d'utilisateurspour quidéfinir peuventplusieurs modifier la configuration de l'hôte.URL * contactsenabled *Liste des contacts qui pourront Voir/Editer/EtreNotifié*[0/1]; Est ce que le cluster est activé/désactivé ? contact_groupspack *GroupesPack d'utilisateursauquel quiappartient pourront Voir/Editer/EtreNotifiéle cluster* #### NotificationsSupervision #### notifications_enabled maintenance_period [0/1]; Est ce que les notifications sont activées pour ce cluster ? notification_interval*Période de temps récurrente pendant laquelle le cluster est en maintenance* #### Valeurs par défaut pour les checks #### check_period *Intervalle d'envoi des notifications (en minutes)* notification_period *période de supervision pendant laquelle sont faites les vérifications de l'état du cluster par Shinken* check_running_timeout *PériodeTimeout de tempsla commande pendantde laquellevérification lesdu notificationscluster sont(en activessecondes)* notification_optionswarning_threshold_cpu_usage *EtatsNombre pourde lesquelssecondes ilque fautpeut envoyerconsommer une notification* commande avant d'apparaître en Warning first_notification_delay *Délai avant l'envoi de la première notification* escalations dans le check 'Scheduler - Performance'* #### Droits de l'utilisateur #### view_contacts *ListeLes desutilisateurs escaladesqui de notifications utilisées pour cet clustervoient l'hôte* #### Expert #### reactionner_tag view_contact_groups *PollerLes reactionnergroupes associéd'utilisateurs àqui cetvoient l'hôte* flap_detection_enabled notification_contacts [0/1]; Est ce que la détection du flapping est activée ? flap_detection_options*Les utilisateurs à notifier* notification_contact_groups *Les groupes d'utilisateurs à notifier* edition_contacts [o,d,u] ;Cette propriété permet de définir quel statut d'un hôte sont pris en compte pour le calcul du % de FLAPPING low_flap_threshold*Les utilisateurs peuvent modifier la configuration de l'hôte.* edition_contact_groups *Les groupes d'utilisateurs qui peuvent modifier la configuration de l'hôte.* contacts [0-100]; Seuil de sortie de l'état Flapping high_flap_threshold *Liste des contacts qui pourront Voir/Editer/EtreNotifié* contact_groups [0-100]; Seuil d'entrée dans l'état Flapping *Groupes d'utilisateurs qui pourront Voir/Editer/EtreNotifié* #### Notifications #### eventnotifications_handler_enabled [0/1]; Le gestionnaire d’événements est-il activéEst ce que les notifications sont activées pour cetce hôtecluster ? eventnotification_handlerinterval *CommandeIntervalle utiliséed'envoi pourdes lenotifications gestionnaire(en d’événementsminutes)* business_impact_modulations *Modulation d'impact métier à utiliser* macromodulations notification_period *ModulationPériode de données à utilisertemps pendant laquelle les notifications sont actives* resultmodulations notification_options *Etats pour lesquels il faut envoyer une notification* first_notification_delay *ModulationDélai avant l'envoi de donnéesla àpremière utilisernotification* #### Modèles #### registerescalations [0/1]; L'objet est-il un modèle de cluster ou un cluster ? } |
| Info |
|---|
| Le nom du cluster (host_name) ne doit pas exister en tant que nom d'hôte. Si tel est le cas, un warning sera affiché à l'import indiquant que les éléments de même nom ont été ignorés. |
Les groupes d'hôtes
| Code Block |
|---|
define hostgroup { hostgroup_name [OBLIGATOIRE] *Nom du groupe d'hôtes* members *Liste des hôtes à ajouter dans le groupe* template_members *Les hôtes ayant les modèles listés seront ajoutés au groupe* *Liste des escalades de notifications utilisées pour cet cluster* #### Expert #### reactionner_tag *Poller reactionner associé à cet hôte* flap_detection_enabled [0/1]; Est ce que lela détection groupedu d'hôtesflapping est activé/désactivéactivée ? pack flap_detection_options *Pack auquel appartient le groupe* } |
Les checks
| Code Block |
|---|
define service { ##### Définition du check - Général #### service_description [OBLIGATOIRE] *Nom du check* name[o,d,u] ;Cette propriété permet de définir quel statut d'un hôte sont pris en compte pour le calcul du % de FLAPPING low_flap_threshold [OBLIGATOIRE] *Nom du check (lorsqu'il s'agit d'un modèle)* use0-100]; Seuil de sortie de l'état Flapping high_flap_threshold *Liste des modèles de check à utiliser*[0-100]; Seuil d'entrée dans l'état Flapping hostgroup_nameevent_handler_enabled *Liste des groupes d'hôtes sur lesquels va s'appliquer le check*[0/1]; Le gestionnaire d’événements est-il activé pour cet hôte ? hostevent_namehandler *ListeCommande desutilisée hôtes,pour modèle d'hôtes, clusters ou modèle de cluster sur lesquels le check va s'appliquer (cf la clé apply_on_type)* notes_url le gestionnaire d’événements* business_impact_modulations *Modulation d'impact métier à utiliser* macromodulations *Modulation de données à utiliser* resultmodulations *URL externe pouvant donner des informations supplémentaires sur le check* enabled *Modulation de données à utiliser* #### Modèles #### register [0/1]; Est ce que le groupe d'hôtes est activé/désactivé ?L'objet est-il un modèle de cluster ou un cluster ? } |
| Info |
|---|
| Le nom du cluster ( host_name ) ne doit pas exister en tant que nom d'hôte. Si tel est le cas, un warning sera affiché à l'import indiquant que les éléments de même nom ont été ignorés. |
Les groupes d'hôtes
| Code Block |
|---|
define hostgroup { hostgroup_name [OBLIGATOIRE] *Nom du groupe d'hôtes* members pack *Pack auquel appartientListe des hôtes à ajouter dans le groupe* template_members *Les hôtes ayant les modèles listés seront ajoutés au groupe* enabled [0/1]; Est ce que le groupe d'hôtes est activé/désactivé ? pack *Pack auquel appartient le groupe* } |
Les checks
| Code Block |
|---|
define service { ##### Définition du check - Général #### service_description [OBLIGATOIRE] *Nom du check* name [OBLIGATOIRE] *Nom du check (lorsqu'il s'agit d'un modèle)* use apply_on_type [hosts/hosttpls/clusters/clustertpls]; Sur quel type d'objet le check sera appliqué ? (si non renseigné, sur un hôte) #### Données #### _NOMDEDONNEE *valeurListe des modèles de check laà donnéeutiliser* #### Paramètres de supervision #### maintenance_period hostgroup_name *PériodeListe des degroupes tempsd'hôtes récurrentesur pendantlesquels laquelleva ls'hôteappliquer estle en maintenancecheck* checkhost_periodname *Période de temps pendant laquelle les checks sont exécutés*Liste des hôtes, modèle d'hôtes, clusters ou modèle de cluster sur lesquels le check va s'appliquer (cf la clé apply_on_type)* checknotes_commandurl [OBLIGATOIRE] *Commande utilisée pour vérifier le statut UP/DOWN du *URL externe pouvant donner des informations supplémentaires sur le check* max_check_attempts enabled [OBLIGATOIRE] *Nombre de vérifications de l'état du check pour passer en état HARD* check_interval 0/1]; Est ce que le groupe d'hôtes est activé/désactivé ? pack [OBLIGATOIRE] *IntervallePack d’exécutionauquel deappartient lale commandegroupe* retry_interval [OBLIGATOIRE] *Intervalle de confirmation d'état (en minutes)* apply_on_type check_running_timeout *Timeout de la commande de vérification de l'hôte (en secondes)* active_checks_enabled [0/1]; Est ce que les checks actifs sont activés pour ce check ? passive_checks_enabled [0/1]; Est ce que les checks passifs sont activés pour ce check ? duplicate_foreach [hosts/hosttpls/clusters/clustertpls]; Sur quel type d'objet le check sera appliqué ? (si non renseigné, sur un hôte) #### Données #### _NOMDEDONNEE *Donnéevaleur utiliséede pour la fonctionnalité Duplicate For Each (en majuscule et débutant par un _)* default_valuedonnée* #### Paramètres de supervision #### maintenance_period *VousPériode pouvezde fournirtemps plusieursrécurrente arguments pour chaque valeur définie dans la donnée de pendant laquelle l'hôte utiliséest par la fonctionnalité Duplicate for Each.* #### Notifications #### notifications_enabled en maintenance* check_period [0/1]; Est ce que*Période de temps pendant laquelle les notificationschecks sont activées pour cet hôte ? exécutés* contactscheck_command *Liste des contacts auxquels envoyer les notifications[OBLIGATOIRE] *Commande utilisée pour vérifier le statut UP/DOWN du check* contactmax_check_groupsattempts *Groupes d'utilisateurs auxquels seront envoyées les notifications pour cet hôte[OBLIGATOIRE] *Nombre de vérifications de l'état du check pour passer en état HARD* notificationcheck_interval [OBLIGATOIRE] *Intervalle d'envoid’exécution desde notifications (en minutes)la commande* notificationretry_periodinterval [OBLIGATOIRE] *PériodeIntervalle de tempsconfirmation pendant laquelle les notifications sont actives* notification_optionsd'état (en minutes)* check_running_timeout *Etats pour lesquels il faut envoyer une notification*Timeout de la commande de vérification de l'hôte (en secondes)* firstactive_notificationchecks_delayenabled *Délai avant l'envoi de la première notification*[0/1]; Est ce que les checks actifs sont activés pour ce check ? escalationspassive_checks_enabled *Liste des escalades de notifications utilisées pour cet hôte* #### Expert #### poller_tag[0/1]; Est ce que les checks passifs sont activés pour ce check ? duplicate_foreach *Poller tag associé à ce check* reactionner_tag*Donnée utilisée pour la fonctionnalité Duplicate For Each (en majuscule et débutant par un _)* default_value *Reactionner tag associé à ce check* business_impact [0-5]; Impact métier du check is_volatileVous pouvez fournir plusieurs arguments pour chaque valeur définie dans la donnée de l'hôte utilisé par la fonctionnalité Duplicate for Each.* #### Notifications #### notifications_enabled [0/1]; CetteEst propriétéce permetque deles forcernotifications Shinkensont àactivées envoyerpour unecet notificationhôte pour? chaque retour en erreur d'un check. check_freshnesscontacts [0/1]; Est ce que la vérification de fraicheur du check est activée ?*Liste des contacts auxquels envoyer les notifications* contact_groups *Groupes d'utilisateurs auxquels seront envoyées les notifications pour cet hôte* freshnessnotification_thresholdinterval *Seuil de fraicheur du check* flap_detection_enabledIntervalle d'envoi des notifications (en minutes)* notification_period [0/1]; Est ce que la détection du flapping est activée ? flap_detection_options [o,d,u] ;Cette propriété permet de définir quel statut d'un hôte sont pris en compte pour le calcul du % de FLAPPING high_flap_threshold [0-100]; Seuil d'entrée dans l'état Flapping low_flap_threshold*Période de temps pendant laquelle les notifications sont actives* notification_options *Etats pour lesquels il faut envoyer une notification* first_notification_delay *Délai avant l'envoi de la première notification* escalations *Liste des escalades de notifications utilisées pour cet hôte* #### Expert #### poller_tag *Poller tag associé à ce check* reactionner_tag *Reactionner tag associé à ce check* business_impact [0-1005]; SeuilImpact demétier sortie de l'état Flapping process_perf_data du check is_volatile [0/1]; Prendre en compte la métrique éventuellement retournée par la check_command ? event_handler_enabled Cette propriété permet de forcer Shinken à envoyer une notification pour chaque retour en erreur d'un check. check_freshness [0/1]; Le gestionnaire d’événements est-il activé pour cet hôteEst ce que la vérification de fraicheur du check est activée ? eventfreshness_handlerthreshold *CommandeSeuil utiliséede pourfraicheur le gestionnaire d'évenements* business_impact_modulations du check* flap_detection_enabled *Modulation d'impact métier à utiliser* [0/1]; Est ce que la détection du flapping est activée ? flap_detection_options macromodulations *Modulation de données à utiliser*[o,d,u] ;Cette propriété permet de définir quel statut d'un hôte sont pris en compte pour le calcul du % de FLAPPING resultmodulationshigh_flap_threshold *Modulation de resultats à utiliser* definition_order[0-100]; Seuil d'entrée dans l'état Flapping low_flap_threshold [100] } |
Détails sur les applications possibles des checks
Les clés à utiliser pour l'importation différent selon le type de check que l'on veut importer. Le tableau ci-dessous résume ces différences:
Les contacts
| Code Block |
|---|
define contact { contact_name [OBLIGATOIRE] *Nom de l'utilisateur* name0-100]; Seuil de sortie de l'état Flapping process_perf_data [0/1]; Prendre en compte la métrique éventuellement retournée par la check_command ? event_handler_enabled [0/1]; Le gestionnaire d’événements est-il activé pour cet hôte ? event_handler *NomCommande deutilisée l'utilisateur (lorsqu'il s'agitpour le gestionnaire d'unévenements* modèle d'utilisateur)* display_name business_impact_modulations *NomModulation d'affichageimpact métier deà l'utilisateurutiliser* macromodulations password *MotModulation de passedonnées deà l'utilisateurutiliser* email resultmodulations *Adresse email*Modulation de resultats à utiliser* pagerdefinition_order [100] } |
Détails sur les applications possibles des checks
Les clés à utiliser pour l'importation différent selon le type de check que l'on veut importer. Le tableau ci-dessous résume ces différences:
| service_description | name | register | apply_on_type | Type de l'objet |
|---|---|---|---|---|
| X | 1 | hosts | Check appliqué sur un hôte | |
| X | 1 | clusters | Check appliqué sur un cluster | |
| X | 0 | hosttpls | Check appliqué sur un modèle d'hôte | |
| X | 0 | clustertpls | Check appliqué sur un modèle de cluster | |
| X | 0 | Modèle de check | ||
| X | 1 | Erreur |
Les contacts
| Code Block |
|---|
define contact { contact_name [OBLIGATOIRE] *Nom de l'utilisateur* name *Nom de l'utilisateur (lorsqu'il s'agit d'un modèle d'utilisateur)* display_name *Nom d'affichage de l'utilisateur* password *Mot de passe de l'utilisateur* email *Adresse email* pager *Numéro de téléphone* use *Liste des modèles de contact à hériter* contactgroups *Liste des groupes auxquels appartient l'utilisateur* expert *Numéro de téléphone* use *Liste des modèles de contact à hériter* contactgroups *Liste des groupes auxquels appartient l'utilisateur* expert [0/1]; Est ce que l'utilisateur est un administrateur système ? is_admin [0/1]; Est ce que l'utilisateur est un administrateur Shinken ? notificationways *Liste des méthodes de notifications à utiliser pour cet utilisateur* enabled [0/1]; Utilisateur désactivé/activé can_submit_commands [0/1]; Est ce que l'utilisateur peut soumettre des commandes ? acl_make_downtime [0/1]; Cette propriété permet de donner à l'utilisateur le droit de planifier ou d'enlever des périodes de maintenance depuis l'interface de visualisation acl_make_acknowledge [0/1]; Cette propriété permet de donner à l'utilisateur le droit d'effectuer ou d'enlever des prises en compte dans l'interface de visualisation acl_force_result_check [0/1]; CetteEst propriété permet de donner à ce que l'utilisateur le droit de forcer le résultat d'est un checkadministrateur dans l'interface de visualisation système ? acl_force_retry_checkis_admin [0/1]; CetteEst propriétéce permetque del'utilisateur donnerest àun l'utilisateuradministrateur leShinken droit? de demander les réexécutions de checks dans l'interface de visualisation acl_in_tab_history [null,history,sla,history_sla] Cette propriété permet de choisir la vue de l'onglet Historique dans l'interface de visualisation acl_show_history_range default_submit_to_staging [0/1]; Cette propriété permet de donner àsélectionner l'utilisateur le droitonglet de voirworkflow leà détailafficher despar changementsdéfaut, danslorsque l'Historiqueutilisateur charge dansune l'onglet Historique de l'interface de visualisation acl_show_sla_rangenouvelle page. notificationways *Liste des méthodes de notifications à utiliser pour cet utilisateur* enabled [0/1]; Utilisateur désactivé/activé can_submit_commands [0/1]; Est ce que l'utilisateur peut soumettre des commandes ? acl_make_downtime [0/1]; Cette propriété permet de donner à l'utilisateur le droit de voirplanifier leou détaild'enlever des changementspériodes dansde lesmaintenance SLA dansdepuis l'onglet Historique de l'interface de visualisation acl_sharemake_everybody acknowledge [none,read,create,organize,modify,delete,all0/1]; VousCette pouvezpropriété paramétrerpermet icide lesdonner droitsà dl'accèsutilisateur le àdroit lad'effectuer section "Tout le monde" des favoris deou d'enlever des prises en compte dans l'interface de visualisation acl_shareforce_result_groupcheck [none,read,create,organize,modify,delete,all]; Vous pouvez paramétrer ici les droits d'accès à la section "Mes groupes" des favoris de[0/1]; Cette propriété permet de donner à l'utilisateur le droit de forcer le résultat d'un check dans l'interface de visualisation acl_force_shareretry_privatecheck [none,read,create,organize,modify,delete,all[0/1]; VousCette pouvezpropriété paramétrerpermet icide lesdonner droitsà dl'accèsutilisateur àle ladroit sectionde "Privé"demander desles favorisréexécutions de checks dans l'interface de visualisation. acl_tryin_check_on_pollertab_history [0/1];null,history,sla,history_sla] Cette propriété permet de choisir la donnervue àde l'utilisateuronglet leHistorique droitdans dl'executerinterface les checks sur les pollers.de visualisation acl_tryshow_check_on_synchronizerhistory_range [0/1]; Cette propriété permet de donner à l'utilisateur le droit d'executer les checks sur la machine de configuration. } |
La clé contact_groups est dépréciée, utilisez plutôt contactgroups
Pour créer un modèle d'utilisateur:
Les Groupes de contacts
| Code Block |
|---|
define contactgroup { contactgroup_name [OBLIGATOIRE] *Nom du contact group* members *Membres du groupe* template_members *Les Utilisateurs avec le Modèle d'utilisateur spécifié appartiendront au groupe* enabled de voir le détail des changements dans l'Historique dans l'onglet Historique de l'interface de visualisation acl_show_sla_range [0/1] Cette propriété permet de donner à l'utilisateur le droit de voir le détail des changements dans les SLA dans l'onglet Historique de l'interface de visualisation acl_share_everybody [0/1[none,read,create,organize,modify,delete,all]; Contact désactivé/activé pack *Cette propriété permet de définir dans quel pack se trouve le groupe d'hôte.* } |
Les Méthodes de Notification
| Code Block |
|---|
define notificationway { notificationway_name [OBLIGATOIRE] *Cette propriété permet de définir le nom utilisé pour identifier la méthode de notification.* host_notification_period *Cette propriété permet de définir la période de temps pendant laquelle les notifications concernant les hôtes seront envoyées.* service_notification_period *Vous pouvez paramétrer ici les droits d'accès à la section "Tout le monde" des favoris de l'interface de visualisation acl_share_group [none,read,create,organize,modify,delete,all]; Vous pouvez paramétrer ici les droits d'accès à la section "Mes groupes" des favoris de l'interface de visualisation acl_share_private [none,read,create,organize,modify,delete,all]; Vous pouvez paramétrer ici les droits d'accès à la section "Privé" des favoris de l'interface de visualisation. acl_try_check_on_poller [0/1]; Cette propriété permet de définirdonner laà périodel'utilisateur dele temps pendant laquelledroit d'executer les notificationschecks concernantsur les checks seront envoyéespollers.* host_notifications_enabled *acl_try_check_on_synchronizer [0/1]; Cette propriété permet de définirdonner sià Shinkenl'utilisateur vale envoyerdroit desd'executer notificationsles concernantchecks les hôtes.*sur la machine de configuration. } |
La clé contact_groups est dépréciée, utilisez plutôt contactgroups
Pour créer un modèle d'utilisateur:
- La clé register doit avoir la valeur 0
- La clé contact_ name est remplacée par la clé name
Les Groupes de contacts
| Code Block |
|---|
define contactgroup { contactgroup_name [OBLIGATOIRE] *Nom du contact group* members *Membres du groupe* template_members service_notifications_enabled *Cette propriété permet de définir si Shinken va envoyer des notifications concernant les checks.* host_notification_commands *CetteLes propriétéUtilisateurs permetavec dele définirModèle lesd'utilisateur commandesspécifié quiappartiendront envoient les notifications pour un hôte.au groupe* service_notification_commands enabled *Cette propriété permet de définir les commandes qui envoient les notifications pour un check.* host_notification_options[0/1]; Contact désactivé/activé pack *Cette propriété permet de définir dans quel pack se trouve le groupe d'hôte.* } |
Les Méthodes de Notification
| Code Block |
|---|
define notificationway { notificationway_name [OBLIGATOIRE] quels Statuts et Contextes de l'hôte peuvent envoyer des notifications* service_notification_options *Cette propriété permet de définir quelsle Statutsnom etutilisé Contextespour duidentifier checkla peuventméthode envoyer des notificationsde notification.* minhost_businessnotification_impactperiod *Cette propriété permet de définir lela seuilpériode d'Impactde Métiertemps quipendant enverralaquelle desles notifications concernant les hôtes seront envoyées.* enabledservice_notification_period [0/1]; Contact désactivé/activé pack*Cette propriété permet de définir la période de temps pendant laquelle les notifications concernant les checks seront envoyées.* host_notifications_enabled *Cette propriété permet de définir danssi Shinken quelva packenvoyer sedes trouvenotifications leconcernant groupeles d'hôtehôtes.* } |
Les Escalades
| Code Block |
|---|
define escalation { escalation_name service_notifications_enabled [OBLIGATOIRE] *NomCette propriété dupermet contact group* firstde définir si Shinken va envoyer des notifications concernant les checks.* host_notification_timecommands *Cette propriété estpermet utilisée pourde définir combienles decommandes tempsqui (enenvoient minutes)les Shinken doit attendre après la première notification notifications pour démarrerun l'escaladehôte.* lastservice_notification_time commands *Cette propriété estpermet utiliséede pour définir combienles decommandes tempsqui (enenvoient minutes) Shinken doit attendre après la première notification pour arreter l'escaladeles notifications pour un check.* host_notification_intervaloptions *Cette propriété permet de définir les intervallesquels Statuts et Contextes de temps entre lesl'hôte peuvent envoyer des notifications.* escalationservice_notification_periodoptions *Cette propriété permet de estdéfinir utiliséequels pourStatuts définiret laContextes périodedu pendantcheck laquellepeuvent l'escaladeenvoyer serades activée.notifications* escalation_optionsmin_business_impact *Cette propriété permet de définir quels états peuvent démarrer une escalade* contactsle seuil d'Impact Métier qui enverra des notifications.* enabled *Cette propriété est utilisée pour définir quels sont les utilisateurs à notifier.* contact_groups *Cette propriété est utilisée pour définir quels sont les utilisateurs à notifier.* enabled [0/1]; Contact [0/1]; Contact désactivé/activé pack *Cette propriété permet de définir dans quel pack se trouve le groupe d'hôte.* } |
Les Escalades
| Code Block |
|---|
define businessimpactmodulationescalation { business_impact_modulation_name escalation_name [OBLIGATOIRE] *Nom dedu lacontact modulationgroup* modulation_period first_notification_time *Cette propriété est utilisée pour définir combien de temps (en minutes) Shinken doit attendre après la première notification pour démarrer l'escalade.* last_notification_time *PériodeCette depropriété tempsest pendantutilisée laquellepour ladéfinir modulationcombien estde effective* temps (en minutes) Shinken business_impactdoit attendre après la première notification pour arreter l'escalade* notification_interval *Cette propriété permet de définir les intervalles de temps entre les notifications.* escalation_period [0-5]; Valeur de l'impact métier à utiliser pour la modulation pack *Nom du pack dans lequel se trouve la modulation* enabled [0/1]; La modulation est elle activée ? } |
Modulation de données
*Cette propriété est utilisée pour définir la période pendant laquelle l'escalade sera activée.*
escalation_options *Cette propriété permet de définir quels états peuvent démarrer une escalade*
contacts *Cette propriété est utilisée pour définir quels sont les utilisateurs à notifier.*
contact_groups *Cette propriété est utilisée pour définir quels sont les utilisateurs à notifier.*
enabled [0/1]; Contact désactivé/activé
pack *Cette propriété permet de définir dans quel pack se trouve le groupe d'hôte.*
} |
Modulation d'impact métier
| Code Block |
|---|
define businessimpactmodulation |
| Code Block |
define macromodulation { macromodulationbusiness_impact_modulation_name [OBLIGATOIRE] *Nom de la modulation* modulation_period *Période de temps pendant laquelle la modulation est effective* packbusiness_impact [0-5]; Valeur de l'impact métier à utiliser pour la modulation pack *Nom du pack dans lequel se trouve la modulation* enabled [0/1]; La modulation est elle activée ? } |
Modulation de
résultatsdonnées
| Code Block |
|---|
define resultmodulationmacromodulation { resultmodulationmacromodulation_name [OBLIGATOIRE] *Nom de la modulation* modulation_period *Période de temps pendant laquelle la modulation est effective* output_rulespack *Définition des règles de modulation* Nom du pack dans lequel packse trouve la modulation* enabled *Nom du pack dans lequel se trouve la modulation* enabled [0/1]; La modulation est elle activée ? } |
Modulation de résultats
| Code Block |
|---|
define commandresultmodulation { commandresultmodulation_name [OBLIGATOIRE] *Nom de la commandemodulation* commandmodulation_lineperiod [OBLIGATOIRE] *Commande à executer* timeout *Période de temps pendant *Temps en secondes à partir duquel la commande entre en timeout* laquelle la modulation est effective* output_rules enabled [0/1]; La commande est elle activée ? *Définition des règles de modulation* pack pack *Nom du pack dans lequel se trouve la commande* } |
Les Périodes de temps
| Code Block |
|---|
define timeperiod { modulation* enabled timeperiod_name [OBLIGATOIRE] *Nom de la période de temps* monday [0/1]; La modulation est elle activée ? } |
Les commandes
| Code Block |
|---|
define command { command_name [OBLIGATOIRE] *Nom de la commande* command_line [OBLIGATOIRE] *Commande à executer* 08:00-18:00 tuesday 08:00-18:00 wednesdaytimeout 08:00-18:00 thursday *Temps en secondes à partir duquel la commande entre en timeout* enabled 08:00-18:00 friday [0/1]; La commande est elle activée ? 08:00-18:00 pack sunday 08:00-18:00 saturday *Nom du pack dans lequel se trouve la commande* poller_tag 08:00-18:00 enabled *Poller [0/1]; La modulation est elle activée ?tag associé à cette commande* reactionner_tag *Reactionner tag associé à cette commande* packmodule_type *Nom du pack dans lequel se trouve la modulation* } |
Forcer l'utilisation d'un modèle
Certains objets de Shinken Entreprise peuvent utiliser des modèles pour accélérer le processus de configuration. C'est le cas par exemple des hôtes, checks ou des contacts.
Dans les fichiers d'imports, la propriété "use" permet de définir une liste de modèles à utiliser.
Pour chaque objet de même nom qui définit la propriété "use", les modèles spécifiés seront ajoutés dans la liste des modèles à hériter pour l'objet en question.
Prenons par exemple la configuration suivante:
| Code Block |
|---|
# Fichier 1
define host {
host_name Test host
address 192.168.1.XX
use modele1, modele2
}
# Fichier 2
define host {
host_name Test host
address 192.168.1.XX
use modele3
} |
L'hôte "Test host" héritera des modèles modele1, modele2 et modele3.
Or, il se peut aussi que l'utilisateur veuille remplacer la liste des modèles utilisés au lieu d'y ajouter des éléments. Dans ce cas, il peut ajouter [FORCE] à la propriété "use", ce qui aura pour effet de remplacer completement la liste des modèles utilisés par celle fournie avec l'option [FORCE].
Note : il n'y a pas d'espace entre la propriété et le [FORCE].
La configuration se comporterait alors de la manière suivante:
| Code Block |
|---|
# Source 1
define host {
host_name Test host
address 192.168.1.XX
use modele1, modele2
}
# Source 2
define host {
host_name Test host
address 192.168.1.XX
use[FORCE] modele3
} |
Dans ce dernier cas, l'hôte "Test host" utilisera seulement le modèle modele3, à cause de l'option FORCE.
Résolution des conflits
Dans le cas ou l'option FORCE est utilisée plusieurs fois, la dernière à être définie sera effective. Par exemple, si le même objet est défini plusieurs fois dans des sources différentes, la dernière source définissant la propriété "use" avec l'option FORCE fera foi.
Prenons la configuration suivante:
| Code Block |
|---|
# Source 1
define host {
host_name Test host
address 192.168.1.XX
use modele1, modele2
}
# Source 2
define host {
host_name Test host
address 192.168.1.XX
use[FORCE] modele3
}
# Source 3
define host {
host_name Test host
address 192.168.1.XX
use[FORCE] modele4
} |
Dans cet exemple de configuration, l'hôte utilisera seulement le modèle "modele4".
Forcer l'application d'autres propriétés
De la même manière que pour forcer l'application des modèles, voici la liste des propriétés ou vous pouvez rajouter le [FORCE] suivant la propriété :
*Cette propriété est utilisée pour définir si cette commande devrait être exécutée par un module spécifique de vos pollers ou reactionners.*
shell_execution [0/1]; Cette propriété est utilisée pour définir si la commande doit être exécutée dans un shell.
} |
Les Périodes de temps
| Code Block |
|---|
define timeperiod {
timeperiod_name [OBLIGATOIRE] *Nom de la période de temps*
monday 08:00-18:00
tuesday 08:00-18:00
wednesday 08:00-18:00
thursday 08:00-18:00
friday 08:00-18:00
sunday 08:00-18:00
saturday 08:00-18:00
enabled [0/1]; La modulation est elle activée ?
pack *Nom du pack dans lequel se trouve la modulation*
}
|
Forcer l'utilisation d'un modèle
view_contact_groups
notification_contacts
notification_contact_groups
edition_contacts
edition_contact_groups
parents
escalations
business_impact_modulations
macromodulations
resultmodulations
Forcer une propriété à aucune valeur
Dans certains cas, on veut définir spécifiquement qu'une propriété d'un objet n'a aucune valeur. Cela signifie aussi que cette propriété n'aura pas de valeur héritée d'un modèle.
On peut obtenir ce comportement en utilisant la valeur "null" dans les fichiers de configuration:
| Code Block |
|---|
define host {
host_name mon_hote
parents null
} |
Note sur le champ SE_UUID
Le champ SE_UUID qui peut être trouvé dans les fichiers de configuration est un champ interne à Shinken Entreprise.
Il permet d'identifier les objets de manière unique. Ce champ ne doit donc pas être modifié manuellement.
Aussi, lors de la copie d'objet dans les fichiers de configuration, il faut être vigilant quand à la présence d'un champ SE_UUID. Dans ce cas de figure, il faut supprimer le champ SE_UUID de l'objet dupliqué, sans quoi l'interface de Configuration affichera une erreur à l'import de la source.