Anexo seguridad tic-centrorespaldo

382 views
293 views

Published on

Alternativas sencillas de copia de seguridad con bacula, rsync o duplicity

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
382
On SlideShare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
7
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Anexo seguridad tic-centrorespaldo

  1. 1. Gestión de la Continuidad enGestión de la Continuidad enla Junta de Andalucíala Junta de AndalucíaAnexo: alternativasAnexo: alternativas
  2. 2. • IntroducciónIntroducción• Bacula vs otras herramientasBacula vs otras herramientas• RsyncRsync• duplicityduplicity
  3. 3. Introdución• Situación actual– Presupuestos muy reducidos– Tecnología heterogénea– Elevada carga de trabajo del equipo técnico– Elevada rotación de personal– Elevado consumo de disco de nuestrasaplicaciones– Necesidad de respaldo en caliente de nuestrasBases de datos, mayoritariamente, Oracle
  4. 4. Introducción• Alternativas– Backups tradicionales a cinta u otros medios– Contratación de los servicios del centro derespaldo (opción deseable)– Adquirir herramientas de backup de terceros– Opción “háztelo-tú-mismo”
  5. 5. • IntroducciónIntroducción• Bacula vs otras herrramientasBacula vs otras herrramientas• RsyncRsync• duplicityduplicity
  6. 6. Introducción• El recorrido que vamos a hacer incluye estasaproximaciones:– Backups tradicionales:• visión de bacula• Servicio de recogida de cintas CdR– Adquirir herramientas de terceros• A evaluar dependiendo del entorno.• Estrategia poco deseable: mejor el enfoque a servicio o asoftware libre (más estandarizado)– Opcíon háztelo tú mismo• Rsync• duplicity
  7. 7. Bacula vs otras herramientas• Bacula:– Sistema de backup orientado a la red– Open Source– Versión actual: 5.2.6 (22/Feb/2012)– Admite diferentes medios, incluyendo disco ycintas– Comparable a Legato Networker. ARCserveIT,Arkeia, o PerfectBackup+– Idóneo para backups de clientes, no sóloservidores– Disponibles diferentes consolas gráficas
  8. 8. Bacula vs otras herramientas• Principales componentes de bacula– Bacula Director– Bacula Console– Bacula File– Bacula Storage (almacenamiento)– Bacula catalog– Bacula Monitor (monitorización de servicios)
  9. 9. Bacula vs otras herramientas• Bacula Director– Bacula Director es el programa que supervisatodo el backup, restore, vrificaciónes yoperaciones de archivado.– El administrador de sistema usa BaculaDirector para planificar y/o recuperar ficheros.– Bacula Director se ejecuta como un daemon(o servicio) en background.
  10. 10. Bacula vs otras herramientas• Bacula Console– Bacula Console es elprograma que permite aladministrador comunicarse con BaculaDirector para darle órdenes.– Versiones: texto, QT y wxWindows
  11. 11. Bacula vs otras herramientas• Bacula File– Bacula File service (también llamado BaculaClient) es el software que se instala en lamáquina a ser respaldada.– Versiones Unix/Windows
  12. 12. Bacula vs otras herramientas• Bacula Storage– Bacula Storage está formado por losprogramas que efectúan el almacenador yrecuperación de los datos y atributos deficheros hacia el mdio físico de backup ovolúmenes.– En otras palabras, es por ejemplo elresponsable de leer y escribir en las cintas.
  13. 13. Bacula vs otras herramientas• Bacula Catalog– Compuesto por los programas responsablesde mantener los índices y bases de datos devolúmenes de todos los ficheros respaldados.– Soporta MySQL, PostgreSQL o SQLite(oracle no)
  14. 14. Bacula vs otras herramientas• Bacula Monitor– Bacula Monitor esel programa que permite aladministrador comrprobar el estado de loscomponentes Bacula Director, Bacula File yBacula Storage.– Versión GTK+ disponible.
  15. 15. Componentes bacula
  16. 16. Interacciones entrecomponentes bacula
  17. 17. • IntroducciónIntroducción• Bacula vs otras herramientasBacula vs otras herramientas• RsyncRsync• duplicityduplicity
  18. 18. rsync• ¿Qué es rsync?– Programa para sincronizar dos árboles dedirectorio.– Puede funcionar a través de ssh paragarantizar privacidad.– Si un fichero a transmitir ya existe en el hostdestino, no es transmitido.• Si existe pero es diferente, sólo se transmiten laspartes que son diferentes.
  19. 19. Rsync: ejemplomkdir /tmp/backuprsync --archive --one-file-system --hard-links --human-readable --inplace --numeric-ids --delete --delete-excluded --human-readable --stats --progress /home/jcrubio/Dropbox /tmp/backup/backup.fullrsync --archive --one-file-system --hard-links --human-readable --inplace --numeric-ids --delete --delete-excluded --human-readable --stats --progress --link-dest=/tmp/backup/backup.full /home/jcrubio/Escritorio /tmp/backup/backup.incremental
  20. 20. Rsync: ejemplo• Ejercicio:– Creamos un full y un incremental– Creamos un fichero con cat /dev/zero en carpetaDropbox/temp– Comprobamos lo que tarda en transmitir.– Modificamos el archivo y comprobamos que tardamenos en llevarlo.• Conclusión: idóneo para los backups deusuarios, donde cada uno se puede recuperarlos ficheros perdidos.
  21. 21. Rsync: parámetros utilizados• --archive: obliga a reservar permisos,propietarios, y hora.• --one-file-system: NO entra de forma recursivaen otros file systems.• --hard-links:Mantiene hard links del servidorque están siendo respaldados.• --numeric-ids: Impide a rsync el intento detransformar UID <> userid o GID <> groupid.
  22. 22. • IntroducciónIntroducción• Bacula vs otras herramientasBacula vs otras herramientas• rsyncrsync• DuplicityDuplicity
  23. 23. duplicity• Duplicity:– Es una suite software que proporciona backupremoto sencillo, encriptado, firmado digitalmentey versionado.– Permite backups full e incrementales– Usa GnuPG, librsync, tar y rdiff.– Para transmitir datos, puede usar SSH/SCP,ficheros locales, rsync, FTP, Amazon S3,webdav...– Funciona en Unix/Linux y windows con cygwin
  24. 24. duplicity• Ejemplo1:– duplicity –no-encryption Escritorio/ file:///tmp/backup/pruebadup– La primera vez, lanza un backup full, lasdemás incremental.– No cifra la copia con GPG– Guarda la copia en sistema de ficheros local– Bastante optimizado en espacio– Al menos un parámetro debe ser URL
  25. 25. duplicity• Ejemplo 2:– duplicity Escritorio/ ftp://jcrubio@redania.com/pruebadup– La primera vez, lanza un backup full, lasdemás incremental.– **SÍ** cifra la copia con GPG– Guarda la copia en remoto (FTP)– Al menos un parámetro debe ser URL, eneste caso, recurso FTP.
  26. 26. duplicity• duplicity full /home/jcrubio/Escritorio scp://jcrubio@mi_servidor/mi_directorio• Fuerza un full backup y lo envía por SCP• duplicity scp://jcrubio@redania.com/pruebadup /home/jcrubio/Escritorio• Restaura TODO tal y como estabaoriginalmente.
  27. 27. duplicity• duplicity -t 3D --file-to-restore ceritos file:///tmp/backup/pruebadup /home/jcrubio/Escritorio/ceritos --force• Restaura UN ÚNICO FICHERO de lacopia en la ubicación proporcionada,tomando de la copia la versión de hacetres días entre las que haya.
  28. 28. duplicity• echo “prueba” >> /home/jcrubio/Escritorio/ceritos• duplicity verify file:///tmp/backup/pruebadup /home/jcrubio/Escritorio• Comprueba lo que ha cambiado entre eldirectorio actual y la réplica– Siguiente diapositiva muestra salida delcomando.
  29. 29. duplicity• Salida del comando anterior:root@server:/home/jcrubio# duplicity verifyfile:///tmp/backup/pruebadup /home/jcrubio/Escritorio/GnuPG passphrase:Local and Remote metadata are synchronized, no sync needed.Last full backup date: Wed Mar 14 15:08:45 2012Difference found: File . has mtime Wed Mar 14 22:38:13 2012, expected TueMar 13 21:20:22 2012Difference found: File ceritos has mtime Wed Mar 14 22:42:39 2012,expected Wed Mar 14 15:09:37 2012Verify complete: 13 files compared, 2 differences found.
  30. 30. duplicity• duplicity --exclude /mnt --exclude /tmp --exclude /proc / file:///media/backup• Copia el directorio raíz excluyendo losdirectorios listados.• duplicity --include /home --include /etc --exclude ’**’ / file:///media/backup• Lo único que copia del raíz son losdirectorios /home y /etc
  31. 31. duplicity• CONCLUSIÓN: Idóneo para backup deservidores• ¿Podríamos hacer backups de Oracle uotras bases de datos, o de máquinasvirtuales en caliente?– Casi....– Ejemplo de BD oracle
  32. 32. duplicity#!/bin/bash# NOMBRE SCRIPT: start-backup-mode.sh# Pone la BD en modo backup modesqlplus /nolog <<EOFconn sys/managger as sysdbaalter database begin backup;exitEOF# Usando LVM, crea y monta Snapshots/usr/sbin/lvcreate -L 20G -s -n oradata-snap oradata/usr/sbin/lvcreate -L 20G -s -n oraappl-snap oraapplmount /dev/VG_DATA/oradata-snap /mnt/snapshots/var/oradata/mount /dev/VG_DATA/oraappl-snap /mnt/snapshots/opt/oraappl/# Sacamos la BD de modo backupsqlplus /nolog <<EOFconn sys/managger as sysdbaalter database end backup;exitEOFexit 0
  33. 33. duplicity• Hacemos la copia con duplicity• duplicity ora* ftp://usuario@servidor/path• Esta misma orden podría ir en el archivoanterior, start-backup-mode.sh, despuésde que se haya sacado la BD de modobackup• Por último, destruimos el snapshot
  34. 34. duplicity#!/bin/sh# NOMBRE: stop-backup-mode.sh# Desmonta y destruye snapshotsumount /mnt/snapshots/var/oradata/umount /mnt/snapshots/opt/oraappl/lvremove -f /dev/VG_DATA/oradata-snaplvremove -f /dev/VG_DATA/oraappl-snapexit 0
  35. 35. duplicity

×