Pessoal aqui vai um texto muito interessante sobre o Xenserver que foi extraido de : http://olamundo.org/posts/xenserver-backup-automatico-de-vms/ em : 18/10/2011 - 10:41
Olá Mundo!
Quem me conhece sabe que não vou gastar um post inteiro com saudações. No máximo uma palavra: Cheguei!
Pronto! Vamos direto ao assunto…
Segue aqui um passo a passo para fazer backup automático de suas máquinas virtuais no XenServer 5.5. Isso deve funcionar em versões anteriores também.
Nesses script, trocamos a turbina do avião com ele voando.
Ou seja, as VMs não param.
1º Passo: Decobrir quais as VMs existentes.
2º Passo: Definir variáveis.
Agora que a VM criada a partir do SnapShot já foi exportada, podemos descartá-la:
Pra economizar espaço (e economiza muito), vamos “gzipar” a VM:
Quem me conhece sabe que não vou gastar um post inteiro com saudações. No máximo uma palavra: Cheguei!
Pronto! Vamos direto ao assunto…
Segue aqui um passo a passo para fazer backup automático de suas máquinas virtuais no XenServer 5.5. Isso deve funcionar em versões anteriores também.
Nesses script, trocamos a turbina do avião com ele voando.
1º Passo: Decobrir quais as VMs existentes.
vms="$(xe vm-list | grep "name-label" | grep -v "Control domain" | tr -s " " | cut -d " " -f 5)"Perceba que tive que fazer um filtro inverso para “Control domain”, pois se você usa Pool de hardware aparecem essas “VMs” fantasmas que na verdade representam o controlador.
2º Passo: Definir variáveis.
# Diretorio onde sera feito o backup. Pode ser via NFS... dirBack=/backup #Separador de campo para o "for". Previne erros no caso de espaços # no nome das VMs IFS=" " #Inicio do for. Cada loop faz backup de uma VM. for vm in $(echo $vms) do #Cria uma variavel data com o formato da data que quero pra compor # o nome do arquivo de backup time=$(date --date "now" +%d_%m_%y_%H:%M) #Agora componho o nome do arquivo de backup snapName=$vm-bk-$time3º Passo: Criar snapshot e obter UID.
#Aqui crio um snapshot. Ele eh necessario para não precisar
# parar a VM. O backup eh feito com ela em producao.
ID=$(xe vm-snapshot vm=$vm new-name-label=$snapName &&
{
logger -t "XenBackup" -s "$vm - OK Passo 1"
}||{
logger -t "XenBackup" -s "$vm - ERR Passo 1"
echo 1
})
#Na criacao do snap acima, a variavel ID recebe o UID do
# snap.No caso de erro, ela recebe "1"
#O logger joga o log joga no /var/log/messages
#Abaixo faço um teste pra checar se deu erro.
if [ "$ID" == "1" ]
then
exit 1
fi4º Passo: Transformar o Snapshot em VM.#Pra essa tarefa, uso o ID obtido no passo anterior.
xe template-param-set is-a-template=false uuid=$ID &&
{
logger -t "XenBackup" -s "$vm - OK Passo 2"
}||{
logger -t "XenBackup" -s "$vm - ERR Passo 2"
exit 2
}5º Passo: Exportar VM para o DIR de backup.#Perceba o uso das variaveis. Nao vah se perder6º Passo: Remover VM.xe vm-export vm=$snapName filename=$dirBack/$snapName { logger -t "XenBackup" -s "$vm - OK Passo 3" }||{ logger -t "XenBackup" -s "$vm - ERR Passo 3" exit 3 }
Agora que a VM criada a partir do SnapShot já foi exportada, podemos descartá-la:
xe vm-uninstall vm=$snapName force=true
{
logger -t "XenBackup" -s "$vm - OK Passo 4"
}||{
logger -t "XenBackup" -s "$vm - ERR Passo 4"
exit 4
}7º Passo: Plus!Pra economizar espaço (e economiza muito), vamos “gzipar” a VM:
gzip $dirBack/$snapName
{
logger -t "XenBackup" -s "$vm - OK Passo 5"
}||{
logger -t "XenBackup" -s "$vm - ERR Passo 5"
exit 5
}
#Fala a verdade, voce jah ia esquecer de encerrar o "for"...
done
exit 0Texto extraido de : http://olamundo.org/posts/xenserver-backup-automatico-de-vms/
em : 18/10/2011 - 10:41
Nenhum comentário:
Postar um comentário
Observação: somente um membro deste blog pode postar um comentário.