systemadmin.es > Script > Aniversarios del uptime de los sistemas

Aniversarios del uptime de los sistemas

Aunque no nos guste reconocerlo, a muchos nos molesta reiniciar un servidor ya que perdemos su uptime, por ejemplo hoy es el aniversario de un equipo que hace 666 días:

# uptime
 08:31:13 up 666 days, 0 min,  2 users,  load average: 5.27, 16.50, 8.88

A continuación veremos un script para recordar los aniversarios de los equipos integrable con Nagios

El script es muy simple, calculando el uptime mediante el fichero /proc/uptime y nos avisa para los múltiples de 100 y para el caso especial de los 666 días:

#!/bin/bash

MAILTO="jprats@systemadmin.es"

DIES=$(echo "$(cat /proc/uptime | cut -f 1 -d' ' | cut -f1 -d.)/60/60/24" | bc -l | cut -f 1 -d.)

echo $DIES | grep "[666|.*00$]" >/dev/null

if [ $? -eq 0 ];
then
	if [ -z "$MAILTO" ];
        then
                echo "Feliz aniversario $HOSTNAME - uptime: $DIES"
		exit 2
        else
                /usr/bin/uptime | mail -s "Feliz aniversario $HOSTNAME" $MAILTO
        fi
else
	if [ -z "$MAILTO" ];
	then
		uptime
	fi
fi

exit 0

Este script funciona mediante dos modos diferentes mediante la presencia o no de la variable MAILTO:

  • Si definimos la variable MAILTO a una dirección podemos usar este script en el cron una vez al día para que nos mande a la dirección de correo para los aniversarios del uptime
  • Si no definimos la variable MAILTO podemos integrarlo en el Nagios, el cual nos dará un CRITICAL para los aniversarios y un OK para el resto de días.

5 comments to “Aniversarios del uptime de los sistemas”

  1. Échale un vistazo a la carga de la máquina… madre mía! load average: 5.27, 16.50, 8.88

  2. Simplemente estaba yo enredando con algo por la mañana:

    # uptime
     14:38:55 up 666 days,  6:07,  2 users,  load average: 0.03, 0.05, 0.07
    
  3. o lo que hacias es mu jodio o la maquina va justita … menudos numeros 😛

  4. Eso no es nada, a ver si pongo el load de un servidor de envío de newsletters. En realidad el load no tiene una relación directa con lo petado que esta el sistema. Es un post que me gustaría hacer porque no se puede interpretar a la ligera, por ejemplo el servidor que comento puede tener un load MUY grande pero ir bien.

    A ver si tengo tiempo, que aún tengo pendiente la segunda parte de interpretar el estado de un entorno LAMP

  5. Precisamente hoy estaba mirando el tema del load y su monitorización con el plugin de Nagios check_load y no me queda claro del todo cómo interpretar sus valores.
    En el fondo lo que hace es mirar el contenido del /proc/loadvg. Aquí vemos la carga en el ultimo minuto, hace 5 y hace 15 min y que yo sepa, los valores dependen de si existen procesos esperando por tiempo en la CPU.
    ¿Porqué dices que puede que tengamos un load muy alto y que el servidor vaya bien?

Deja un comentario:

XHTML - Tags permitidos:<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>