Cómo realizar un Backup a máquinas virtuales corriendo en XenServer

[vc_row]
[headline_box text=”1. Realizar una copia de seguridad manual con VM corriendo”]
[/vc_row][vc_row]
wget http://swupdate.openvpn.org/as/openvpn-as-2.0.24-CentOS6.x86_64.rpm

http://swupdate.openvpn.org/as/openvpn-as-2.0.24-CentOS6.x86_64.rpm

https://wiki.centos.org/TipsAndTricks/YumAndRPM#head-3c061f4a180e5bc90b7f599c4e0aebdb2d5fc7f6

 

yum –nogpgcheck localinstall

Averigua la UUID de las VMs.

Con el siguiente comando se obtiene la lista de los UUID de todas las máquinas virtuales instaladas en el XenServer.

# xe vm-list is-control-domain=false is-a-snapshot=false
uuid ( RO)           : 8ac95696-94f3-83c1-bc89-8bb2603f852b
     name-label ( RW): test-vm
    power-state ( RO): running

En la prueba comprobamos que la UUID es es “8ac95696-94f3-83c1-bc89-8bb2603f852b”.

Crear una Snapshot de la VM

# xe vm-snapshot uuid=8ac95696-94f3-83c1-bc89-8bb2603f832b new-name-label=testvmsnapshot
# xe template-param-set is-a-template=false ha-always-run=false uuid=b15c0531-88a5-98a4-e484-01bc89131561

Exportar la Snapshot a un archivo

# xe vm-export vm=b15c0531-88a5-98a4-e484-01bc89131561 filename=vm-backup.xva

Eliminar la Snapshot

# xe vm-uninstall uuid=b15c0531-88a5-98a4-e484-01bc89131561 force=true
[/vc_row][vc_row]
[headline_box text=”2. Script para hacer una copia de respaldo corriendo las VMs”]
[/vc_row][vc_row]
Para hacer un respaldo de todas las máquinas virtuales que corren en el XenServer podemos utilizar el siguiente script en el shell. Este scropt está montado en el sistema de archivos remoto exportado a traves de NFS.
Adapte este script a sus necesidades bajo su riesgo.

#!/bin/bash
#
# Written By: Rahul Kumar and modified by Circulética
# Created date: Jun 14, 2014
# Modified date: Jan 11, 2016
# Version: 1.1
# Visit: http://tecadmin.net
#

DATE=`date +%d%B%y`
XSNAME=`echo $HOSTNAME`
mkdir -p /mnt1
UUIDFILE=/tmp/uuids.txt

### Mounting remote nfs share backup drive

[ ! -d /mnt1 ]  && echo "No mount point found, kindly check"; exit 0
mount -F nfs 192.168.10.100:/backup/citrix/metadata /mnt1

BACKUPPATH=/mnt1/$XSNAME/$DATE
mkdir -p $BACKUPPATH
[ ! -d $BACKUPPATH ]  && echo "No backup directory found"; exit 0

# Fetching list UUIDs of all VMs running on XenServer
xe vm-list is-control-domain=false is-a-snapshot=false | grep uuid | cut -d":" -f2 > $UUIDFILE

[ ! -f $UUIDFILE ] && echo "No UUID list file found"; exit 0

while read VMUUID
do
    VMNAME=`xe vm-list uuid=$VMUUID | grep name-label | cut -d":" -f2 | sed 's/^ *//g'`

	SNAPUUID=`xe vm-snapshot uuid=$VMUUID new-name-label="SNAPSHOT-$VMUUID-$DATE"`

	xe template-param-set is-a-template=false ha-always-run=false uuid=$SNAPUUID

	xe vm-export vm=$SNAPUUID filename="$BACKUPPATH/$VMNAME-$DATE.xva"

	xe vm-uninstall uuid=$SNAPUUID force=true

done < $UUIDFILE

umount /mnt1
[/vc_row]

0 Comentarios

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*