Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- #
- # Função: Script que gera snapshot das VMs ligadas e gera o disco no formato .xva
- # Autor: Túlio Barbosa (tulio.barbosa@perpart.pe.gov.br|tulio.rb@hotmail.com)
- # Data: 30/09/2016
- # Versão: 1.0
- # Requerimentos: Este script precisa ser executado no prompt de algum Servidor XEN
- # Bugs: --
- # Observações: Para incluir uma VM na rotina de backup, inclua o nome EXATO dela ao lado dos nomes das outras VMs separado por espaço.
- #
- # Aqui é o começo do for, e vai ter a lista de todas as vms que passarão pelo processo de 'backup'.
- # Para adicionar outra(s) VM(s), coloque o nome exato dela como mostra no painel do Citrix, separado por espaços em branco.
- for VM in Centos_Geplanes
- do
- # Variável que pega APENAS o nome da VM, filtrando com o comando grep e pegando apenas a coluna 4
- NOME_VM=$(xe vm-list name-label="$VM" | grep -i name-label | awk '{print $4}')
- # Variável que pega APENAS o UUID da VM, filtrando com o comando grep e pegando apenas a coluna 5
- UUID_VM=$(xe vm-list name-label="$VM" | grep -i uuid | awk '{print $5}')
- # Variável que pega pega APENAS o UUID do SNAPSHOT já criado da VM, dando ao snapshot o mesmo nome da VM
- SNAP_ID=$(xe vm-snapshot uuid="$UUID_VM" new-name-label=$VM)
- # Comando que cria o snapshot da VM que tem um determinado UUID define o nome deste snapshot como o nome da própria VM
- xe vm-snapshot uuid=$UUID_VM new-name-label=$NOME_VM
- # Comando que não sei explicar direito hahahahaha
- xe template-param-set is-a-template=false ha-always-run=false uuid=$SNAP_ID
- # Comando que exporta o UUID para um local remoto e o transforma em um arquivo .xva, no meu caso está indo com data e hora
- # formatados para saber de quando foi o backup
- xe vm-export vm=$SNAP_ID filename=/var/run/sr-mount/5adf7b1b-194c-f3f2-fa98-784c6fb8aac5/backupvmtulio/${NOME_VM}_$(date +%d-%m-%Y).xva
- # Comando que desinstala/exclui o Snapshot que pertence a um determinado UUID
- xe vm-uninstall uuid=$SNAP_ID force=true
- done
Add Comment
Please, Sign In to add comment