Monitoring Serveur Dédié : Différence entre versions

De Free 4 Funs
Aller à : navigation, rechercher
(Installation Monit via apt-get)
(Introduction Monit via Bitucket)
Ligne 497 : Ligne 497 :
 
J'y reviendrais prochainement pour détailler la configuration mais pour le moment, cela attendra. :)
 
J'y reviendrais prochainement pour détailler la configuration mais pour le moment, cela attendra. :)
  
==<font color="blue">Introduction Monit via Bitucket</font>==
+
==<font color="blue">Introduction Monit via Bitbucket</font>==
 +
 
 +
Avant de commencer, nous commençons par mettre à jour notre Debian en [[Comment_se_connecter_en_root|ROOT]].
 +
 
 +
{{command|apt-get update && apt-get upgrade -y}}
 +
ou {{command|aptitude update && aptitude upgrade -y}}
 +
 
 +
On installe Monit :
 +
{{command|apt-get install monit -y}}
 +
ou {{command|aptitude install monit -y}}
 +
 
 +
==<font color="blue">Requis</font>==
  
 
=<font color="blue">Systat</font>=
 
=<font color="blue">Systat</font>=

Version du 6 février 2015 à 04:50

Introduction

Vous trouverez dans cette section quelques logiciels qui vous permettrons de surveiller votre serveur dédié / vps avec une interface graphique qui pourra être visualisé depuis votre navigateur ou soit depuis votre terminal.


Cacti

Introduction

Nagios

Introduction

Linux-Dash

Introduction

Linux-Dash

Software version Linux-Dash
Operating System Arch, Debian 6, 7, Ubuntu 11.04+, Linux Mint 16+, CentOS 5, 6
Website Linux-Dash Website
Last Update 5.11
Others n/a

Introduction

Linux-Dash permet de suivre en temps réel l'état des ressources de son serveur.

Il est léger, plutôt performant et assez complet. Bien entendu il à ses limitations donc si vous souhaitez gérer un parc ou que vous avez besoin de choses complexes, il vous faudra voir du côté de Nagios ou autres...

Warning WARNING
Ce tutoriel a été réalisé pour Nginx
Free 4 Funs ne pourra être tenue responsable d’une instabilité du système résultant d’une mauvaise installation du système d’exploitation.


Requis

Rien ne vous oblige à passer par git, vous pouvez directement télécharger l'archive sur cette page puis descendez à l'étape de création du vhost.

Il vous faudra juste retirer git de la ligne ci-dessous avant d'installer.

 apt-get install php5-json php5-curl git

ou

 aptitude install php5-json php5-curl git

avec sudo :

 sudo apt-get install php5-json php5-curl git apache2-utils

ou

 sudo aptitude install php5-json php5-curl git apache2-utils


Installation

Avant de commencer, nous mettons à jour la machine :

 apt-get update && apt-get upgrade

ou

 aptitude update && aptitude upgrade

avec sudo :

 sudo apt-get update && sudo apt-get upgrade

ou

 sudo aptitude update && sudo aptitude upgrade

nous allons créer un vhost (pensez à modifier checksys.no-ip.org dans les différentes étapes !) :

 nano /etc/nginx/sites-available/checksys.no-ip.org

ou avec sudo :

sudo nano /etc/nginx/sites-available/checksys.no-ip.org

Copier/coller ceci :

server {
server_name checksys.no-ip.org;
listen 80;
access_log /var/log/nginx/access_linux-dash.log;
error_log /var/log/nginx/error_linux-dash.log;

location /linux-dash {
root /usr/share/nginx/html;
index index.html index.php;

}

location ~* \.(?:xml|ogg|mp3|mp4|ogv|svg|svgz|eot|otf|woff|ttf|css|js|jpg|jpeg|gif|png|ico)$ {
try_files $uri =404;
expires max;
access_log off;
add_header Pragma public;
add_header Cache-Control "public, must-revalidate, proxy-revalidate";
}

location ~ \.php(/|$) {
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_split_path_info ^(.+?\.php)(/.*)$;
#fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_pass 127.0.0.1:9000;
if (!-f $document_root$fastcgi_script_name) {
return 404;
}
try_files $uri $uri/ /index.php?$args;
include fastcgi_params;
}

}


