tutoriel installation et configuration de Munin

Article publiée le 14 Novembre 2013

Munin est un outil de monitoring, simple léger et très facile à mettre en place.

En plus de ça Munin est un outil de monitoring extrêmement précis concernant les graphes.

Un client Munin est installé sur chaque machine à surveiller. Les informations sont directement envoyées sur le serveur qui restitue les infos via une interface WEB.

Capture d’écran de l’interface de Munin

 

Ce tutoriel explique comment mettre en place MUNIN sous Debian/Ubuntu

Prérequis: Un serveur apache (apt-get install apache2)

 

 1) Installation

Partie serveur

apt-get install munin

Editez le fichier /etc/munin/munin.conf

Nous allons ensuite ajouter un nouveau client. Pour cela trouvez les lignes suivantes:

[localhost.localdomain]    # Correspond au nom de la machine qui sera afficher sur l’interface Web

address 127.0.0.1                # Son adresse IP
use_node_name yes          # Munin utilisera le nom du noeud plutôt que l’adresse IP

 

Il suffit de copier les lignes ci-dessus et d’adapter en fonction de la machine à monitorer:

[machinevince.localdomain] 

address 192.168.2.50
use_node_name yes

 

Il ne reste plus qu’à créer un lien symbolique du répertoire contenant l’interface Web de Munin vers le répertoire par défaut d’apache2 afin que l’interface de Munin soit disponible:

ln -s /var/cache/munin/www /var/www/munin

 

Partie cliente

apt-get install munin-node

Editez le fichier /etc/munin/munin-node.conf

Chercher la ligne allow ^127\.0\.0\.1$ et remplacez la par l’ip de votre machine ^192\.168\.0\.38$

Redémarrer munin: /etc/munin-node restart

Enfin connectez vous à l’interface web via l’URL: http://<ip ou DNS>/munin

Enjoy 🙂

 

 

 

 

 




Créer une interface virtuelle sous Debian et CentOS

Article publiée le 22 Octobre 2013

Ce petit article vous explique la marche à suivre pour créer des interfaces virtuelles sous Linux.

L’intérêt de cette procédure réside dans le fait que vous pouvez ajouter plusieurs IP sur une même interface.

 

Sous RedHat/Centos:

– Rendez vous dans le répertoire /etc/sysconfig/network-scripts

cd /etc/sysconfig/network-scripts

– Créez un nouveau fichier de configuration d’interface

touch eth0:1

Le « 0 » avant le « : » correspond au numéro de l’interface physique sur laquelle votre interface virtuel va passer
– Editez votre fichier de configuration et rajoutez les lignes suivantes

GATEWAY=<adresse de votre passerelle>
TYPE=Ethernet
DEVICE=<nom de votre interface réseau>
BOOTPROTO=none
NETMASK=<votre masque de sous réseau>
IPADDR=<votre adresse IP>
USERCTL=no
IPV6INIT=no
ONPARENT=yes

 

Exemple:

– Activer votre interface réseau:

ifup  <nom de votre interface>

 

Si vous obtenez ce message « RTNETLINK answers: File exists »:  Redémarrez le service network

service network restart

(C’est ce que j’ai fais quand j’ai obtenus cette erreur)

 

Sous Debian/Ubuntu Server

– Editez le fichier /etc/network/interface

– Rajoutez votre nouvelle interface virtuelle:

 

auto eth0:1
iface eth0:1 inet static
address <adresse ip>
netmask <masque de sous réseau>
gateway <votre passerelle>

Le « 0 » avant le « : » correspond au numéro de l’interface physique sur laquelle votre interface virtuel va passer

– Montez votre interface

ifup <nom de votre interface>

 




Réduire la taille du Swap

Article publiée le 21 Octobre 2013

 

Il peut arriver qu’un jour vous vous soyez enflammer sur la taille du swap lors de la mise en place d’une de vos machine 😉

Ci dessous une petite astuce pour réduire la taille de celle ci (toutes ces opérations doivent-être effectuées en tant que root):

 

– Tous d’abord checkez la taille de votre swap:

free -m

– Ensuite afficher la liste de vos lv pour avoir le nom de votre lv swap:

lvdisplay

– Désactiver votre swap (en vous assurant que votre machine ne soit pas en train de swaper):

swapoff -a

