|
|
|
@@ -13,7 +13,7 @@ do |
|
|
|
UUID=$OPTARG |
|
|
|
;; |
|
|
|
h) |
|
|
|
HOSTNAME=$OPTARG |
|
|
|
SERVER=$OPTARG |
|
|
|
;; |
|
|
|
*) |
|
|
|
usage |
|
|
|
@@ -23,7 +23,7 @@ done |
|
|
|
|
|
|
|
shift $((OPTIND-1)) |
|
|
|
|
|
|
|
if [ -z "${UUID}" ] || [ -h "${HOSTNAME}" ]; then |
|
|
|
if [ -z "${UUID}" ] || [ -h "${SERVER}" ]; then |
|
|
|
usage |
|
|
|
fi |
|
|
|
|
|
|
|
@@ -56,14 +56,14 @@ snapshot() |
|
|
|
echo "creando snapshot de $1 ..." |
|
|
|
zfs snapshot $1@`date +%Y%m%d` |
|
|
|
check $? |
|
|
|
echo "enviando snapshot de $1 a $HOSTNAME ..." |
|
|
|
zfs send $1@`date +%Y%m%d` | $SSH $HOSTNAME zfs receive $1 |
|
|
|
echo "enviando snapshot de $1 a $SERVER ..." |
|
|
|
zfs send $1@`date +%Y%m%d` | $SSH $SERVER zfs receive $1 |
|
|
|
check $? |
|
|
|
echo "creando snapshot incremental de $1 ..." |
|
|
|
zfs snapshot $1@`date +%Y%m%d`.incremental |
|
|
|
check $? |
|
|
|
echo "enviando snapshot incremental de $1 a $HOSTNAME ..." |
|
|
|
zfs send -i $1@`date +%Y%m%d` $1@`date +%Y%m%d`.incremental | $SSH $HOSTNAME zfs receive $1 |
|
|
|
echo "enviando snapshot incremental de $1 a $SERVER ..." |
|
|
|
zfs send -i $1@`date +%Y%m%d` $1@`date +%Y%m%d`.incremental | $SSH $SERVER zfs receive $1 |
|
|
|
check $? |
|
|
|
} |
|
|
|
|
|
|
|
@@ -97,18 +97,18 @@ fi |
|
|
|
echo "exportamos configuracion..." |
|
|
|
|
|
|
|
zonecfg -z ${UUID} export > $CFG/${UUID}.cfg |
|
|
|
$SCP $CFG/${UUID}.cfg $HOSTNAME:$CFG/${UUID}.cfg |
|
|
|
$SCP $CFG/${UUID}.cfg $SERVER:$CFG/${UUID}.cfg |
|
|
|
|
|
|
|
# destino |
|
|
|
echo "enviamos config a destino..." |
|
|
|
|
|
|
|
$SSH $HOSTNAME zonecfg -z ${UUID} < $CFG/${UUID}.cfg |
|
|
|
$SSH $HOSTNAME zoneadm -z ${UUID} attach |
|
|
|
$SSH $HOSTNAME zoneadm -z ${UUID} halt |
|
|
|
$SSH $SERVER zonecfg -z ${UUID} < $CFG/${UUID}.cfg |
|
|
|
$SSH $SERVER zoneadm -z ${UUID} attach |
|
|
|
$SSH $SERVER zoneadm -z ${UUID} halt |
|
|
|
|
|
|
|
# reestablecemos el alias que usa vmadm |
|
|
|
|
|
|
|
$SSH $HOSTNAME vmadm update ${UUID} alias=${ALIAS} |
|
|
|
$SSH $SERVER vmadm update ${UUID} alias=${ALIAS} |
|
|
|
vmadm update ${UUID} alias=${ALIAS} |
|
|
|
|
|
|
|
# detenemos la zona en local |
|
|
|
@@ -117,7 +117,7 @@ zoneadm -z ${UUID} halt |
|
|
|
|
|
|
|
# iniciamos la zona en remoto |
|
|
|
|
|
|
|
$SSH $HOSTNAME zoneadm -z ${UUID} boot |
|
|
|
$SSH $SERVER zoneadm -z ${UUID} boot |
|
|
|
|
|
|
|
# TODO: |
|
|
|
# - puede haber mas de un FILESYSTEM en la zona, necesitamos iterar por el array y lanzar la funcion snapshot sobre cada uno de ellos |
|
|
|
|