Outils pour utilisateurs

Outils du site


si-monitor_client:scriptsauvegardebash

Script de monitoring des backups des VM

Ce script permet de vérifier que les sauvegardes des VM ont bien été effectués.

<note warning>Attention, ce script ne fonctionne que si vous utilisez le système de backup de proxmox appelé vzdump, pour tout autre méthode de backup, vous devrez recréer votre script.</note>

Ce script va lire les logs créés lors de la sauvegarde effectuée par vzdump et va déterminer par rapport au log l'état et la durée du backup, mais aussi donner certains détails comme la vitesse de transfert, la taille du backup…

Le script doit être déclaré comme ceci dans SI Monitor.

Le script :

#! /bin/bash
IDVM=10102
#Id de la VM, pour connaitre id de la VM, il faut aller sur la machine sur laquelle est la VM et faire soit qm list
 (kvm) ou vzlist (openvz)
#Si le fichier de log n'est pas présent, c'est que les backups ne sont pas configurés pour cet hote ou fait via une
 autre solution que ezvzdump
TYPEVM=qemu
#Type de VM = openvz ou qemu (si kvm)
FILE=$(ls -rt /data/proxmox-bkp/dump/vzdump-"$TYPEVM"-"$IDVM"-* | tail -1)
if [ -f $FILE ]
then
        row=$(grep Finished $FILE)
        if [ -z "$row" ]
        then
			status=0
        else
			row=${row##*INFO: }
			details=$row
			details+=';'
			status=1
			date=$(date -r $FILE)
			row2=$(grep "vm is online" $FILE)
			if [ -z "$row2" ]
			then
					echo $row2
					time=0
			else
					row2=${row2##*INFO: }
					details+=$row2
					details+=";"
					time=${row2%second*}
					time=${time##*after }
			fi
			row3=$(grep "archive file size" $FILE)
			if [ -z "$row3" ]
			then
					echo $row3
			else
					row3=${row3##*INFO: }
					details+=$row3
					details+=";"
			fi
			row4=$(grep "transferred" $FILE)
			if [ -z "$row4" ]
			then
					$row4
			else
					row4=${row4##*INFO: }
					details+=$row4
					details+=";"
			fi
        fi
fi

ID='52'
PASSWORD='7QF6UUc15c0wgUr'
JSON_ARR='{"id":'$ID', "password":"'$PASSWORD'", "params":{"status":"'$status'", "date":"'$date'", "time":"'$time'", "details":"'$details'"}}'
#echo $JSON_ARR
curl -X POST -H "Content-Type: application/json" --data "$JSON_ARR" http://sisuite-frontend-dev.irincom.com/api/API.php
si-monitor_client/scriptsauvegardebash.txt · Dernière modification: 2020/09/04 14:47 (modification externe)