vendredi 17 janvier 2020

[PowerCLI] Rapport Veeam


Bonjour à tous,

Aujourd’hui je souhaite partager avec vous une manière d’envoyer automatiquement par mail des rapports très synthétiques de vos sauvegardes Veeam. Ce mail contiendra uniquement la liste des VMs non sauvegardées depuis X jours.

Bien sûr Veeam propose déjà d’envoyer des mails avec le résultat de chaque job. Mais vous recevrez un mail par job. Donc si vous avez une grosse infra, avec plusieurs dizaines de jobs Veeam, vous risquez de littéralement vous faire spammer et ne plus prêter attention à ces mails. De plus, rien ne garantit que certaines VMs ne soient contenues dans aucun job, et donc ne soient jamais sauvegardées. Pour ce 2e point, il existe "Veeam One", mais encore faut-il acheter le produit.

La méthode que je propose s’appuie sur les attributs personnalisés des VMs. Comme vous le savez peut-être, Veeam est capable de mettre à jour ces attributs en cas de sauvegarde réussie d’une VM (et uniquement en cas de sauvegarde réussie). Donc si une VM n'a pas été sauvegardée depuis plus d'une semaine, son attribut personnalisé datera de plus d'une semaine. Pour configurer cela, il suffit de cocher la case « Set successful backup details to this VM attribute », et d’indiquer le nom de l’attribut personnalisé comme ceci :


Lorsque vos VMs seront correctement sauvegardées, leur attribut sera mis à jour avec la date de la dernière sauvegarde réussie :
Dans le champ « Valeur » vous pourrez trouver le nom du Job ainsi que la date et l’heure de la dernière bonne sauvegarde. L’idée est donc de créer un script afin de  :
--> Lister toutes les VMs du vCenter
--> Récupérer l’attribut personnalisé de chacune d’entre elles
--> Parser le champ « valeur » afin de récupérer la date de dernière bonne sauvegarde
--> Créer un tableau avec toutes les VMs dont la dernière sauvegarde date de plus de X jours (3 jours dans mon cas), ou dont le champ est vide (ce qui signifie qu’elles n’ont jamais été sauvegardées).
--> Envoyer ce tableau par mail

Dans mon cas, j’exécute ce script tous les matins du lundi au vendredi. Vu que la sauvegarde Full se lance le vendredi soir et tourne tout le weekend, il peut se passer 3 jours entre le lancement du script du lundi matin et la dernière sauvegarde du vendredi soir. C’est pour cette raison que, dans mon cas, j’ai configuré le script pour qu’il ne liste que les VMs n’ayant pas été sauvegardées depuis plus de 3 jours. A vous d'adapter selon votre besoin.

Vous pourrez trouver mon script ici:  https://github.com/charivel/VeeamReport

Enjoy  😊

0 commentaires :

Publier un commentaire