– Réduisez la taille du lv de votre swap:

lvreduce -L <la nouvelle taille de votre swap> <le chemin de votre LV>

Exemple:

– Récréez votre swap

mkswap <chemin du LV de votre Swap>

 

– Et enfin réactivez votre Swap

swapon -a

– Checkez la nouvelle taille de votre swap

free -m

 

 

 




Afficher la liste des processus qui utilisent le SWAP

Article publiée le 9 Octobre 2013

Il y a quelque jour j’ai eu un gros problème de SWAP sur une de mes machines Linux. Mon collègue a trouvé un script très utile qui permet d’afficher tous les processus utilisant le SWAP:

 

 

#!/bin/bash
# Get current swap usage for all running processes
# Usage: ./getswap.sh | sort -n -k 5
# Erik Ljungstrom 27/05/2011
SUM=0
OVERALL=0
for DIR in `find /proc/ -maxdepth 1 -type d | egrep "^/proc/[0-9]"` ; do
PID=`echo $DIR | cut -d / -f 3`
PROGNAME=`ps -p $PID -o comm --no-headers`
PROGPATH=`cat /proc/$PID/cmdline`
for SWAP in `grep Swap $DIR/smaps 2&gt;/dev/null| awk '{ print $2 }'`
do
let SUM=$SUM+$SWAP
done
echo "PID=$PID - Swap used: $SUM - ($PROGNAME - $PROGPATH)"
let OVERALL=$OVERALL+$SUM
SUM=0

done
echo "Overall swap used: $OVERALL"

 

 

Si vous voulez connaitre les processus qui SWAP le plus:

./getswap.sh | sort -n -k 5

 

Exemple de résultat du scripts.:

Enjoy 🙂

Ce script ne fonctionne que pour les distributions RedHat/Centos/Fedora. Une petite modif sera certainement nécessaire si vous êtes utilisateurs d’une autre distrib 😉

 




Activer ou désactiver SELinux

Article publiée le 4 Octobre 2013

 

SELinux est un module permettant une gestion très fine de la sécurité de votre système d’exploitation.

Il est installé et activé par défaut sur les distributions de la famille de RedHat.

Ce module peut très vite vous causer des problèmes.

Je conseille à tous de le désactiver dés que vous installer un nouveau serveur RedHat/Centos/etc…

Pour cela éditez le fichier /etc/selinux/config

vi /etc/selinux/config

Puis modifier le champs « SELINUX=enforcing » par « SELINUX=disabled »




iftop monitorer votre trafic réseau en temps réel

Article publiée le 26 Septembre 2013

 

Tout ceux qui sont habitués à lire mes articles  savent que je suis très friand des petits outils de monitoring. Et aujourd’hui encore je me permet d’en rajouter un à la liste: iftop.

iftop vous permet d’avoir en temps réel votre trafic réseau (bande passante, connexion etc…)

En cas de problème réseau sur l’une de vos machine, cette outil pourra se révéler extrêmement utile.

Pour l’installer:

apt-get install iftop (sous debian/Ubuntu) yum install iftop (sous RedHat)

Pour la distribution Centos le paquet n’est pas présent dans les dépots, je vous invite donc à faire un wget sur un des packages présents sur ce site http://pkgs.repoforge.org/iftop/

Exemple: wget http://pkgs.repoforge.org/iftop/<nom du package>

Capture d’écran de iftop:

Les parties floutées correspondent aux ip des machines.

Si votre machine possède plusieurs interfaces réseau vous pouvez faire un iftop -i <nom de l’interface> afin de voir le trafic uniquement sur cette interface.

Enjoy

 




Sauvegarder ses données avec Rsync

Article publiée le 13 Septembre 2013

 

En parcourant pas mal de forums, j’ai pu remarquer que pas mal de jeunes admins ne connaissaient pas Rync.

Rsync est un petit outil de sauvegarde extrêmement puissant. Grâce à cette outil j’ai pu sauvegarder des centaines de  giga-octet de données sans problèmes.

Rsync se charge en plus de garder tous les droits et attributs de vos fichiers et gère en natif SSH pour faire une sauvegarde d’une machine vers une autre.

 

Installation:

apt-get install rsync (Pour debian) ou yum install rsync (pour Centos/RedHat)

 

Comment ça marche?

– En local

