Buenos días a tod@s
El otro día leyendo blog vi que se hablaba del control del los snapshot, una ayuda muy potente a la hora de aplicar cambios y probar qué tal funciona (aunque yo prefiero los snapshot a nivel de cabina), pero muy peligrosa siempre que se alargan en el tiempo.
Una forma de controlar que no tengamos instantáneas en nuestra infraestructuras y en el caso de tenerlas, que estén controladas es mediante Nagios.
1º Lo primero que vamos a necesitar es generar la clave publica de nuestro servidor Nagios y meterla dentro de nuestro ESXI (esto ya lo hemos hecho en el post anterior, pero si alguien quiere, lo volvemos a poner paso a paso)
2º Ahora nos tocará escribir los script para que nuestro Nagios pueda buscar los snapshot existentes y nos avise en caso de que existan:
En este caso nos va a avisar siempre que existan y sean mayores que 2G
-#!/bin/sh
##########################################################3
# DECLARACION DE VARIABLES
######################################################3###
OK='0'
WARNING='1'
CRITICAL='2'
##################################################################################
#CONEXION A ESXI Y LOCALIZACION DE SNAPSHOT MAYORES A 2 GIGAS
################################################################################3#
VMS=$( ssh root@192.168.x.x /usr/bin/find /vmfs/volumes/ -name '*.vmsn' -size +2000000k | cut -d '/' -f5 )
exit 0
####################################################################3
#CUENTA MAQUINAS VISTRUALES CON SNAPSHOT SUPERIORES A 2 GIGAS
####################################################################
NUM=$( echo "$VMS" | wc -l )
if [ "$NUM" -eq 0 ] ; then
echo "sin snapshot"
exit $OK
elif [ "$NUM" -gt 2 ] ; then
echo "$VMS tienen snapshot"
exit $CRITICAL
else
echo "$VMS tienen snapshot"
exit $WARNING
fi
2ª script
#!/bin/sh
##########################################################33
#ARCHIVOS DELTA
########################################################
##########################################################3
# DECLARACION DE VARIABLES
######################################################3###
OK='0'
WARNING='1'
CRITICAL='2'
##################################################################################
#CONEXION A ESXI Y LOCALIZACION DE SNAPSHOT MAYORES A 2 GIGAS
################################################################################3#
VMS=$( ssh root@192.168.x.x /usr/bin/find /vmfs/volumes/ -name '*delta.vmdk' -size +2000000k | cut -d '/' -f5 )
####################################################################3
#CUENTA MAQUINAS VISTRUALES CON SNAPSHOT SUPERIORES A 2 GIGAS
####################################################################
NUM=$( echo "$VMS" |grep -v '^$' | wc -l )
if [ "$NUM" -eq 0 ] ; then
echo "sin snapshot"
exit $OK
elif [ "$NUM" -gt 2 ] ; then
echo "$VMS tienen snapshot"
exit $CRITICAL
else
echo "$VMS tienen snapshot"
exit $WARNING
fi
3º Una vez que tenemos nuestros script escritos en bash, tendremos que incluir en el fichero commands la siguiente instrucción.
define command {
command_name snapshot
command_line $USER1$/snapshot.sh $HOSTADDRESS$
}
define command {
command_name snapshot-delta
command_line $USER1$/snapshot-delta.sh $HOSTADDRESS$
}
4º Ya sólo nos quedaría incluir en nuestro fichero la definición del servicio
define service{
use generic-service
host_name ESXI
service_description snapshot
check_command snapshot
}
define service{
use generic-service
host_name ESXI
service_description snapshot-delta
check_command snapshot-delta
}
Con estos paso ya tendríamos controlado el uso de nuestros snapshot en nuestra infraestructura y podrían avisarnos mediante correo electrónico, mensajes o whatsapp de su existencia.
Espero que os haya resultado útil.
Un saludo amig@s
No hay comentarios:
Publicar un comentario