#!/bin/bash #------------------------------------------------------------------------------------------------------------------ # Script : expl_check_all_nrpe.sh # Auteur : Doug Le Tough # Date : 23-07-2017 # Version : 1.0.0 # Objet : Fait tous les contrôles NRPE standars sur l'ensemble des VM listées # dans le fichier de configuration et notifie les incidents sur freenode.net#tetalab # #------------------------------------------------------------------------------------------------------------------ # Mise a jour : # # 1.0.0 22/07/2017 - Doug Le Tough - Cre : Mise en production # #------------------------------------------------------------------------------------------------------------------ # Dependances : /usr/local/bin/tetalab/ircbot.py # #------------------------------------------------------------------------------------------------------------------ # Liste des options et arguments: # # Ce script n'accepte *aucune* option # # @OPT: f:bidon:::::: # #------------------------------------------------------------------------------------------------------------------ # Liste des paramètres de configuration: # # IRC_BOT=/usr/local/bin/tetalab/ircbot.py # NRPE_CHECK_PATH=/etc/nagios/nrpe/ # NRPE_CHECK_BIN=/usr/libexec/nagios/check_nrpe # INFRA_SERVER=sousetsuken.local.tetalab.org # TETALAB_VM[0]=sousetsuken.local.tetalab.org # TETALAB_VM[1]=jimmy.local.tetalab.org # TETALAB_VM[2]=billy.local.tetalab.org # TETALAB_VM[3]=marian.local.tetalab.org # TETALAB_VM[4]=sonny.local.tetalab.org # TETALAB_VM[5]=web.local.tetalab.org # #------------------------------------------------------------------------------------------------------------------ # Liste des erreurs: # # 2 | erreur | stop | ${ERROR} # 3 | erreur | continu | ${ERROR} # #------------------------------------------------------------------------------------------------------------------ ## ## Syntaxe : ## -------- ## ## prompt> expl_check_all_nrpe.sh ## ## ex: ## expl_check_all_nrpe.sh ## ## Prérequis: ## ---------- ## - Le script doit être executé par l'utilisateur asr sur sousetsuken ## ## Fonctionnement: ## --------------- ## Depuis sousetsuken, rcupère depuis le répertoire local NRPE_CHECK_PATH la liste des checks à effectuer ## et pour ceux qui sont executables les execute sur les VM définies dans le fichier de configuration ## puis relève les incidents et les notifie sur le chan freenode.net#tetalab en utilisant le script python ## /usr/local/bin/tetalab/ircbot.py ## #------------------------------------------------------------------------------------------------------------------ # Initialisation de l'environement #------------------------------------------------------------------------------------------------------------------ if [ "${USER}" != "asr" ]; then ERROR="Seul l'utilisateur asr peut utiliser ce script" echo -e "\033[91m${ERROR}\033[0m" exit 1 fi source /etc/profile.d/tetalab.sh if [ ! -f ${NC_EXPL_CFG}/init.conf ]; then echo "Le fichier d'initialisation du socle \${NC_EXPL_CFG}/init.conf n'éxiste pas !" echo "Arrêt du script par sécurité" exit 250 fi source ${NC_EXPL_CFG}/init.conf #------------------------------------------------------------------------------------------------------------------ # Fonctions #------------------------------------------------------------------------------------------------------------------ #------------------------------------------------------------------------------------------------------------------ # Traitement #------------------------------------------------------------------------------------------------------------------ MESSAGE="" check_config check_all send_message fct_erreur 0