Archives de la catégorie DevOps

[PoC] installation de Nagios pour superviser une application HTTP avec docker

Ressources utilisé :

Superviser un hôte Linux via NRPE

https://blog.nicolargo.com/2007/10/surveiller-vos-serveurs-linux-avec-nagios-et-nrpe.html

[Tuto] Nagios: Introduction au fichiers de configurations de Nagios


http://blog.nicolargo.com/wp-content/uploads/2011/03/ebook-nicolargo-nagios-v1.0.pdf

http://djibril.developpez.com/tutoriels/perl/ecrire-facilement-plugin-nagios-perl/

1. Pré-requis

1.1 Script bash qui démare un container nagios superviseur :

1.2 un autre container qui contiens votre application http

1.3 Commande docker pour connaitre les ip :
docker network inspect bridge | jq

2. Mise en place de l’environnement

2.1 Pour chaque container docker supervisé, il faut installé un serveur NRPE :
apt-get install nagios-nrpe-server

2.1.1 Configurer pour autorisé a se connecter à notre serveur nagios de supervision
nano /etc/nagios/nrpe.cfg

2.1.2 Si iptable est installé, autorisé les requete NRPE

iptables -A INPUT -p tcp --dport 5666 -j ACCEPT

2.1.3 Automatisé le démarrage de NRPE :

update-rc.d nagios-nrpe-server defaults

2.1.3 redémaré le service
service nagios-nrpe-server restart

2.1.4 Pour vérifier que cela fonctionne, connecter vous sur le container <nagios>

3. Exécuter une commande de supervision

3.1 sur le container supervisé, créer une nouvelle commande en éditant le fichier nrpe.cfg

vim /etc/nagios/nrpe.cfg

3.2 En dessous des commandes déjà existantes, ajouté :

command[check_home]=/usr/lib/nagios/plugins/check_disk -w 20 -c 10 -p /home

Ici, le statue du service que nous allons créer plus tard sera en WARNING (-w), s’il reste moins de 20% (20) d’espace disque disponible et le statue sera CRITICAL (-c) s’il reste moins de 10% (10) d’espace libre.

3.3 Redémarer pour que la nouvelle commande soit prise en compte :
service nagios-nrpe-server restart

3.4 Executer la commande depuis le container nagios

 

4. Superviser plusieurs containers

4.1 Dans le container nagios :

Dans le dossier objects nous allons créer un dossier linux_servers, c’est dans ce dossier que nous allons configurer toutes nos machines linux à superviser.
Puis nous allons éditer le fichier nagios.cfg se trouvant dans $NAGIOS_HOME/etc et nous allons donc rajouter la ligne:

 

Commenter la ligne qui surveille le serveur locale :

 

Maintenant dans le dossier linux_servers, nous allons créer trois fichiers:
linux_hosts.cfg, linux_hostgroups.cfg et linux_services.cfg

 

linux_hosts.cfg

 

linux_hostgroups.cfg

linux_services.cfg

Pas de commentaire

Docker add file from windows host into container

On my windows machin, I can’t share volume with docker container because of my firewall.

 

So, what I’ve done is creating my container :

 

 

Once it’s started, I get the container ID :

 

Then, just copy the file by using : docker cp <file> <containerID>:<containerPATH>

 

Pas de commentaire

Ansible – Controle Machine sur Windows avec cygwin

La Controle Machine ansible ne fonctionne que sur linux et n’est pas (et ne seras pas) prévu pour fonctionné sous windows. Pourtant ça ne l’empêche de pouvoir administrer des instances windows grâce à winRM (Windows Remote Desktop).

L’astuce pour faire de windows une controle machine consiste à utilisé cygwin :

Tout d’abord il faut installé  cygwin , Lors de sont installation, faite bien attention de choisir la vue « full » et installé les deux paquets suivant :

  • lynx
  • wget

Une fois l’installation terminé, ouvrez votre terminal cygwin, et tapé les commandes suivantes :

  1. Installation du paquet manager :

lynx -source rawgit.com/transcode-open/apt-cyg/master/apt-cyg > apt-cyg install apt-cyg /bin

2. Installation des dépendances nécessaires (L’installation de gcc & libffi-devel sont primordial pour compilé les modules python)

3. Installation de pip

4. Installation de ansible via pip

5. Et enfin, le module python pour communiquer avec windows :

 

 

Avec ça, vous avez une controle machine sur windows, complètement fonctionelle.

Pas de commentaire