Seleccionar página

Como programar tarea ghettoVCB en Cron para VMware ESXi

La tarea de configurar el cronjobs para sistemas operativos ESX de VMware no es muy diferente a los demás sistemas operativos Linux, pero en VMware ESXi por el contrario, hay que tener francamente en cuenta por que los cambios realizados no persisten cuando reiniciamos el sistema VMware.

Una vez tenemos descargado ghettoVCB de http://communities.vmware.com/docs/DOC-8760 , lo único que tenemos que hacer es un upload a un datastore de VMware en el que queramos alojar el script ghettoVCB.

Podemos acceder con Putty a la consola de nuestro sistema ESXi, desde aquí podréis ir a descargar directamente a la web oficial el programa Putty, A Free Telnet/SSH Client

Y algunos os preguntaréis ¿Cómo abrir el puerto ssh en VMware ESXi?, pues ahí está.

Ejecutamos Putty, y le ponemos la IP del host VMware donde vamos a conectarnos, usuario y contraseña.

Y vamos a suponer lo siguiente:

/vmfs/volumes/datastore2/backup

Será el sitio donde pondremos el script ghettoVCB y el archivo «machines» donde especificaremos las vm que queremos efectuar copia

/vmfs/volumes/datastore3/logs
Será el sitio donde pondremos los logs que genere el script de ghettoVCB

Vamos a programar cronjobs para ghettoVCB

Vamos a:

vi /var/spool/cron/crontabs/root

Y añadimos al final del archivo lo siguiente:

~ # 0 21 * * * /vmfs/volumes/datastore2/backup/ghettoVCB.sh -f /vmfs/volumes/datastore2/backup/machines > /vmfs/volumes/datastore3/logs/ghettoVCB-backup-$(date +\%s).log

Donde pone 21 le ponemos la hora a la que queramos hacer el backup.

Salimos grabando del comando vi con ESC y tecleamos

:wq!

Eliminaremos la anterior programación de CRONJOBS de la siguiente manera:

~ # kill $(cat /var/run/crond.pid)
~ # busybox crond


Y luego editaremos el rc.local y nos encontraremos lo siguiente (en verde) y le añadiremos (lo azul), ejecutando:

~ # vi /etc/rc.local

~ # cat /etc/rc.local
#! /bin/ash
export PATH=/sbin:/bin


log() {
   echo "$1"
   logger init "$1"
}

#execute all service retgistered in /etc/rc.local.d
if [http:// -d /etc/rc.local.d |http:// -d /etc/rc.local.d ]; then
   for filename in `find /etc/rc.local.d/ | sort`
      do
         if [ -f $filename ] && [ -x $filename ]; then
            log "running $filename"
            $filename
         fi
      done
fi
/bin/kill $(cat /var/run/crond.pid)
/bin/echo "0 21 * * * /vmfs/volumes/datastore2/backup/ghettoVCB.sh -f /vmfs/volumes/datastore2/backup/machines > /vmfs/volumes/datastore3/logs/ghettoVCB-backup-\$(date +\\%s).log" >> /var/spool/cron/crontabs/root
/bin/busybox crond

Salimos grabando del comando vi con ESC :wq!

Para asegurarnos que el CRONJOB se creará después de reiniciar físicamente el HOST ejecutaremos lo siguiente:

~ # /sbin/auto-backup.sh

Y nos aparecerá algo como esto que pongo más abajo en naranja

config implicitly loaded
local.tgz
etc/vmware/vmkiscsid/vmkiscsid.db
etc/dropbear/dropbear_dss_host_key
etc/dropbear/dropbear_rsa_host_key
etc/opt/vmware/vpxa/vpxa.cfg
etc/opt/vmware/vpxa/dasConfig.xml
etc/sysconfig/network
etc/vmware/hostd/authorization.xml
etc/vmware/hostd/hostsvc.xml
etc/vmware/hostd/pools.xml
etc/vmware/hostd/vmAutoStart.xml
etc/vmware/hostd/vmInventory.xml
etc/vmware/hostd/proxy.xml
etc/vmware/ssl/rui.crt
etc/vmware/ssl/rui.key
etc/vmware/vmkiscsid/initiatorname.iscsi
etc/vmware/vmkiscsid/iscsid.conf
etc/vmware/vmware.lic
etc/vmware/config
etc/vmware/dvsdata.db
etc/vmware/esx.conf
etc/vmware/license.cfg
etc/vmware/locker.conf
etc/vmware/snmp.xml
etc/group
etc/hosts
etc/inetd.conf
etc/rc.local
etc/chkconfig.db
etc/ntp.conf
etc/passwd
etc/random-seed
etc/resolv.conf
etc/shadow
etc/sfcb/repository/root/interop/cim_indicationfilter.idx
etc/sfcb/repository/root/interop/cim_indicationhandlercimxml.idx
etc/sfcb/repository/root/interop/cim_listenerdestinationcimxml.idx
etc/sfcb/repository/root/interop/cim_indicationsubscription.idx
Binary files /etc/vmware/dvsdata.db and /tmp/auto-backup.31345.dir/etc/vmware/dvsdata.db differ
config implicitly loaded
Saving current state in /bootbank
Clock updated.
Time: 20:40:36   Date: 08/14/2009   UTC

Y ya está configurado cronjobs para que cuando se reinicie nuestro host VMware ESXi, se puedan efectuar las copias de seguridad con el script ghettoVCB

Como programar tarea ghettoVCB en Cronjobs para VMware ESXi