Scripts Vmware

Un article de Wiki.Yakakliker.org.

Une petite aide pour la création de scripts Vmware ...

Je pense entre autre à la création automatique de snapshots .... avant sauvegardes.


http://www.esxguide.com/esx/content/view/2/25/

http://www.vmware.com/support/esx2/doc/vmware-cmd.html

Sommaire

Scripts de sauvegarde Vmware 1.x

Script 1


#! /bin/bash



VMWARE_CMD=/usr/bin/vmware-cmd
DEST_RSYNC=10.114.6.67::Backup/
VMSTATE=NULL
VM=FALSE
VM_HOME=FALSE


function backup

{


$VMWARE_CMD "$VM" suspend

sleep 30

cd "$VM_HOME/"

chmod 777 *

chmod u+X "$VM"

rsync -rz --stats "$VM_HOME" "$DEST_RSYNC"

sleep 30

chmod u+X "$VM"

sleep 30

$VMWARE_CMD "$VM" start

sleep 30

}

##########################################################################

## Backup Imprimantes

VM="/home/Machines/imprimantes/imprimantes.vmx"
VM_HOME="/home/Machines/imprimantes"

backup

####################

## Backup Srv017

VM="/home/Machines/srv017/srv017.vmx"
VM_HOME="/home/Machines/srv017"

backup



exit 0


Script 2

#! /bin/bash



VMWARE_CMD=/usr/bin/vmware-cmd
DEST_RSYNC=10.114.6.67::Backup/
VMSTATE=NULL
VM=FALSE
VM_HOME=FALSE


function snapshot

{
vmrun snapshot "$VM"
sleep 300
}

##########################################################################
## Backup Imprimantes

VM="/home/Machines/imprimantes/imprimantes.vmx"
VM_HOME="/home/Machines/imprimantes"

snapshot

##########################################################################
## Backup Srv017

VM="/home/Machines/srv017/srv017.vmx"
VM_HOME="/home/Machines/srv017"

snapshot


exit 0


Scripts Vmware 2.x

Suspendre une machine virtuelle

vmrun -T server -h http://localhost:8222/sdk -u login -p mot_de_passe suspend "[Nom_de_la_Database] Chemin/Machine.vmx" soft

Lister les Machines virtuelles

vmrun -T server -h http://localhost:8222/sdk -u Login -p Mot_de_passe list

Démarrer une machine virtuelle

 vmrun -T server -h http://localhost:8222/sdk -u Login -p Mot_de_passe start "[Database] Chemin/machine.vmx"


Script 1

Explications

  • Suspend la machine virtuelle
  • Monte un partage réseau
  • Sauvegarde la machine sous forme d'un fichier compressé sur le partage réseau
  • Relance la machine virtuelle
  • Démonte le partage.


Script

#! /bin/bash



SUSPEND_CMD="vmrun -T server -h http://localhost:8222/sdk -u User -p Mot_de_passe suspend"
START_CMD="vmrun -T server -h http://localhost:8222/sdk -u User -p Mot_de_passe start"
DEST_CMD=NULL
DEST=NULL
VM_HOME=NULL
VM_BCKP=NULL


function backup

{

$DEST_CMD

$SUSPEND_CMD "$VM" soft

sleep 30

$VM_BCKP

sleep 30


$START_CMD "$VM"

sleep 30

$LOCAL

}

##########################################################################

## Backup Zimbra

VM="[Datastore] Chemin/Machine.vmx"
VM_HOME="Chemin_du_dossier_de_la_Machine_Virtuelle"
VM_BCKP="tar czvf /mnt/Montage_du_partage/Machine.tgz Chemin_du_dossier_de_la_Machine_Virtuelle"
DEST_CMD="mount -t cifs -o username=User,password=Mot_de_passe //Serveur/Partage/dossier /mnt/Montage_du_partage"
LOCAL="umount /mnt/Montage_du_partage"

backup

####################


exit 0


Sources

http://communities.vmware.com/docs/DOC-8311


Script 2

Explications

Au préalable :

Faire un : vmware-vim-cmd vmsvc/getallvms afin d'obtenir le Vmid de la VM


Suspend la VM

Attend 120 s

Crée un tgz de la VM

Attend 120 s

Rsync du dossier de la VM

Attend 120 s

Redémarre la VM


...Ceinture & bretelles

Script

#! /bin/bash




vmware-vim-cmd vmsvc/power.suspend "Vmid"
sleep 120
tar czvf /home/Rsx/Srv005/Srv005_7.tgz /home/Machines/Srv005
sleep 120
rsync -rz /home/Machines/Srv005 /home/Backup/
sleep 120
vmware-vim-cmd vmsvc/power.on "Vmid"

exit

Sources

http://knowledge.xtravirt.com/white-papers/index.php?option=com_remository&func=download&id=9&chk=c87dd71e82212b156d972829a3bfc97f&no_html=1


Options de "Vmrun"

  • start

Démarre la VM

  • stop

Arrête la VM

  • reset

Réinitialise la VM

  • suspend [soft|hard]

Suspend la VM

  • pause

Met la VM en pause

  • unpause

Sort la VM de la pause


Sources

http://www.cyberciti.biz/tips/start-stop-vmware-virtualization-vms-command.html

Liens

http://communities.vmware.com/community/vmtn/server/server2?view=discussions