Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Scroll Ignore
scroll-pdftrue
scroll-officetrue
scroll-chmtrue
scroll-docbooktrue
scroll-eclipsehelptrue
scroll-epubtrue
scroll-htmltrue
Panel
titleSommaire

Table of Contents
maxLevel3
stylenone


Introduction

Le module architecture-export permet de recevoir et envoyer la

  • d'envoyer une description de l'architecture d'
installations Shinken,
  • installation Shinken
  • de recevoir cette configuration ( ou celle d'une autre installation ) et d'en générer :
    • des cartes NagVis
et
    • des hôtes Shinken
associés pour la supervision.
    • qui seront envoyés à leur tour au Synchronizer pour les superviser


Une description détaillée de ce module, son utilité et son utilisation sont présentes dans les pages de documentations associées :   Visualiser l'architecture de son installation Shinken


Ci-dessous sont présentées de manière synthétique les différentes options de configuration de ce module, leur rôle ainsi que leurs valeurs par défaut.

Activation du module

Le module brokerarchitecture-module-livedataexport est un module qui peut être activé seulement sur le démon sur BrokerArbiter.

  • L'activation du module s'effectue en ajoutant le nom de ce module dans le fichier de configuration du Brokerde l'Arbiter.
  • Pour ce faire, ouvrer il faut ouvrir le fichier de configuration du Broker à Arbiter à l'emplacement /etc/shinken/Brokersarbiters/ , et ajouter le nom de votre module de type "brokerarchitecture-module-livedataexport".


Exemple : par défaut, nous livrons un module dont le nom est " architecture-export " :

Code Block
languagebash
define brokerarbiter {
    [...]
    modules                   Simple-log, WebUI, Graphite-Perfdata, slasynchronizer-import, architecture-export
    [...]
}


Pour prendre en compte le changement les changements de configuration, il faut redémarrer l'Arbiter :

Code Block
service shinken-arbiter restart

Configuration

Info

Pour que l'architecture-export génère des cartes, il faut que l'addon nagvis-shinken-architecture soit activé ( voir Configuration de la Visualisation de l'architecture )

Configuration

La configuration du module se trouve par défaut dans le fichier /etc/shinken/modules/architecture-exportLa configuration du module se trouve par défaut dans le fichier  /etc/shinken/modules/architecture-export.cfg

  • Vous trouverez aussi systématiquement un exemple dans /etc/shinken-user-example/configuration/daemons/arbiters/modules/architecture-export/architecture-export.cfg

Exemple de fichier de configuration

title
Code Block
/etc/shinken/modules/architecture-export.cfg
##================================================================================
# Architecture-Export
#================================================================================
# Daemons that can load this module:
#  - arbiter
# This module exports Shinken architecture to others architecture-export modules
# It also creates NagVis Maps for received architecture
#================================================================================

define module {

    # ┌─────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
    # │ ──────────────────────────────────────    MODULE IDENTITY    ────────────────────────────────────── │ #
    # └─────────────────────────────────────────────────────────────────────────────────────────────────────┘ #

    # ─── Module name [ Must be unique ]                                                      [ MANDATORY ] ───
    module_name        # ───                               architecture-export

    # ─── Module type [ Do not edit ]                                                         [ MANDATORY ] ───
    module_typename                                         architecture-export

    # ─── ┌─────────────────────────────────────────────────────────────────────────────────────────────────────┐Module #
type [ Do not #edit ] ─────────────────────────────────────    NAGVIS FILE PATH    ──────────────────────────────────────  #
      # └─────────────────────────────────────────────────────────────────────────────────────────────────────┘ #

    # ─── Path of NagVis installation                           [ MANDATORY ] ───
    # ───                                    ───
    # ─── Used to store configuration maps files and to update NagVis settings                              ───
    # >>> Default : /etc/shinken/external/nagvis         ───
    module_type                                         architecture_export

    # ┌─────────────────────────────────────────────────────────────────────────────────────────────────────┐ ───#
    path#  ─────────────────────────────────────    NAGVIS FILE PATH    ──────────────────────────────────────  #
    # └─────────────────────────────────────────────────────────────────────────────────────────────────────┘ #

    # ─── Path of NagVis installation                 /etc/shinken/external/nagvis

    # ┌─────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
    #  ──────────────────────────────────────    MODULE OPTIONS    ───────────────────────────────────────  #
    # └─────────────────────────────────────────────────────────────────────────────────────────────────────┘ #

    # ─── Base of URL used to display links in the Visualization UI         ───
    # ─── Used to store configuration maps files and to update NagVis     settings            ───
    # >>> Default : Use Arbiter URL        ───
     #                                                            ───
    # map_base_url                                      http://example.com/
───
    # ─── Architecture description recipients       Default : /etc/shinken/external/nagvis                                                      ───
    # ─── When the architecture of this Shinken installation changes (realms and daemons configuration),    ───
    # ─── and the arbiter is restarted the architecture description will be sent to the following hosts.    ───
    # >>> Default : http://127.0.0.1:7780 (locally)                                                         ───
    send_my_architecture_to_recipientspath                                                http://127.0.0.1:7780/etc/shinken/external/nagvis

    # ┌─────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
    # │ ─────────────────────────────────────────────────────────────────────────    MODULE COMMUNICATIONOPTIONS    ─────────────────────────────────────────────────────────────────────────── │ #
    # └─────────────────────────────────────────────────────────────────────────────────────────────────────┘ #

    # ───────────  Listening socket configuration  ──────────────────────────────────────────────────────────── 

 ─── Base of URL used to display links in the Visualization UI    # ─── This module opens a listening socket on which other Shinken installations                         ───
    #     ─── will send their architecture description.                                                         ───

    # ─── Network interface used for the listening socket (0.0.0.0 = all interfaces)                    ───
    ───
#    # >>> Default : 0.0.0.0   Default : Use Arbiter URL                                                                   ───
    #   ───
    host                                              0.0.0.0

    # ─── Port to use for the listening socket                                      ───
    # map_base_url                   ───
    # >>> Default : 7780             http://example.com/

    # ─── Architecture description recipients                                                               ───
    port# ─── When the architecture of this Shinken installation changes ( realms and daemons configuration ),  ───
    # ─── and the arbiter is restarted, the architecture description will be sent to the following hosts.   ───
    #  7780

     # ─── Protocol to use for the listening socket                                                          ───
    # ─── Enable  : 1 ( Use HTTPS )                 ───
    #           Default : http://127.0.0.1:7780 ( locally )                                    ───
    # >>> Disable : 0 ( Use HTTP ) (───
 Default )  #                                                            ───
    use_ssl                                       ───
    0

send_my_architecture_to_recipients    # ───  SSL Certificate to use for the listening socket (if HTTPS)  http://127.0.0.1:7780

    # ┌─────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
    #  ───────────────────────────────────    MODULE COMMUNICATION    ────────────────────────────────────  #
    # └─────────────────────────────────────────────────────────────────────────────────────────────────────┘ #

    # ───────────  Listening ───
socket configuration  ────────────────────────────────────────────────────────── #

 >>> Default : /etc/shinken/certs/server.cert             # ─── This module opens a listening socket on which other Shinken installations                         ───
    # ─── will send their architecture description.           ───
    ssl_cert                                          /etc/shinken/certs/server.cert
───
    # ─── Network SSL Key to useinterface used for the listening socket (if HTTPS) 0.0.0.0 = all interfaces )                      ───
    #                       ───
    # >>> Default : /etc/shinken/certs/server.key                                                           ───
    ssl_key         ───
    #           Default : 0.0.0.0                 /etc/shinken/certs/server.key

        # ─────────  Connection to the listener-shinken  ────────────────────────────────────────────────────────── 

    # ─── Connection parameters for the module to communicate with the listener-shinken                     ───
    # ───
 (used to create hosts# for maps)                                                                   ───
    # ─── Protocol used by listener-shinken                         ───
    host                                    ───
    # ─── Enable  : 1 ( Use HTTPS ) 0.0.0.0

    # ─── Port to use for the listening socket                                                              ───
    # >>> Disable : 0 ( Use HTTP ) ( Default )                                                              ───
    # listener_use_ssl                         ───
    #     0

    # ─── Listener-shinkenDefault configured: login7780                                                                 ───
    # >>> Default : Shinken     ───
    #                                                                        ───
    # listener_login                          ───
    port      login

    # ─── Listener-shinken configured password                                  7780

    # ─── Protocol to use for the listening socket                ───
    # >>> Default : Default password generated for listener-shinken                              ───
    #       ───
    # listener_password                                 pass

    # ┌─────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
    #  ─────────────────────────────────     MAPS CREATION PARAMETERS    ─────────────────────────────────  #
    # └─────────────────────────────────────────────────────────────────────────────────────────────────────┘ #

    # ─── When an architecture description is received by the module,             ───
    #           ...     : Enable  => 1 ( ───
Use HTTPS )  # ─── it creates corresponding hosts and NagVis maps.                                                   ───

    # ─── Name with which this Shinken installation will be identified inDefault the: NagVisDisable maps=> 0 ( Use HTTP )              ───
    # ─── The following characters are forbidden in the architecture name: ~!$%^&*"'|<>?,()=/+              ───
    # >>> Default : Shinken      ───
    #                                                                       ───
    architecture_name                            ───
    use_ssl Shinken

    # ─── Sort order for realms in the NagVis maps                               0

    # ─── SSL Certificate to use for the listening socket ( if HTTPS )          ───
    # ─── sort_by_name : Sort realms by alphabetic order                ───
    #                                ───
    # >>> sort_by_size : Sort realms by size (on the map) ( Default )                                       ───
    # map_realm_layout          ───
    #           Default : /etc/shinken/certs/server.cert       sort_by_size

    # ┌─────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
    #  ───────────────────────────────    BROKER CONNECTION PARAMETERS    ────────────────────────────────  #
    # └─────────────────────────────────────────────────────────────────────────────────────────────────────┘ #

    # ─── These parameters are used to allow nagvis to communicate with───
 the Broker and modules# you want     ───

    # ─── Name of the Broker holding the modules you want nagvis to communicate with                        ───
    # >>> Default : broker-master                                              ───
    ssl_cert                         ───
    # architecture_export__broker_connection__broker_name broker-master

    # ─── Name of the Livestatus module you want nagvis to communicate with to retrieve objects information ─── /etc/shinken/certs/server.cert

    # >>>─── DefaultSSL :Key Livestatusto use for the listening socket ( if HTTPS )                                              ───
    #                   ───
    # architecture_export__broker_connection__broker_livestatus Livestatus

    # ─── Type of the target WebUI you want to communicate with                                             ───
    # ─── This allow redirection when clicking on object on the maps   ───
    #           Default : /etc/shinken/certs/server.key                    ───
    # >>> module : Use a WebUI module configuration for the communication ( Default )               ───
    #    ───
    # ─── url    : Use an url for the communication                                                         ───
    # architecture_export_broker_connection_broker_webui_communication_type module

    # ─── Targetted WebUI to communicate with          ───
    ssl_key                                                 ───/etc/shinken/certs/server.key

    # ─────────── If previousConnection parameterwith isthe setlistener-shinken to "module", this must be a WebUI name          ─────────────────────────────────────────────────────── #

    # ─── Connection parameters for the module to communicate with the listener-shinken                     ───
    # ─── If previous parameter is set to "url", this must be an url ( used to create hosts for maps )                                                                 ───
    # >>> Default : WebUI ─── Protocol used by listener-shinken                                                                 ───
    #                             ───
    # architecture_export_broker_connection_broker_webui_target WebUI
}

Détails des sections composant le fichier de configuration

Identification du module

est possible de définir plusieurs instances de module de type MODULE_NAME, le paramètre module_name permet d'identifier une instance donnée.
nomtypedéfautcommentaire
                                                                     ───
    #           ...     : Enable  => 1 ( Use HTTPS )                                                        ───
    #           Default : Disable => 0 ( Use HTTP )                                                         ───
    #                                                                                                       ───
    # listener_use_ssl                                    0

    # ─── Listener-shinken configured login                                                                 ───
    #                                                                                                       ───
    #           Default : Shinken                                                                           ───
    #                                                                                                       ───
    # listener_login                                      login

    # ─── Listener-shinken configured password                                                              ───
    #                                                                                                       ───
    #           Default : Default password generated for listener-shinken                                   ───
    #                                                                                                       ───
    # listener_password                                   pass

    # ─────  Connection with the graphite host via ssh  ───────────────────────────────────────────────────── #

    # ─── Connection parameters for the module to communicate with the graphite host via ssh                ───
    # ─── ( used to get the graphite configuration )                                                        ───
    # ─── These parameters will be the same for every architecture received by the module                   ───
    # ─── so every graphite host should allow ssh connection with these parameters                          ───
    # ─── SSH Port                                                                                          ───
    #                                                                                                       ───
    #           Default : 22                                                                                ───
    #                                                                                                       ───
    # ssh_port                                            22

    # ─── SSH user                                                                                          ───
    #                                                                                                       ───
    #           Default : shinken                                                                           ───
    #                                                                                                       ───
    # ssh_user                                            shinken

    # ─── SSH key file                                                                                      ───
    #                                                                                                       ───
    #           Default : /var/lib/shinken/.ssh/id_rsa                                                      ───
    #                                                                                                       ───
    # ssh_key_file                                        /var/lib/shinken/.ssh/id_rsa

    # ─── SSH timeout                                                                                       ───
    #                                                                                                       ───
    #           Default : 5 seconds                                                                         ───
    #                                                                                                       ───
    # ssh_timeout                                         5

    # ┌─────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
    # │ ─────────────────────────────────    MAPS CREATION PARAMETERS    ────────────────────────────────── │ #
    # └─────────────────────────────────────────────────────────────────────────────────────────────────────┘ #

    # ─── When an architecture description is received by the module,                                       ───
    # ─── it creates corresponding hosts and NagVis maps.                                                   ───
    # ─── Name with which this Shinken installation will be identified in the NagVis maps                   ───
    # ─── The following characters are forbidden in the architecture name: ~!$%^&*"'|<>?,()=/+              ───
    #                                                                                                       ───
    #           Default : Shinken                                                                           ───
    #                                                                                                       ───
    architecture_name                                   Shinken

    #                                                                                                       ───
    #           ...     : Sort order for realms in the NagVis maps                                          ───
    #           ...     : sort_by_name => Sort realms by alphabetic order                                   ───
    #           Default : sort_by_size => Sort realms by size (on the map)                                  ───
    #                                                                                                       ───
    # map_realm_layout                                    sort_by_size

    # ┌─────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
    # │ ───────────────────────────────    BROKER CONNECTION PARAMETERS    ──────────────────────────────── │ #
    # └─────────────────────────────────────────────────────────────────────────────────────────────────────┘ #

    # ─── These parameters are used to allow NagVis to communicate with the Broker and modules you want     ───
    # ─── Name of the Broker holding the modules you want NagVis to communicate with                        ───
    #                                                                                                       ───
    #           Default : broker-master                                                                     ───
    #                                                                                                       ───
    # architecture_export__broker_connection__broker_name broker-master

    # ─── Name of the Livestatus module you want NagVis to communicate with to retrieve objects information ───
    #                                                                                                       ───
    #           Default : Livestatus                                                                        ───
    #                                                                                                       ───
    # architecture_export__broker_connection__broker_livestatus Livestatus

    # ─── Type of the target WebUI you want to communicate with                                             ───
    # ─── This allow redirection when clicking on object on the maps                                        ───
    #                                                                                                       ───
    #           Default : module => Use a WebUI module configuration to get it's address                    ───
    #           ...     : url    => Use a URL ( the WebUI address is behind a reverse proxy or use an DNS   ───
    #                               address )                                                               ───
    #                                                                                                       ───
    # architecture_export__broker_connection__broker_webui_communication_type module

    # ─── Targeted WebUI to communicate with                                                                ───
    # ─── If previous parameter is set to "module", this must be a WebUI name                               ───
    # ─── If previous parameter is set to "url", this must be a URL                                         ───
    #                                                                                                       ───
    #           Default : WebUI                                                                             ───
    #                                                                                                       ───
    # architecture_export__broker_connection__broker_webui_target WebUI

}
  

Détails des sections composant le fichier de configuration

Identification du module

Il est possible de définir l'identité du module de type architecture-export .

NomTypeUnitéDéfautCommentaire
Code Block
module_name 
Texte--- architecture-export

Nous vous conseillons de choisir un nom en fonction de l'utilisation du module pour que votre configuration soit simple à maintenir.

Doit être unique.

Code Block
module_type 
Texte--- architecture-export Ne peut être modifié.



Chemin d'accès à NagVis

Code Block
languagejs
	... 

    # ┌─────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
    # │ ─────────────────────────────────────    NAGVIS FILE PATH    ────────────────────────────────────── │ #
    # └─────────────────────────────────────────────────────────────────────────────────────────────────────┘ #
 
    # ─── Path of NagVis installation                                                                       ───
    # ─── Used to store configuration maps files and to update NagVis settings                              ───
    #                                                                                                       ───
    #           Default : /etc/shinken/external/nagvis                                                      ───
    #                                                                                                       ───
    path                                                /etc/shinken/external/nagvis  

	...

Afin de modifier les paramètres de NagVis et de sauvegarder les fichiers de cartes générées, le module doit connaître le chemin d'accès vers le NagVis utilisé

NomTypeUnitéDéfautCommentaire
Code Block
path
Texte--- /etc/shinken/external/nagvis Chemin d'accès vers l'installation NagVis utilisée par le module.

Options de fonctionnement du module

Code Block
languagejs
	... 

    # ┌─────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
    # │ ──────────────────────────────────────    MODULE OPTIONS    ─────────────────────────────────────── │ #
    # └─────────────────────────────────────────────────────────────────────────────────────────────────────┘ #
 
    # ─── Base of URL used to display links in the Visualization UI                                         ───
    #                                                                                                       ───
    #           Default : Use Arbiter URL                                                                   ───
    #                                                                                                       ───
    # map_base_url                                        http://example.com/
 
    # ─── Architecture description recipients                                                               ───
    # ─── When the architecture of this Shinken installation changes ( realms and daemons configuration ),  ───
    # ─── and the arbiter is restarted, the architecture description will be sent to the following hosts.   ───
    #                                                                                                       ───
    #           Default : http://127.0.0.1:7780 ( locally )                                                 ───
    #                                                                                                       ───
    send_my_architecture_to_recipients                  http://127.0.0.1:7780  

	...

Le module génère des cartes et envois son architecture à d'autres modules du même type. Il est possible de spécifier l'URL d'accès aux cartes, mais aussi la liste des modules à qui envoyer sa propre architecture

NomTypeUnitéDéfautCommentaire
Code Block
map_base_url
Texte--- Url de l'Arbiter

URL d'accès aux cartes générées par le module. L'URL sera utilisée pour les liens dans l'interface de Visualisation.

Code Block
send_my_architecture_to_recipients
Texte--- http://127.0.0.1:7780 Liste des adresses des modules architecture-export vers lesquels envoyer son architecture. Les adresses doivent être séparées par des virgules.

Communication du module

Le module doit écouter vers l'extérieur pour recevoir des architectures, mais il doit aussi communiquer avec le listener-shinken du Synchronizer pour lui envoyer les hôtes générés pour ses cartes. Ces paramètres de communications sont modifiables pour correspondre à chaque architecture.

Configuration des connexions entrantes
Code Block
languagejs
	... 

    # ───────────  Listening socket configuration  ────────────────────────────────────────────────────────────
 
    # ─── This module opens a listening socket on which other Shinken installations                         ───
    # ─── will send their architecture description.                                                         ───
    # ─── Network interface used for the listening socket ( 0.0.0.0 = all interfaces )                      ───
    #                                                                                                       ───
    #           Default : 0.0.0.0                                                                           ───
    #                                                                                                       ───
    host                                                0.0.0.0
 
    # ─── Port to use for the listening socket                                                              ───
    #                                                                                                       ───
    #           Default : 7780                                                                              ───
    #                                                                                                       ───
    port                                                7780
 
    # ─── Protocol to use for the listening socket                                                          ───
    #                                                                                                       ───
    #           ...     : Enable  => 1 ( Use HTTPS )                                                        ───
    #           Default : Disable => 0 ( Use HTTP )                                                         ───
    #                                                                                                       ───
    use_ssl                                             0
 
    # ─── SSL Certificate to use for the listening socket ( if HTTPS )                                      ───
    #                                                                                                       ───
    #           Default : /etc/shinken/certs/server.cert                                                    ───
    #                                                                                                       ───
    ssl_cert                                            /etc/shinken/certs/server.cert
 
    # ─── SSL Key to use for the listening socket ( if HTTPS )                                              ───
    #                                                                                                       ───
    #           Default : /etc/shinken/certs/server.key                                                     ───
    #                                                                                                       ───
    ssl_key                                             /etc/shinken/certs/server.key 

	...

NomTypeUnitéDéfautCommentaire
Code Block
host
Texte--- 0.0.0.0

Interface réseau sur lequel le module écoutera.

Remarque : 0.0.0.0 correspond à toutes les interfaces.

Code Block
port
Texte---

7780

Port d'écoute du module.
Code Block
use_ssl
Booléen--- 0

Paramètre activant le mode SSL ( HTTPS ).

Valeurs possibles :

  • 0
  • 1
Code Block
ssl_cert
Texte--- /etc/shinken/certs/server.cert Chemin d'accès vers le certificat SSL à utiliser ( si use_ssl est à 1 ).
Code Block
ssl_key
Texte--- /etc/shinken/certs/server.key

Chemin d'accès vers la clé SSL à utiliser ( si use_ssl est à 1 ).

Communication avec le listener-shinken
Code Block
languagejs
	... 

    # ────────  Connection with the listener-shinken  ─────────────────────────────────────────────────────────
 
    # ─── Connection parameters for the module to communicate with the listener-shinken                     ───
    # ─── ( used to create hosts for maps )                                                                 ───
    # ─── Protocol used by listener-shinken                                                                 ───
    #                                                                                                       ───
    #           ...     : Enable  => 1 ( Use HTTPS )                                                        ───
    #           Default : Disable => 0 ( Use HTTP )                                                         ───
    #                                                                                                       ───
    # listener_use_ssl                                    0
 
    # ─── Listener-shinken configured login                                                                 ───
    #                                                                                                       ───
    #           Default : Shinken                                                                           ───
    #                                                                                                       ───
    # listener_login                                      login
 
    # ─── Listener-shinken configured password                                                              ───
    #                                                                                                       ───
    #           Default : Default password generated for listener-shinken                                   ───
    #                                                                                                       ───
    # listener_password                                   pass

	...

NomTypeUnitéDéfautCommentaire
Code Block
listener_use_ssl
Texte--- 0

Paramètre activant le mode SSL pour la communication avec le listener-shinken ( HTTPS ).

Valeurs possibles :

  • 0 ( Use HTTP )
  • 1 ( U se HTTPS )
Code Block
listener_login
Texte--- Shinken

Nom d'utilisateur à utiliser pour communiquer avec le listener-shinken.

Code Block
listener_password
Texte--- mot de passe généré à l'installation

Mot de passe à utiliser pour communiquer avec le listener-shinken.

Communication avec les machines graphite
Code Block
languagejs
	...           

	# ─────  Connection with the graphite host via ssh  ───────────────────────────────────────────────────── #

    # ─── Connection parameters for the module to communicate with the graphite host via ssh                ───
    # ─── ( used to get the graphite configuration )                                                        ───
    # ─── These parameters will be the same for every architecture received by the module                   ───
    # ─── so every graphite host should allow ssh connection with these parameters                          ───
    # ─── SSH Port                                                                                          ───
    #                                                                                                       ───
    #           Default : 22                                                                                ───
    #                                                                                                       ───
    # ssh_port                                            22

    # ─── SSH user                                                                                          ───
    #                                                                                                       ───
    #           Default : shinken                                                                           ───
    #                                                                                                       ───
    # ssh_user                                            shinken

    # ─── SSH key file                                                                                      ───
    #                                                                                                       ───
    #           Default : /var/lib/shinken/.ssh/id_rsa                                                      ───
    #                                                                                                       ───
    # ssh_key_file                                        /var/lib/shinken/.ssh/id_rsa

    # ─── SSH timeout                                                                                       ───
    #                                                                                                       ───
    #           Default : 5 seconds                                                                         ───
    #                                                                                                       ───
    # ssh_timeout                                         5

   ...

NomTypeUnitéDéfautCommentaire
Code Block
ssh_port

Nombre

--- 22

Port SSH vers lequel se connecter aux machines graphite

Code Block
ssh_user

Texte

--- shinken

Nom d'utilisateur à utiliser pour se connecter aux machines graphite

Code Block
ssh_key_file

Texte

--- /var/lib/shinken/.ssh/id_rsa

Clé SSH à utiliser pour se connecter aux machines graphite

Code Block
ssh_timeout

Nombre

secondes 5

Nombre de secondes maximum pour se connecter aux machines graphite






Paramètres de création de cartes

Code Block
languagejs
	... 

    # ┌─────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
    # │ ─────────────────────────────────    MAPS CREATION PARAMETERS    ────────────────────────────────── │ #
    # └─────────────────────────────────────────────────────────────────────────────────────────────────────┘ #
 
    # ─── When an architecture description is received by the module,                                       ───
    # ─── it creates corresponding hosts and NagVis maps.                                                   ───
    # ─── Name with which this Shinken installation will be identified in the NagVis maps                   ───
    # ─── The following characters are forbidden in the architecture name: ~!$%^&*"'|<>?,()=/+              ───
    #                                                                                                       ───
    #           Default : Shinken                                                                           ───
    #                                                                                                       ───
    architecture_name                                   Shinken
 
    #                                                                                                       ───
    #           ...     : Sort order for realms in the NagVis maps                                          ───
    #           ...     : sort_by_name => Sort realms by alphabetic order                                   ───
    #           Default : sort_by_size => Sort realms by size (on the map)                                  ───
    #                                                                                                       ───
    # map_realm_layout                                    sort_by_size

	...

Il est possible de paramétrer certains aspects de la création des cartes NagVis


NomTypeUnitéDéfautCommentaire
Code Block
architecture_name
Texte--- Shinken

Nom de l'architecture de l'installation Shinken où se situe le module.

Ce nom sera affiché sur les cartes NagVis et les hôtes générés

Code Block
map_realm_layout
Texte--- sort_by_size

Ordre dans lequel les royaumes sont affichés sur les cartes NagVis.
Valeurs possibles :

  • sort_by_name ( Ordre alphabétique )
  • sort_by_size ( Ordonné par taille sur la carte )

Paramètre de communication avec le Broker et ses modules

Code Block
languagejs
	...
    
    # ┌─────────────────────────────────────────────────────────────────────────────────────────────────────┐ #
    # │ ───────────────────────────────    BROKER CONNECTION PARAMETERS    ──────────────────────────────── │ #
    # └─────────────────────────────────────────────────────────────────────────────────────────────────────┘ #

    # ─── These parameters are used to allow NagVis to communicate with the Broker and modules you want     ───
    # ─── Name of the Broker holding the modules you want NagVis to communicate with                        ───
    #                                                                                                       ───
    #           Default : broker-master                                                                     ───
    #                                                                                                       ───
    # architecture_export__broker_connection__broker_name broker-master

    # ─── Name of the Livestatus module you want NagVis to communicate with to retrieve objects information ───
    #                                                                                                       ───
    #           Default : Livestatus                                                                        ───
    #                                                                                                       ───
    # architecture_export__broker_connection__broker_livestatus Livestatus

    # ─── Type of the target WebUI you want to communicate with                                             ───
    # ─── This allow redirection when clicking on object on the maps                                        ───
    #                                                                                                       ───
    #           Default : module => Use a WebUI module configuration to get it's address                    ───
    #           ...     : url    => Use a URL ( the WebUI address is behind a reverse proxy or use an DNS   ───
    #                               address )                                                               ───
    #                                                                                                       ───
    # architecture_export__broker_connection__broker_webui_communication_type module

    # ─── Targeted WebUI to communicate with                                                                ───
    # ─── If previous parameter is set to "module", this must be a WebUI name                               ───
    # ─── If previous parameter is set to "url", this must be a URL                                         ───
    #                                                                                                       ───
    #           Default : WebUI                                                                             ───
    #                                                                                                       ───
    # architecture_export__broker_connection__broker_webui_target WebUI

   ...

Afin d'avoir les statuts des hôtes sur les cartes NagVis, mais aussi d'être correctement redirigé vers une WebUI lors du clic sur l'un d'entres eux, il existe des paramètres pour rendre la communication entre NagVis et Shinken possible

NomTypeUnitéDéfautCommentaire
Code Block
Code Block
module_name 
TexteMODULE_NAMEChaîne de caractères composée de lettres, de chiffres et des caractères _  et -, commençant par une lettre.
Code Block
module_type 
TexteMODULE_TYPEValeur non modifiable ( permet au DEMON-TYPE de charger le code logiciel correspondant ).

TITRE 

Le rôle de chaque paramètre et les valeurs possibles sont décrites dans le tableau suivant:

Nom du paramètre

Description

Valeur par défaut

host 
Adresse de l'interface utilisée pour l'écoute sur le port 7780. Pour écouter sur toutes les interfaces, utiliser l'adresse 0.0.0.00.0.0.0
port
Port utilisé pour communiquer avec le module architecture-export7780
use_ssl
Booléen (0 ou 1) qui indique si le module architecture-export doit communiquer via SSL (utiliser la valeur 1 pour forcer la communication via SSL)0
ssl_cert
Chemin vers le fichier de certificat SSL/etc/shinken/certs/server.cert
ssl_key
Chemin vers le fichier de clé SSL/etc/shinken/certs/server.key
architecture_name
Nom de l'architecture affichée dans l'interface de VisualisationShinken
map_base_url

Domaine à utiliser pour la construction des liens vers les cartes dans l'interface de Visualisation. Par défaut, l'adresse de l'Arbiter est utilisée.

Pour que les liens vers NagVis dans le menu Architecture de l'interface de Visualisation pointent vers https://mon-domaine.fr/adresse-de-nagvis..., il faut utiliser la valeur "https://mon-domaine.fr/" pour ce paramètre.

adresse de l'Arbiter
send_my_architecture_to_recipients
Liste des modules architecture-export distants auxquels il faut envoyer les informations d'architecture. Ces modules distants vont générer les hôtes et cartes NagVis dans leurs installations Shinken respectives.http://127.0.0.1:7780
listener_use_ssl
Lors de la réception d'une description d'architecture, indique si la communication avec le listener Shinken pour la création des hôtes Shinken associés à cette architecture doit se faire via SSL. Pour que cela fonctionne, il faut également que la communication via SSL soit activée dans les réglages du listener-shinken (faisable depuis l'interface de Configuration)0
listener_login
Lors de la réception d'une description d'architecture, indique le nom d'utilisateur à utiliser pour la connexion avec le listener-shinken pour la création des hôtes Shinken associés à cette architectureShinken
listener_password
Lors de la réception d'une description d'architecture, indique le mot de passe à utiliser pour la connexion avec le listener-shinken pour la création des hôtes Shinken associés à cette architecturemot de passe par défaut du listener
ssh_port
Lors de la réception d'une description d'architecture, indique le port SSH à utiliser lors de la connexion aux hôtes Graphite pour la découverte de l'architecture Graphite22
ssh_user
Lors de la réception d'une description d'architecture, indique l'utilisateur à utiliser lors de la connexion aux hôtes Graphite pour la découverte de l'architecture Graphiteshinken
ssh_key_file
Lors de la réception d'une description d'architecture, indique le chemin de la clé SSH à utiliser lors de la connexion aux hôtes Graphite pour la découverte de l'architecture Graphite/var/lib/shinken/.ssh/id_rsa.pub
ssh_timeout
Lors de la réception d'une description d'architecture, indique le timeout à utiliser lors de la connexion aux hôtes Graphite pour la découverte de l'architecture Graphite(secondes)
map_realm_layout
Lors de la création d'une carte NagVis, indique dans quel ordre seront affichés les royaumes. Les valeurs possibles sont sort_by_size (les royaumes qui comportent le plus de démons Shinken seront affichés en premier) et sort_by_name (les royaumes sont affichés par ordre alphabétique).sort_by_size
architecture_export__broker_connection__broker_name
Texte--- broker-master

Nom du Broker sur lequel sont les modules

WebUI et Livestatus

avec lesquels

NagVis communiquera

nous allons communiquer

Code Block
broker-master
architecture_export__broker_connection__broker_livestatus
Texte--- Livestatus Nom du module
de type
Livestatus
sur
avec lequel NagVis
récupérera les informations des éléments Shinken afin d'afficher leurs statuts sur les cartes.
va communiquer pour afficher les statuts des hôtes sur ses cartes
Code Block
Livestatus
architecture_export__broker_connection__broker_webui
Nom du module de type WebUI vers lequel NagVis redirigera l'utilisateur lorsqu'il clique sur un élément Shinken d'une carteWebUIarchitecture_export__broker_connection__broker_webui_redirect

Permet de définir une adresse personnalisée pour la redirection vers la WebUI.

WarningIl ne peut pas être utilisé en même temps que le paramètre
_communication_type
Texte--- module

Type de communication avec la WebUI souhaitée. Ce paramètre est utilisé pour la redirection lorsqu'on clique sur les liens de la carte.

Valeurs possibles :

  • module ( si on souhaite spécifier le nom d'un module WebUI pour obtenir son adresse )
  • URL ( si on souhaite renseigner une URL : l'adresse de la WebUI est derrière un reverse proxy ou utilise une adresse DNS )
Code Block
architecture_export__broker_connection__broker_webui
Aucun
Plus de détails sur le fonctionnement du module architecture-export et sur ces paramètres sont disponibles dans la page de documentation dédiée: Activation et configuration de la fonctionnalité
_target
Texte--- WebUI

WebUI avec laquelle communiquer.

  • Si le paramètre précédent est à module, celui-ci doit être le nom d'un module WebUI
  • Sinon, ce doit être une URL redirigeant vers un module WebUI


Note

La valeur de ce paramètre viendra écraser la configuration des paramètres "hosturl" et "servicegroupurl" du fichier "/opt/nagvis/etc/nagvis.ini.php" au redémarrage de l'Arbiter.







Envoi de la description de l'architecture

L'envoi de la description de l'architecture aux destinataires choisis ( paramètre   send_my_architecture_to_recipients ) est déclenché au démarrage du module architecture-export, c'est-à-dire au démarrage du démon Arbiter.

Il est également possible de déclencher cet envoi manuellement, sans avoir à redémarrer le démon Arbiter, en envoyant une requête HTTP POST à l'URL suivante : 

Code Block
adresse_arbiter:7780/v1/architecture/send


Par exemple, avec curlcURL :

Code Block
curl -v -X POST adresse_arbiter:7780/v1/architecture/send