Warning WARNING
Si vous utiliser php-fpm via socket, de commenter la ligne fastcgi_pass unix:/var/run/php5-fpm.sock; et commenter celle-ci : fastcgi_pass 127.0.0.1:9000; en mettant un #.

On active notre vhost :

 ln -s /etc/nginx/sites-available/checksys.no-ip.org /etc/nginx/sites-enabled/

On se place dans le répertoire du serveur web :

 cd /usr/share/nginx/html

ou avec sudo :

 sudo bash -c 'cd /usr/share/nginx/html'

On télécharge Linux-Dash (ceci nous permettra de garder à jour la version ultérieurement) :

 git clone https://github.com/afaqurk/linux-dash.git

ou avec sudo :

 sudo git clone https://github.com/afaqurk/linux-dash.git

Cloning into 'linux-dash'...
remote: Counting objects: 1994, done.
remote: Compressing objects: 100% (39/39), done.
remote: Total 1994 (delta 17), reused 0 (delta 0)
Receiving objects: 100% (1994/1994), 1.19 MiB | 1.09 MiB/s, done.
Resolving deltas: 100% (1139/1139), done.

On redémarre Nginx :

 service nginx restart

Maintenant, dans votre navigateur, allez sur la page http://votre_domaine.fr/linux-dash et admirer :)


Sécurisation

Nous utilisons apache2-utils pour pouvoi générer le htpasswd, si vous avez une autre méthode, vous pouvez ignorer cette étape.

 apt-get install apache2-utils

ou

 aptitude install apache2-utils

avec sudo :

 sudo apt-get install apache2-utils

ou

 sudo aptitude install apache2-utils


Création du fichier .htpasswd avec une encryption en SHA :

 htpasswd -cs /usr/share/nginx/html/linux-dash/.htpasswd VOTRE_LOGIN

ou avec sudo :

 sudo htpasswd -cs /usr/share/nginx/html/linux-dash/.htpasswd VOTRE_LOGIN

Vous devrez saisir votre mot de passe (et le confirmer) :

New password:
Re-type new password:
Adding password for user VOTRE_LOGIN

Éditons notre vhost :

 nano /etc/nginx/sites-enabled/checksys.no-ip.org

ou avec sudo :

 sudo nano /etc/nginx/sites-enabled/checksys.no-ip.org

