Monitoring serveur
Monitoring de votre VPS Linux RedHeberg
Le monitoring de votre VPS est essentiel pour maintenir des performances optimales et anticiper les problèmes. Ce guide vous présente les outils de surveillance intégrés à Linux ainsi que des solutions web modernes disponibles chez RedHeberg.
Commandes de monitoring de base
Surveillance des ressources système
Surveillez l'utilisation du CPU et de la RAM en temps réel :
# Monitoring interactif des processus
htop
# Affichage mémoire détaillé
free -h
# Utilisation des disques
df -h
# Informations système complètes
top
Analyse des performances disque
Surveillez les performances I/O de vos SSD NVMe Samsung 990 EVO Plus :
# Installer les outils de monitoring I/O
sudo apt update && sudo apt install -y sysstat iotop
# Statistiques I/O en temps réel
iostat -x 1
# Top des processus utilisant le disque
sudo iotop
# Historique des performances disque
sar -d 1 5
Monitoring réseau
Surveillez les connexions sur votre VPS RedHeberg :
# Connexions actives
netstat -tuln
# Statistiques réseau détaillées
ss -tuln
# Surveillance du trafic réseau
sudo apt install -y vnstat
vnstat -l
# Monitoring réseau en temps réel
sudo netstat -i 1
Installation de Netdata
Netdata offre un monitoring web temps réel puissant et léger :
# Installation rapide de Netdata
bash <(curl -Ss https://my-netdata.io/kickstart.sh) --stable-channel
# Démarrage et activation automatique
sudo systemctl enable netdata
sudo systemctl start netdata
# Vérification du statut
sudo systemctl status netdata
Configuration de Netdata
Personnalisez la configuration :
# Éditer la configuration principale
sudo nano /etc/netdata/netdata.conf
# Configuration recommandée pour VPS RedHeberg
[global]
hostname = mon-vps-redheberg
history = 3600
update every = 1
memory mode = ram
[web]
web files owner = root
web files group = netdata
bind to = 0.0.0.0:19999
Redémarrez Netdata après modification :
sudo systemctl restart netdata
Netdata sera accessible via http://YOUR_SERVER_IP:19999. Pensez à configurer votre pare-feu si nécessaire.
Configuration d'Uptime Kuma
Uptime Kuma est disponible en pré-installation 1-clic chez RedHeberg. Pour une installation manuelle :
# Installation de Node.js et npm
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt install -y nodejs
# Installation d'Uptime Kuma
sudo npm install pm2 -g
git clone https://github.com/louislam/uptime-kuma.git
cd uptime-kuma
npm run setup
# Démarrage avec PM2
pm2 start server/server.js --name uptime-kuma
pm2 save
pm2 startup
Configuration des notifications
Configurez les alertes Discord et email dans l'interface web d'Uptime Kuma (http://YOUR_SERVER_IP:3001) :
-
Notifications Discord :
- Webhook URL de votre serveur Discord
- Mentionnez le channel
#monitoring
-
Notifications Email :
- Serveur SMTP de votre choix
- Configuration TLS recommandée
Monitoring des services systemd
Surveillez l'état de vos services système :
# État global des services
systemctl status
# Services en échec
systemctl --failed
# Monitoring d'un service spécifique
systemctl status nginx
# Logs en temps réel
journalctl -f -u nginx
# Surveillance automatique avec notification
sudo nano /usr/local/bin/check-services.sh
Script de surveillance automatique :
#!/bin/bash
# Script de monitoring des services critiques
SERVICES=("nginx" "mysql" "redis" "ssh")
EMAIL="admin@votre-domaine.fr"
for service in "${SERVICES[@]}"; do
if ! systemctl is-active --quiet $service; then
echo "ALERTE: Le service $service est inactif sur $(hostname)" | \
mail -s "Service $service DOWN" $EMAIL
# Tentative de redémarrage
systemctl restart $service
fi
done
Automatisation avec cron :
# Rendre le script exécutable
sudo chmod +x /usr/local/bin/check-services.sh
# Ajouter à la crontab (vérification toutes les 5 minutes)
echo "*/5 * * * * /usr/local/bin/check-services.sh" | sudo crontab -
Alertes et tableaux de bord
Configuration des seuils d'alerte
Définissez des seuils critiques pour votre VPS :
| Métrique | Seuil Warning | Seuil Critical |
|---|---|---|
| CPU | 70% | 85% |
| RAM | 80% | 90% |
| Disque | 85% | 95% |
| Load Average | 2.0 | 4.0 |
Script de monitoring personnalisé
#!/bin/bash
# Script de monitoring avancé RedHeberg
WEBHOOK_DISCORD="votre_webhook_discord"
HOSTNAME=$(hostname)
# Fonction d'envoi Discord
send_discord() {
curl -H "Content-Type: application/json" \
-X POST \
-d "{\"content\":\"🚨 **$HOSTNAME** : $1\"}" \
$WEBHOOK_DISCORD
}
# Vérification CPU
CPU_USAGE=$(top -bn1 | grep "Cpu(s)" | awk '{print $2}' | sed 's/%us,//')
if (( $(echo "$CPU_USAGE > 80" | bc -l) )); then
send_discord "CPU élevé: ${CPU_USAGE}%"
fi
# Vérification RAM
RAM_USAGE=$(free | grep Mem | awk '{printf "%.0f", $3/$2 * 100.0}')
if [ $RAM_USAGE -gt 85 ]; then
send_discord "RAM élevée: ${RAM_USAGE}%"
fi
Avec l'infrastructure RedHeberg (SSD NVMe, 10 Gbps, processeurs Ryzen/Xeon dernière génération), un monitoring proactif vous permettra de tirer le meilleur parti de vos ressources haute performance.
N'exposez jamais vos interfaces de monitoring (Netdata, Uptime Kuma) sans authentification sur Internet. Utilisez un VPN ou une authentification HTTP basique.