jueves, 15 de marzo de 2018

Monitorear si una maquina virtual tiene snapshots en VMware ESXi



Este script corre con el usuario nagios, el ESXServer lo cambian por el hostname de su ESX ó por la ip del mismo, Storage-01 es el nombre del datastore del vmware en mis servidores.

Va a llegar una alarma de nagios en caso que exista alguna virtual con al menos un snapshot en cualquier máquina virtual.

Script: /usr/local/apps/nagios/libexec/check_VM_snapshots


 # Autor Hernan Tirado
 # blog: redes-seguridad.blogspot.com
 # Creado el: 15-03-2018
 #
 # Uso: /usr/local/apps/nagios/libexec/check_VM_snapshots

CANT_SNAP=`ssh root@ESXserver-x ls -latR /vmfs/volumes/Storage-01/|grep -i snap |awk '{ print $6" "$7" "$9}'|sort|uniq|wc -l`

if [ $CANT_SNAP = 0 ];then
 echo "OK - Virtuales SIN Snapshots en Storage-01."
 exit 0
else
 echo "CRITICAL - Virtuales con Snapshots en Storage-01: $CANT_SNAP"
 ssh root@ESXserver -x ls -latR /vmfs/volumes/Storage-01/|grep -i snap |awk '{ print $6" "$7" "$9}'|sort|uniq
 exit 2
fi

fi
Tener en cuenta que tiene que tener habilitado el SSH en el server ESXi y también copiar la key de nagios en el autorized_key del server ESX.