En este caso, os voy a presentar un informe que uso a diario para ver lo snapshot que tengo en mi plataforma de vmware. No contento con esto me lo manda todos los días por correo a primera hora.Todos los que habéis trabajado en entornos virtuales, sabéis lo fantásticos y útiles que son los snapshot y la cantidad de problemas que nos quitan que nos quitan con pruebas de instalaciones de aplicación o actualizaciones. Pero hay un mundo oculto, y unas cuantas malas pasadas, que nos pueden hacer pasar un gran exceso de uso de snapshot o no tener limpio de estas maravillas el datastore.
Podemos sufrir desde una inconsistencia de la maquina ya que se corrompen los discos duros y puede tener una difícil solución, hasta un gran problema de espacio en los datastores, una vez vi más de 800 gigas en snapshot.
Mi recomendación es que los usemos, pero limpiemos todo lo que podamos, ya que no son un sistema de backup como tal, si no, como digo yo, una herramienta para poder realizar pruebas sobre una maquina concreta.
Entiendo que en un entorno muy grande con varios administradores es difícil de saber que vm tiene snapshot, así que decidí montar el script que os comento.
El script es este:
#script de informe de snapshot $time=get-date # recogemos la hora para en informe Connect-VIServer -server NUESTROVCENTER #se conecta nuestro vcenter $snap = Get-Folder vm | Get-VM | Get-Snapshot | Select VM, name, SizeMb, Description, Created | Format-List -Property VM, Name, SizeMB, Description, Created | Out-String #recogemos en una variable todos los snapshot de la plataforma # en este condicional recogemos si existe snapshot o no if( $snap | where-object {$_.vm -ne " "}){ $body = " Se ha detectado Estos snapshot en la plataforma de VMware" $body += "$snap" $body += " es preferible borrar todos los snapshot `n" $body += " Nota: los _BACKUP son de backup `n" # me pongo una nota aclaratoria porque los backup generan snapshot, me puede indicar si hay algun fallo en este backup Send-MailMessage -From "tudesdedondeenvia" -To "tumail" ` -SmtpServer "servidor_smtp" -Body $body ` -Subject "informe Snapshot $time" } else { $body = " No se ha detectado Estos snapshot en la plataforma de VMware" Send-MailMessage -From " tudesdedondeenvia " -To "tumail" ` -SmtpServer "correo.puertos.es" -Body $body ` -Subject "informe Snapshot $time" } disconnect-viserver -confirm:$false #se desconecta de nuestro vcenter
Espero que os sirva