rsync -azv <fichier ou répertoire source> <répertoire de destination>

le -a conserve tout les attribut  et droits des fichiers

le -z compression au moment de la copie (fait gagner du temps et limite le trafic réseau si vous utilisez rsync via scp)

le -v active le mode verbeux pour voir en temps réel ce qui se passe!

 

– Vers une autre machine

rsync -azv <fichier ou répertoire source> login@<ip ou dns du serveur distant>:<répertoire de destination>

 

 Rsync est très intelligent, si le fichier existe déjà dans le répertoire de destination, alors il ne sera pas sauvegardé de nouveau! Très utile si votre commande est interrompu en cours de sauvegarde.

Si vous administrez une petite structure, je vous conseille de faire vos sauvegardes avec cette outil via un petit script shell. 😉

 

 

 




monitoring | Surveiller votre système avec SAR

Article publiée le 2 Septembre 2013

 

La surveillance de l’état de santé des machines est une tâche récurrente pour un admin système. Un bon admin système doit être capable de fournir rapidement toutes les informations sur son système (cause d’un ralentissement, dysfonctionnement etc.)

Ci dessous la présentation et le tuto d’installation d’un autre outil de monitoring (car on en a jamais assez!!) SAR.

Sar permet d’avoir l’historique concernant l’activité de votre système contrairement aux autres outils qui vous fournissent uniquement des informations en temps réels.

 

1) Installation

 

Pour installer Sar sous debian:

apt-get install sysstat

Pour installer Sar sous CentOs/Red-Hat/Fedora:

yum install sysstat.

 

2) Configuration

 

Sous debian activez le collecteur d’activité, pour cela éditez le fichier /etc/default/sysstat et remplacez  ENABLED= »false » par ENABLED= »true »

Sous CentOs/Red-Hat/Fedora il vous suffit de démarrer le service: service sysstat start

Par défaut systat effectue une collecte toutes les 10 minutes. Je vous conseille, afin d’avoir une vision de votre système plus fine de réduire l’intervalle à 2 minutes:

– Editez la crontab de systat:

vi /etc/cron.d/systat

Sous debian modifiez cette ligne:

5-55/10 * * * * root command -v debian-sa1 > /dev/null && debian-sa1 1 1

par

*/2 * * * * root command -v debian-sa1 > /dev/null && debian-sa1 1 1

Sous Centos/RedHat/Fedora modifiez cette ligne:

*/10 * * * * root /usr/lib64/sa/sa1 1 1

par

*/2 * * * * root /usr/lib64/sa/sa 1 1 1

– Enregistrez le fichier crontab

– Redemarrez le service systat

/etc/init.d/sysstat restart

 

3) Utilisation de la commande SAR

La commande SAR vous permettra d’afficher le contenu de votre systat dans la sortie standard (votre écran).

Exemple d’affichage de la commande sar -u (charge CPU):

 

Etat de la mémoire : sar – r

 

Etat du Swap: sar -W

 

Etat des IO disque : sar -b

 

IO par disque : sar -d

 

 

Enfin vous avez également la possibilité d’afficher le résultat de l’intégralité des commandes SAR via la commande:

sar -A

 

Enjoy! 🙂




tutoriel | Connecter un client Linux à un iscsi target

Publiée le 20 Aout 2013

Petit tuto qui vous expliquera comment faire pour connecter un volume ISCSI disponible depuis votre baie ou de votre serveur iscsi sur votre client Linux.

Ce tutoriel sera adapté pour les distribs RedHat/Centos/Fedora et Ubuntu/Debian

 

– Dans un premier temps installez open-iscsi

apt-get install open-iscsi (pour debian/Ubuntu) ou yum iscsi-initiator-utils (pour RedHat/Centos/Fedora)

– Lancer la commande suivante pour détecter les target iscsi.

iscsiadm –mode discovery –type sendtargets –portal <adresse de votre serveur iscsi>

Si tous se passe bien, la commande vous renverra l’ip de votre serveur iscsi avec l’IQN.

Exemple:

– Il ne reste plus qu’à connecter votre volume ISCSI, pour cela lancez la commande suivante:

iscsiadm –mode node –targetname <votre IQN>  \ –portal <ip de votre serveur iscsi> –login

Exemple:

Il ne vous reste plus qu’à checker que votre volume soit reconnu par l’OS avec un petit fdisk -l

