Mostrando entradas con la etiqueta centos. Mostrar todas las entradas
Mostrando entradas con la etiqueta centos. Mostrar todas las entradas

viernes, 9 de noviembre de 2012

Backup "anti desastres"

(BETA 1.3.0)
Me encomendaron la tarea de hacer un backup que debe ser "anti desastres."
La idea de "bkp anti desastres" la uso para referirce a tener un backup 100% efectivo.

Imaginemos que tenemos el datacenter y nuestros equipos dentro, si por alguna razon EXPLOTA todo el datacenter o se derrumba el edificio, tanto los servers como los backups estan perdidos. Para ello se usa el llamado "bkp anti desastres".  
(Si lo se, también existen backups a cinta y bla bla bla) Hoy día las cintas salen mucho mas caras en comparación a un disco de 2Tb por eso y EN MI CASO no uso cintas.

Lo que voy hacer es:
1_Realizar backup de mis equipos en un storage
2_Realizar copias de seguridad periodicas (Diarias)
3_Configurar una VPN entre el datacenter y un equipo en otra zona. (Para traficar mis bkps de forma "segura")
4_Realizar una copia del ULTIMO backup a un servidor externo (usando la vpn)












4_SCRIP CON RSYNC PARA ENVIAR EL ULTIMO BACKUP A UN SERVER EXTERNO:

#/bin/bash!
# VARIABLES DE ENTORNO

#Directorio donde crea el log del backup
LOG="/var/log/remote_backup"

#Fecha de inicio de cada log con Hs,min,seg
FECHA=`date +%Y-%m-%d_%H-%M-%S`

#Hora para saber cuanto tardo aproximadamente en hacer el backup
HORA=`date +%H-%M-%S`

#Correo a donde se envía el log
MAIL="administrador@midominio.com.ar"



# Generar siempre UN NUEVO log (reemplaza el que está):
echo "                " >$LOG



echo  -----------------COMIENZO $HORA ----------------->>$LOG
# Comandos:
echo "                " >>$LOG
echo "                " >>$LOG
echo "                " >>$LOG
echo "############################ SERVER_1 #########################################" >>$LOG
echo "                " >>$LOG
echo  ----------------- $FECHA ----------------->>$LOG
echo "                " >>$LOG
echo "                " >>$LOG

# Copiar con rsync a server remoto y generar un log
rsync -rv --progress --inplace --rsh='ssh -pXXXX' /mnt/backup/server1/mysql/backup_`date +%Y-%m-%d_`* root@200.0.0.1:/root/backup/server1/mysql/offsite_server1.tar.gz >>$LOG
echo "                " >>$LOG
echo "                " >>$LOG
echo "                " >>$LOG


echo "############################ SERVER_2 #########################################" >>$LOG
echo "                " >>$LOG
echo  ----------------- $FECHA ----------------->>$LOG
echo "                " >>$LOG
echo "                " >>$LOG

# Copiar con rsync a server remoto y generar un log
rsync -rv --progress --inplace --rsh='ssh -pXXXX' /mnt/backup/server2/server/backup_`date +%Y-%m-%d_`* root@200.0.0.1:/root/backup/server_2/mysql/offsite_server2.tar.gz >>$LOG
echo "                " >>$LOG
echo "                " >>$LOG
echo "                " >>$LOG
echo "                " >>$LOG


echo "############################ SERVER_3 #########################################" >>$LOG
echo "                " >>$LOG
echo  ----------------- $FECHA ----------------->>$LOG
echo "                " >>$LOG
echo "                " >>$LOG

# Copiar con rsync a server remoto y generar un log
rsync -rv --progress --inplace --rsh='ssh -pXXXX' /mnt/backup/server3/server/backup_`date +%Y-%m-%d_`* root@200.0.0.1:/root/backup/server_3/mysql/offsite_server2.tar.gz >>$LOG
echo "                " >>$LOG
echo "                " >>$LOG
echo "                " >>$LOG
echo "                " >>$LOG
echo  -----------------FIN $HORA ----------------->>$LOG

# Enviar por mail el log (EN ANALISIS)
echo $LOG | mail -s "Backup Remoto" $MAIL