Créer des démons sur un serveur Shinken

Cet outil est utilisé pour créer ( via la création de fichiers de type "ini" ) ou définir / déclarer ( via la création de fichiers de type "cfg" ) des démons Shinken additionnels.

  • Plus d'informations sur le démarrage de Shinken en utilisant les fichiers "ini" et "cfg" sont réunies sur cette page de documentation : Démons.
  • Cet outil ne permet pas la création à distance, mais agit uniquement sur le serveur en local.
    Il s'agira donc de se loguer sur chaque serveur avant d'utiliser les commandes.

Utilisation

L'option -h de la commande permet d'afficher l'aide de la commande :

$ shinken-daemons-create -h
Usage
=====
  shinken-daemons-create

This tool is used to create daemons on servers (local ini file) or declare the daemon in your arbiter configuration (cfg file)

Options
=======
--version               show program's version number and exit
--help, -h              show this help message and exit
--type=DAEMON_TYPE, -t DAEMON_TYPE
                        Daemon type to create or declare. Allowed daemon types are: broker, poller, reactionner, receiver, scheduler
--port=PORT, -p PORT    Daemon port
--ini                   Creates the daemon locally on the server (will create the .ini configuration file)
--cfg                   Declares the daemon in your arbiter configuration (will create the .cfg configuration file). Must be launched only from your arbiter server.
--address=ADDRESS       For cfg, set the address for this daemon (Mandatory). For ini, address the daemon will listen to on that local server (will listen to all interfaces by default)
--name=NAME             Name of this daemon

Examples:
# Step1 [on the scheduler server]: Create the scheduler ini file so the server can start it:
  shinken-daemons-create --ini --type=scheduler --port=8768 --name=scheduler-customer-A

# Step2 [on the arbiter server]: Create the scheduler in the arbiter configuration:
  shinken-daemons-create --cfg --type=scheduler --port=8768 --name=scheduler-customer-A --address=192.168.0.100


Options :

NomDescription
--version

Affiche le numéro de version de Shinken.

-h, --help

Affiche l'aide.

--type=DAEMON_TYPE, -t DAEMON_TYPE

Type de démon à créer ou déclarer. Peut être: Broker, Poller, Reactionner, Receiver, Scheduler

--port=PORT, -p PORT

Port du démon

--ini

Créé le démon localement sur le serveur ( cera le fichier de configuration .ini )

--cfg

Déclare le démon dans la configuration de votre Arbiter ( créera le fichier de configuration .cfg ).
Dois être lancé seulement depuis un serveur Arbiter.

--address=ADDRESS

Pour les cfg, définir l'adresse de ce démon ( Obligatoire ).
Pour les ini, adresse sur lequel le démon va écouter sur ce serveur local ( écoutera sur toutes les interfaces par défaut ).

--name=NAME

Nom du démon


INI ( Fichier de boot du démon )

Par exemple, créons un nouveau démon Poller sur un serveur.

Il faut donc se loguer sur la machine qui hébergera le démon.

$ shinken-daemons-create --ini --type=poller --port=8771 --name=poller-2
 poller [id:1]   : CREATED  in the file /etc/shinken/daemons/pollerd-1.ini

Ici le nouveau Poller s'est vu assigné l'ID numéro 1 et le fichier /etc/shinken/daemons/pollerd-1.ini a été créé.

Une fois créé, démarrez votre démon Poller via la commande :

service shinken-poller --id 1 start

Il sera prêt et attendra que l'Arbiter le contacte pour lui donner sa configuration.

CFG ( Fichier de configuration du démon )

Une fois le fichier ini créé et le démon démarré sur le serveur ( dont l'ip est 192.168.0.15 dans cet exemple ), il faut maintenant créer le fichier de configuration du démon.

Loguez-vous sur le serveur hébergeant l'Arbiter :

$ shinken-daemons-create --cfg --type=poller --port=8771 --name=poller-2 --address=192.168.0.15
 poller [name:poller-2] [address:192.168.0.15] [port:8771]: CREATED  in the file /etc/shinken/pollers/poller-2.cfg

Le fichier /etc/shinken/pollers/poller-2.cfg a été créé.

Il vous faudra à présent redémarrer votre serveur Arbiter afin que ce dernier prenne en compte cette nouvelle déclaration de démon:

service shinken-arbiter restart


Supprimer des démons sur un serveur Shinken

Cet outil est utilisé pour Supprimer ( via la suppression de fichiers de type "ini" ) des démons Shinken.

  • Cet outil ne permet pas la suppression à distance, mais agit uniquement sur le serveur en local.
  • Il s'agira donc de se placer correctement sur le serveur sur lequel on souhaite supprimer le démon avant d'utiliser les commandes.

Utilisation

L'option -h de la commande permet d'afficher l'aide de la commande :

$ shinken-daemons-remove -h
Usage
=====
  shinken-daemons-remove

This tool is used to remove daemons on the local server

Options
=======
--version               show program's version number and exit
--help, -h              show this help message and exit
--ini                   [Mandatory] Remove daemon locally on the server.
--type=DAEMON_TYPE, -t DAEMON_TYPE
                        Daemon type to remove. Must be in: broker, poller, reactionner, receiver, scheduler
--id=DAEMON_ID          ID of the daemon to remove. They can be listed with the command: shinken-daemons-list.

Example: We want to delete a scheduler daemon.
# Step1 [on the scheduler server]: First, list all daemons on the server:
  shinken-daemons-list
# Step2 [on the scheduler server]: Then, remove the scheduler with the id 2:
  shinken-daemons-remove --ini --type=scheduler --id=2
# Step3 [on the arbiter server]: Finally, manually delete the daemon definition:
  either by deleting the configuration file or by removing the daemon definition inside the configuration file ( in /etc/shinken/schedulers/ )


Options :

NomDescription
--version

Montre le numéro de version et sortie.

-h, --help

Montre l'aide et sortie.

--ini

(Obligatoire) Supprime le démon localement sur le serveur

--type=DAEMON_TYPE, -t DAEMON_TYPE

Type de démon à supprimer. Peut être: Broker, Poller, Reactionner, Receiver, Scheduler

--id=DAEMON_ID

ID du démon à supprimer. Ils peuvent être affichés avec la commande: shinken-daemons-list.


INI

Par exemple, supprimons le démon Poller ayant pour id le numéro 2.

Il faut donc se loguer sur la machine qui héberge le démon.

$ shinken-daemons-remove --ini --type=poller --id=2
 poller [id:2] is  REMOVED from local server


CFG

Maintenant il faut supprimer la définition du démon pour le retirer complètement de Shinken. La manière de faire peut différer en fonction du nombre de définition par fichier de configuration :

Premier cas : Une seule configuration par fichier de configuration

Si la définition de votre démon est seule dans un fichier, vous pouvez supprimer directement le fichier :

rm /etc/shinken/pollers/poller-to-delete.cfg


Second cas : Plusieur définitions par fichier de configuration

Il faut aller voir dans le fichier de configuration pour aller supprimer juste la définition qui nous intéresse :

# /etc/shinken/pollers/all-pollers.cfg

define poller {
	poller_name				poller-master
	[ ... ]
}

define poller {
	poller_name 			poller-france
	[ ... ]
}

# Delete this one
define poller {
	poller_name 			poller-to-delete
	[ ... ]
}