– Pour déconnecter votre volume proprement, utilisez la commande suivante:

iscsiadm –mode node –targetname <votre IQN>  \ –portal <ip de votre serveur iscsi> –logout

 

 

 


 

 




Surveiller votre système avec Nmon

Article publié le 13 Aout 2013

Mis à jour le 14 Aout 2013

Un bon admin système est un admin qui sait ce qui  se passe sur son système à tout moment. Qui peut savoir en 10 secondes montre à la main les causes d’une éventuelle perte de performances ou autre petites « joyeuseries » 😉

La plupart des outils utilisés sont top, htop, iotop, iostat et j’en passe…

Pourtant un petit outil très similaire à Glance (pour HP-UX) existe:  Nmon

Disponible dans les dépôts officiels de debian un petit « apt-get install nmon » suffira ou fedora via un yum install nmon.

Pour les utilisateurs de Red-Hat/Centos, je vous invite à télécharger les sources directement sur le site du développeur:

http://nmon.sourceforge.net/pmwiki.php

Cet outil vous fournira un état complet de l’état de votre système (CPU, mémoire, disque, IO, network IO, etc, etc etc…)

Pas besoin de vous expliquer comment cet outil fonctionne car celui ci est extrêmement intuitif comme vous pourrez le constater sur la capture d’écran ci dessous:

 

Enjoy 🙂




Connaître la date d’installation d’un système Linux

Publiée le 31 Juillet 2013

Une info qui peut vous être utile est la date d’installation d’un système Linux (surtout si vous ne gérez pas les machines).

Cette commande liste tous les fichiers de configuration du répertoires /etc est récupère la date de la plus ancienne.

 

ls -lct /etc | tail -1 | awk ‘{print $6, $7, $8}’

 




[TOMCAT] SEVERE: Failed to initialize java.lang.OutOfMemoryError: PermGen space

Publiée le 13 Juin 2013

Java est très très gourmand en ressource. L’administration des serveurs hébergeant des applications JAVA est un travail ardue.

Un problème que j’ai rencontré sur plusieurs serveurs tomcat durant mes différentes mission est le fameux :

Failed to initialize  java.lang.OutOfMemoryError: PermGen space

Etant encore novice dans la gestion des environnements JAVA je suis resté assez perplexe devant un tel message d’erreur.

Je check mon fichier startup.sh pour voir si mon xmx et xms sont bien paramétrés:

export JAVA_OPTS= »-Djava.awt.headless=true -Dfile.encoding=UTF-8
-server -Xms2048m -Xmx2048m »

La solution est  d’augmenter le Maxpermsize (qui correspond à la mémoire allouée aux process java non géré par le garbage collector dit ramasse miette).

Pour résoudre le problème il suffit de paramétrer votre JAVA_OPTS de la façon suivante:

export JAVA_OPTS= »-Djava.awt.headless=true -Dfile.encoding=UTF-8
-server -Xms2048m -Xmx2048m
-XX:NewSize=256m -XX:MaxNewSize=256m -XX:PermSize=256m
-XX:MaxPermSize=256m -XX:+DisableExplicitGC »

 

 

 

 




Problème d’installation de CentOS avec virtualbox

Article publié le 18 Mai 2013

 

J’ai pu constater une anomalie lors de l’installation de CentOS sur une machine virtuel via VirtualBox.

Pendant l’installation vous pourrez constater que le chargement de l’installation ce fige avec ce message:

NetLable : Initializing
NetLabel: domain hash size=128
NetLabel: protocols = UNLABELED CIPSOV4
NetLabel: unlabled traffic allowed by default
PCI-GART: No AMD northbridge found.
PCI: Ignore bogus resource 6[0:0] of 0000:00:02.0
NET: Registered protocol family2

Pour résoudre le problème et poursuivre sereinement votre installation CentOS il suffit de modifier un petit paramètre dans la configuration de votre machine Virtuel:

Allez dans les paramètre de configuration de votre machine puis cliquez sur « système » à gauche de la fenêtre puis sur l’onglet « Carte mère »:

Il suffit de cocher « Activer les IO-APIC ». (Si vous vous demandez ce que c’est cliquez ici ;-))

Ensuite démarrez votre VM et recommencez votre installation!

Enjoy 🙂