Le ws-arbiter est le module qui permet de recevoir des statuts et des contextes d'éléments en mode Passif ( voir la page Mode actif et mode passif ) via une API HTTP(s).
La configuration se définit dans le fichier de configuration du module ( présent par défaut dans /etc/shinken/modules/ws-arbiter.cfg ).
Ce module permet notamment de recevoir et traiter les statuts envoyés par les traps SNMP
Ce type de module ( ws_arbiter ) peut être utilisé sur un Arbiter ou un Receiver. Nous préconisons d'utiliser le module receiver-module-webservice ( voir la page Module receiver-module-webservice ) car lorsque que votre Arbiter redémarrer pour prendre en compte une nouvelle configuration l'API du module sera de fait non disponible.
|
Le module ws-arbiter est un module qui peut être activé seulement sur le démon Arbiter.
ws-arbiter".Exemple : par défaut, nous livrons un module dont le nom est "ws-arbiter" :
define arbiter {
[...]
modules Module 1, Module 2, Module 3, ws-arbiter
[...]
} |
Pour prendre en compte le changement de configuration, redémarrez l'Arbiter :
service shinken-arbiter restart |
La configuration du module se trouve par défaut dans le fichier /etc/shinken/modules/ws-arbiter.cfg
#===============================================================================
# ws-arbiter (webservice)
#===============================================================================
# Daemons that can load this module:
# - receiver
# - arbiter
# This module is a webservice that can be used to send checks to Shinken Enterprise
# as POST HTTP(s)
#===============================================================================
define module {
#======== Module identity =========
# Module name. Must be unique
module_name ws-arbiter
# Module type (to load module code). Do not edit.
module_type ws_arbiter
#======== Listening address =========
# host: IP address to listen to.
# note: 0.0.0.0 = all interfaces.
host 0.0.0.0
# port to listen
port 7760
# HTTPs part, enable if you want to set the listening for HTTPS instead of default HTTP.
# disabled by default. Set your own certificates.
use_ssl 0
ssl_cert /etc/shinken/certs/server.cert
ssl_key /etc/shinken/certs/server.key
#======== HTTP authentification =========
# You can use HTTP basic authentification method for this module.
# If username is set to anonymous and password is commented, then
# no authentification will be required.
username anonymous
#password secret
} |
Il est possible de définir plusieurs instances de module de type ws-arbiter dans votre architecture Shinken.
| Nom | Type | Unité | Défaut | Commentaire | |
|---|---|---|---|---|---|
| Texte | --- | ws-arbiter | Nous vous conseillons de choisir un nom en fonction de l'utilisation du module pour que votre configuration soit simple à maintenir. Doit être unique. | |
| Texte | --- | ws_arbiter | Ne peut être modifié. |
#======== Listening address ========= # host: IPv4 address to listen to. # note: 0.0.0.0 = all interfaces. host 0.0.0.0 # port to listen port 7760 |
Il est possible de configurer l'interface réseau sur laquelle est mise à disposition l'API. Si par exemple l'API ne doit être accessible seulement via un réseau local, il est possible de n'écouter les requêtes que sur cette interface réseau.
Les paramètres suivants permettent de configurer l'accès à l'API :
| Nom | Type | Unité | Défaut | Commentaire | |
|---|---|---|---|---|---|
| Texte | Adresse IPv4 | 0.0.0.0 | L'interface réseau sur laquelle le module "ws-arbiter" va écouter. | |
| Texte | Port réseau | 7760 | Port réseau sur lequel le module "ws-arbiter" va écouter. |
# HTTPs part, enable if you want to set the listening for HTTPS instead of default HTTP. # disabled by default. Set your own certificates. use_ssl 0 ssl_cert /etc/shinken/certs/server.cert ssl_key /etc/shinken/certs/server.key |
L'API du module est accessible via HTTP. Il est recommandé d'utiliser le protocole HTTPS pour chiffrer la communication avec le module.
Si pour des raisons de sécurité, cette API doit être accessible via HTTPS, il est possible de configurer les certificats avec les paramètres suivants :
| Nom | Type | Unité | Défaut | Commentaire | |
|---|---|---|---|---|---|
| Booléen | --- | 0 | Permet d'activer ou non l'utilisation du protocole HTTPS.
| |
| Texte | Chemin | /etc/shinken/certs/server.cert | Chemin vers le certificat SSL utilisé par le protocole HTTPS. | |
| Texte | Chemin | /etc/shinken/certs/server.key | Chemin vers la clé SSL utilisée par le protocole HTTPS. |
#======== HTTP authentication ========= # You can use HTTP basic authentication method for this module. # If username is set to anonymous and password is commented, then # no authentication will be required. username anonymous #password secret |
Afin d'être authentifié auprès du module, il est possible de configurer les identifiants à utiliser dans les requêtes, dans la configuration du module grâce aux paramètres suivants :
| Nom | Type | Unité | Défaut | Commentaire | |
|---|---|---|---|---|---|
| Texte | --- | anonymous | Nom d'utilisateur. | |
| Texte | --- | secret | Mot de passe. |
Lors d'une requête curl, les identifiants se renseignent grâce à l'option
|