Saludos amigos, he hablado de Veeam Backup for Azure múltiples veces aquí, creo que es la mejor Solución de Protección de Datos del Mercado para esas cargas de trabajo específicas en Azure, aquí hay una lista de artículos sobre ella:
- Veeam: Veeam anuncia mejoras para las nuevas versiones de Veeam Backup for AWS v4/Azure v3/GCP v2
- Veeam: Ya está disponible el nuevo y mejorado Veeam Backup for Azure v2 – Integración con Veeam v11, storage tier inteligente, app-aware, y más
- Veeam: Securizar nuestra instancia de Veeam Backup for Microsoft Azure con un certificado SSL Let’s Encrypt
- Veeam: Cómo conectar nuestro Veeam Backup and Replication a Veeam Backup for Azure
- Veeam: Cómo Desplegar Veeam Backup for Microsoft Azure – paso a paso
- Veeam: Veeam anuncia mejoras para las nuevas versiones de Veeam Backup for AWS v4/Azure v3/GCP v2
Una gran solución, que se puede complementar con Veeam Availability Suite para una mejor monitorización, e integración con el entorno on-prem. Si llevas tiempo utilizando Veeam Backup and Replication, y has desplegado Veeam Backup for Azure, puede que te falte el Informe Diario HTML que puede ayudar a entender rápidamente cómo ha ido todo.
Este Informe HTML es bastante importante, ya que, con las ofertas de Cloud, tendemos a proteger esas cargas de trabajo con un RPO mejorado, como hacer Snapshots más a menudo, incluso unos cuantos Backups al día, etc. Tranquilos, después de unas cuantas horas hoy, he cogido el realmente impresionante Veeam Backup for Azure RESTful API, y he construido el Informe para vosotros. SI sigues todos los pasos de este post, tendrás algo parecido a esto en tu correo electrónico todos los días:
Topología con todos los componentes lógicos
Esta entrada es bastante nueva, ya que nunca he hecho ningún informe HTML desde Bash, fue bastante bueno, y gran curva de aprendizaje, toneladas de ecos en el código, un diagrama se ve así:
Como podemos ver, el script de la shell descargará las métricas de Veeam Backup for Azure usando la API RESTful, que luego pondrá juntas en un bonito informe HTML, y lo enviará después al Backup Admin.
Pequeños requisitos del sistema antes de continuar
Necesitaremos dos pequeños requisitos del sistema antes de continuar, el primero será JQ, que es un paquete que nos ayuda a parsear el JSON, vamos a instalarlo, yum install si es CentOS:
apt-get install jq
La segunda está relacionada con la capacidad de enviar correos electrónicos. Estoy usando un comando algo más avanzado para enviar email, así que vamos a instalarlo:
apt-get install s-nail
Como no queremos que vayan a SPAM, usaremos un servidor de correo externo para enviar estos emails, para ello editaremos el fichero de configuración local del paquete:
vi ~/.mailrc
Y añadiremos lo siguiente al fichero, que seguramente estuviera vacío, cambiar el server, el user y la pass con los vuestros propios:
set smtp-use-starttls set ssl-verify=ignore set smtp=smtp://YOURSMTPSERVER:587 set smtp-auth=login set smtp-auth-user="[email protected]" set smtp-auth-password="YOURPASSWORD" set from="[email protected]"
¡Ya estaría todo! Vamos a lo siguiente.
Descarga, y configura el script veeam_azure_email_report.sh.
Ya tenemos casi todo listo, nos queda un último paso, el script que hará que todo esto funcione, descargaremos la última versión desde el repositorio de Github:
Este script de shell se puede descargar y ejecutar desde cualquier Linux, necesitará tener acceso a la API RESTful de Veeam Backup for Azure v2, que es HTTPS. Tendremos que editar los parámetros de configuración, aquí puedes tocar si quieres más de las últimas 24 horas, el correo electrónico, además de la IP de tu Veeam Backup for Azure, el usuario/pass, etc:
# Configuraciones ## # URL del punto final para la acción de inicio de sesión veeamUsername="YOURVEEAMBACKUPUSER" veeamPassword="YOURVEEAMBACKUPPASS" veeamBackupAzureServer="https://YOURVEEAMBACKUPIP" veeamBackupAzurePort="443" #Puerto por defecto ## Variables del sistema reportDate=$(fecha "+%A, %B %d, %Y %r") reportDatePath=$(fecha "+%A%B%d%Y") reportDateTo=$(date "+%Y-%m-%d") reportDateFrom=$(date -d "$reportDateTo - 1 day" '+%Y-%m-%d') reportPath="/home/oper/vba_azure_reports" html="$ruta de informe/Azure-Job-Report-$reportDatePath.html" email_add="CHANGETHISWITHYOUREMAIL"
Una vez realizados los cambios, haz que el script sea ejecutable con chmod:
chmod +x veeam_azure_email_report.sh
Lo ejecutamos, no debería salir nada, así que no hay errores, una vez terminado revisa la ruta de informes y mira si tienes un Informe HTML ahí:
root@tig-monitor:/home/oper# ls -la vba_azure_reports/ total 124 drwxr-xr-x 2 root 4096 Jun 4 21:45 . drwxr-xr-x 7 oper 4096 Jun 4 21:45 .. -rw-r--r-- 1 root 116244 Jun 4 21:45 Azure-Job-Report-FridayJune042021.html
Si es así, ahora añade este script a tu crontab, como por ejemplo, todos los días será mi recomendación:
0 0 * * * /home/oper/veeam_azure_email_report.sh >> /var/log/azurereport.log 2>&1 >/dev/null 2>&1
¡Ya está, todo bien y listo!
Informe Diario HTML Veeam Backup for Azure
En el caso de que toda la configuración del correo esté bien, SmartHost, etc. Deberías recibir un email muy bonito como este, con todas las sesiones que habían pasado durante las últimas 24 horas:
Como se ha dicho, absolutamente sorprendente ver todo esto en un solo lugar, si se echa un vistazo rápido, se puede ver rápidamente que el Snapshot sólo tarda unos segundos, y nunca mueve los datos a Azure Blob, mientras que un Backup Job, tardará unos minutos más, y transfiere los datos por supuesto:
Eso es todo, estoy planeando añadir muchos más detalles en estos Informes HTML, ya que veo que parece haber mucha demanda de ellos. Para la monitorización en tiempo real, y algún gran dashboarding, no olvidéis que ya tenemos el Grafana Dashboard para Veeam Backup for Azure:

Leave a Reply