Chercher location /linux-dash {, sur une nouvelle ligne, ajouter (Ce code devra être inséré avant l'accolade de fermeture du bloc location linux-dash):


       auth_basic "Linux Dash";
       auth_basic_user_file "/usr/share/nginx/html/linux-dash/.htpasswd";


Le vhost complet devra ressembler à :

server {
server_name checksys.no-ip.org;
listen 80;
access_log /var/log/nginx/access_linux-dash.log;
error_log /var/log/nginx/error_linux-dash.log;

location /linux-dash {
root /usr/share/nginx/html;
index index.html index.php;
auth_basic "Linux Dash";
auth_basic_user_file "/usr/share/nginx/html/linux-dash/.htpasswd";
}

location ~* \.(?:xml|ogg|mp3|mp4|ogv|svg|svgz|eot|otf|woff|ttf|css|js|jpg|jpeg|gif|png|ico)$ {
try_files $uri =404;
expires max;
access_log off;
add_header Pragma public;
add_header Cache-Control "public, must-revalidate, proxy-revalidate";
}

location ~ \.php(/|$) {
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_split_path_info ^(.+?\.php)(/.*)$;
#fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_pass 127.0.0.1:9000;
if (!-f $document_root$fastcgi_script_name) {
return 404;
}
try_files $uri $uri/ /index.php?$args;
include fastcgi_params;
}

}

On redémarre Nginx :

 service nginx restart

Maintenant, dans votre navigateur, rendez-vous sur la page :

Nginx htpasswd.jpg

et si vous n'indiquez pas le bon identifiant :

Nginx 401 htpasswd.jpg


F.A.Q

Q Comment mettre à jour Linux-Dash ?

R cd /chemin_Linux-Dash && git pull

ou avec sudo :

 cd /chemin_Linux-Dash && sudo git pull



Glances

Introduction

Glances vous permet de suivre en temps réel l'état des ressources de son serveur.

Warning WARNING
Free 4 Funs ne pourra être tenue responsable d’une instabilité du système résultant d’une mauvaise installation du système d’exploitation.


Requis

 apt-get install python-dev python-pip

ou

 aptitude install python-dev python-pip

avec sudo :

 sudo apt-get install python-dev python-pip

ou

 sudo aptitude install python-dev python-pip


Installation Python

Avant de commencer, nous mettons à jour la machine :

 apt-get update && apt-get upgrade

ou

 aptitude update && aptitude upgrade

avec sudo :

 sudo apt-get update && sudo apt-get upgrade

ou

 sudo aptitude update && sudo aptitude upgrade


On télécharge Glances (ceci nous permettra de garder à jour la version ultérieurement) :

 pip install Glances

ou avec sudo :

 sudo pip install Glances

une fois installé, il vous suffira d'exécuter glances en SSH pour voir les différentes informations.

Une capture décran d'un VPS gratuit :

F4f glances.jpg

Il n'y a rien de compliqué, cependant voici la légende des couleurs :

   VERT : la statistique est OK
   BLEU : la statistique est CAREFUL (prudence donc à surveiller...)

VIOLET: la statistique est WARNING (en alerte)

   ROUGE : la statistique est CRITICAL (critique)

Si vous souhaitez vous amuser à modifier la configuration, vous trouverez le fichier de configuration dans /etc/glances/glances.conf.

A ce jour où nous écrivons ce tutoriel, glances est en version 2.2.1.

L'aide de glances :

  glances -h
 usage: glances [-h] [-V] [-d] [-C CONF_FILE] [--disable-network]
              [--disable-diskio] [--disable-fs] [--disable-sensors]
              [--disable-left-sidebar] [--disable-process] [--disable-log]
              [--disable-bold] [--enable-process-extended] [--enable-history]
              [--path-history PATH_HISTORY] [--output-csv OUTPUT_CSV]
              [-c CLIENT] [-s] [--browser] [--disable-autodiscover] [-p PORT]
              [-B BIND_ADDRESS] [--password-badidea PASSWORD_ARG]
              [--password] [--snmp-community SNMP_COMMUNITY]
              [--snmp-port SNMP_PORT] [--snmp-version SNMP_VERSION]
              [--snmp-user SNMP_USER] [--snmp-auth SNMP_AUTH] [--snmp-force]
              [-t TIME] [-w] [-f PROCESS_FILTER] [--process-short-name]
              [--hide-kernel-threads] [--tree] [-b] [-1] [--fs-free-space]
              [--theme-white]
 optional arguments:
 -h, --help            show this help message and exit
 -V, --version         show program's version number and exit
 -d, --debug           Enable debug mode
 -C CONF_FILE, --config CONF_FILE
                       path to the configuration file
 --disable-network     disable network module
 --disable-diskio      disable disk I/O module
 --disable-fs          disable filesystem module
 --disable-sensors     disable sensors module
 --disable-left-sidebar
                       disable network, disk io, FS and sensors modules
 --disable-process     disable process module
 --disable-log         disable log module
 --disable-bold        disable bold mode in the terminal
 --enable-process-extended
                       enable extended stats on top process
 --enable-history      enable the history mode
 --path-history PATH_HISTORY
                       Set the export path for graph history
 --output-csv OUTPUT_CSV
                       export stats to a CSV file
 -c CLIENT, --client CLIENT
                       connect to a Glances server by IPv4/IPv6 address or
                       hostname
 -s, --server          run Glances in server mode
 --browser             start the client browser (list of servers)
 --disable-autodiscover
                       disable autodiscover feature
 -p PORT, --port PORT  define the client/server TCP port [default: 61209]
 -B BIND_ADDRESS, --bind BIND_ADDRESS
                       bind server to the given IPv4/IPv6 address or hostname
 --password-badidea PASSWORD_ARG
                       define password from the command line
 --password            define a client/server password from the prompt or
                       file
 --snmp-community SNMP_COMMUNITY
                       SNMP community
 --snmp-port SNMP_PORT
                       SNMP port
 --snmp-version SNMP_VERSION
                       SNMP version (1, 2c or 3)
 --snmp-user SNMP_USER
                       SNMP username (only for SNMPv3)
 --snmp-auth SNMP_AUTH
                       SNMP authentication key (only for SNMPv3)
 --snmp-force          force SNMP mode
 -t TIME, --time TIME  set refresh time in seconds [default: 3 sec]
 -w, --webserver       run Glances in web server mode
 -f PROCESS_FILTER, --process-filter PROCESS_FILTER
                       set the process filter pattern (regular expression)
 --process-short-name  force short name for processes name
 --hide-kernel-threads
                       hide kernel threads in process list
 --tree                display processes as a tree
 -b, --byte            display network rate in byte per second
 -1, --percpu          start Glances in per CPU mode
 --fs-free-space       display FS free space instead of used
 --theme-white         optimize display for white background

Vous trouverez un tutoriel complet de l'auteur sur cette page.


Mettre à jour Glances avec PIP

 pip install --upgrade Glances
 ou avec sudo :
 sudo pip install --upgrade Glances
 

Installation Github

Avant de commencer, nous mettons à jour la machine :

 apt-get update && apt-get upgrade

ou

 aptitude update && aptitude upgrade

avec sudo :

 sudo apt-get update && sudo apt-get upgrade

ou

 sudo aptitude update && sudo aptitude upgrade


On télécharge Glances (ceci nous permettra de garder à jour la version ultérieurement) :

 git clone https://github.com/nicolargo/glances.git

ou avec sudo :

 sudo git clone https://github.com/nicolargo/glances.git

une fois installé, il vous suffira d'exécuter glances en SSH pour voir les différentes informations.


Mettre à jour Glances avec Github

R cd /chemin_glances && git pull

ou avec sudo :

cd /chemin_glances && sudo git pull


Monit

Monit

Software version Monit
Operating System FreeBSD, Linux (x86 & x64), MacOS, OpenBSD et Solaris
Website Monit Website
Last Update 5.11
Others n/a

Introduction

Monit est un logiciel qui surveillera les instances (processus, fichiers, charge cpu etc...) de votre machine. Il est efficace et puissant.
Dans ce tutoriel, nous vous proposerons deux installations différentes, la première consistera à installer
Monit via apt-get et la seconde via Bitucket (ce qui vous permettra de garder Monit à jour facilement).


Warning WARNING
Pensez à sauvegarder vos fichiers avant d'effectuer une modification.

Note.png Note

Pour sauvegarder un fichier avec nano Icon11.gif combiner les touches CTRL + O puis Entrée.


Installation Monit via apt-get

Sachez quand même que la version installé sera la 5.4 et que Monit est en version 5.11 donc si vous êtes comme moi (toujours avoir la dernière version), descendez au tutoriel via Bitbucket. ;)

Avant de commencer, nous commençons par mettre à jour notre Debian en ROOT.

Command
apt-get update && apt-get upgrade -y

ou

Command
aptitude update && aptitude upgrade -y

On installe Monit :

Command
apt-get install monit -y

ou

Command
aptitude install monit -y

Côté configuration, je préfère vous laissez regarder car chaque SysAdmin aura sa propre configuration et vu qu'elle n'a rien de complexe.

J'y reviendrais prochainement pour détailler la configuration mais pour le moment, cela attendra. :)

Introduction Monit via Bitbucket

Avant de commencer, nous commençons par mettre à jour notre Debian en ROOT.

Command
apt-get update && apt-get upgrade -y

ou

Command
aptitude update && aptitude upgrade -y

On installe Monit :

Command
apt-get install monit -y

ou

Command
aptitude install monit -y

Requis

Systat

Introduction

Icinga

Introduction