5 votes

Notification du problème de manque d'espace disque dans le serveur

J'ai un serveur ubuntu, et je fais face à un problème fréquent d'espace, c'est-à-dire que les journaux consomment beaucoup d'espace disque. Je veux donc qu'une vérification soit appliquée, de sorte que chaque fois qu'il y a moins de 5 Go d'espace disque libre, je reçoive une notification par e-mail, afin que je puisse supprimer les journaux. Comment puis-je configurer cela ? Ai-je besoin d'une autre application ?

10voto

Shishir Points 201

Vous pouvez utiliser Nagios pour le suivi et l'envoi d'e-mails. Mais, avant de configurer la surveillance, je commencerais par configurer logrotate pour faire tourner périodiquement les fichiers journaux.

Le système approprié dépend de l'endroit où vous hébergez votre serveur. Par exemple, s'il est hébergé sur AWS, vous pouvez configurer le système intégré d'Amazon, le CloudWatch pour surveiller sa santé plutôt que de déployer une nouvelle solution de surveillance.

3 votes

+1 pour avoir non seulement répondu à la question nominale, mais aussi utilisé logrotate pour éviter de devoir intervenir manuellement en premier lieu.

2 votes

Ce que Monty Harder a dit.

4voto

Calimo Points 400

Sur mon serveur Ubuntu, j'ai le script suivant en /etc/cron.daily qui m'avertit par e-mail chaque fois que /dev/sdc (mon /srv ) a moins de 200 Mo d'espace libre.

ALERT=200
UNIT=M
PARTITION=/dev/sdc

df -B$UNIT | grep "^$PARTITION" |
while read partition size used free perc mnt ;
do
        free_space=$(echo $free | tr -d $UNIT )
        if [ $free_space -le $ALERT ]; then
                echo "Partition $partition ($mnt) running out of space ($free) on $(hostname) as on $(date)" |
                mail -s "Alert: $mnt almost out of disk space on $(hostname) - $free" root
        fi
done

Il a été initialement repris et adapté de cet article de blog sur nixCraft . Enregistrez le tout dans un fichier dans /etc/cron.hourly en tant que root, modifiez les 3 premières lignes en fonction de votre serveur et de vos besoins, et rendez le fichier exécutable. Si vous voulez qu'il soit exécuté plus souvent, enregistrez-le en tant que script et créez une tâche cron régulière.

Notez que vous aurez besoin de quelque chose fournissant le mail généralement à partir des paquets qmail-run o courier-mta .

3voto

shodanshok Points 42743

Vous pouvez adopter deux stratégies différentes :

  • utiliser un script personnalisé qui s'exécutera toutes les minutes/heures/jours pour détecter et vous avertir du manque d'espace.
  • installer et déployer une véritable solution de surveillance comme Zabbix ou autres.

Pour un seul serveur, la solution n.1 est sûrement la plus rapide. Cependant, pour plusieurs serveurs et/ou pour vérifier plusieurs points de données (ex : utilisation de la ram, charge du cpu, etc) la seconde solution est préférable, de loin.

0voto

Hari Points 1

Quelqu'un peut-il m'aider à résoudre le problème suivant ? Problème : J'ai besoin de configurer une tâche automatique pour effectuer le nettoyage de l'espace disque sur une machine Linux mais la tâche que nous créons doit être en dehors de la machine Linux, donc une fois que nous déclenchons cette tâche, l'espace dans cette machine Linux doit être nettoyé. Avez-vous des suggestions ?

0 votes

Si vous avez une nouvelle question, veuillez la poser en cliquant sur l'icône suivante Posez une question bouton. Incluez un lien vers cette question si cela peut aider à fournir un contexte. - De la revue

0 votes

C'est une autre question, pas une réponse.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X