Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Taller Bacula / The Open Source Network Backup ...

Taller Bacula / The Open Source Network Backup Solution

Taller sobre Bacula (www.bacula.org), herramienta de backup open source impartido por Francisco Javier Funes Nieto (@canonigos) en la ETSIIT - UGR dentro de las Jornadas "Los Lunes al OSL" de la Oficina de Software Libre de Granada.

More Decks by francisco javier funes nieto

Other Decks in Technology

Transcript

  1. * The Network Backup Solution! Bacula*!  It comes by night

    and sucks the vital essence from your computers.  
  2.  It comes by night and sucks the vital essence from

    your computers.   Bacula: The Network Backup Solution @canonigos Francisco Javier Funes Nieto [email protected]
  3.  It comes by night and sucks the vital essence from

    your computers.   Bacula: The Network Backup Solution Proyecto de Software Libre Bacula es una solución de backup en red centralizado diseñado para funcionar en distintos sistemas operativos (*BSD, Linux, Mac OSX, Unix y Windows). Tiene funciones de tipo empresarial y se distribuye bajo licencia AGPL v3. El proyecto está liderado por su creador Kern Sibbald y actualmente cuenta con una amplia comunidad de desarrolladores y colaboradores, así como de usuarios.
  4.  It comes by night and sucks the vital essence from

    your computers.   Bacula: The Network Backup Solution Backup Dracula Bacula Historia 01/2000 Nace el Proyecto 04/2002 Primera release en Source Forge (1.16) 06/2006 Versión 1.38.11 01/2007 Versión 2.0.0 08/2007 Versión 2.2.8 04/2009 Versión 3.0.0 01/2010 Versión 5.0.0 02/2013 Versión 5.2.13
  5.  It comes by night and sucks the vital essence from

    your computers.   Bacula: The Network Backup Solution Backup No hago o no me acuerdo, o no me importa De vez en cuando, en CD o DVD Una vez al mes en tar.gz Algunas veces utilizo rsync Tengo mis propios scripts que hacen el trabajo sucio Sistema de Backup
  6. It comes by night and sucks the vital essence from

    your computers.   Bacula: The Network Backup Solution Problemas Backup ¿ Cómo sabes que ficheros recuperar ? ¿ Cómo vuelves a un punto en el tiempo ? ¿ Dónde están los ficheros y en qué medio físico ? ¿Y si tuvieses 2000 equipos ? ¿ Cuánto tiempo pierdes en recuperar datos ?
  7. It comes by night and sucks the vital essence from

    your computers.   Bacula: The Network Backup Solution Solución: Bacula Gestión Centralizada Software Libre (AGPLv3) Backup y Restauración en Red Múltiples Plataformas (*BSD, Linux, Mac OSX, Unix y Windows) Distintos tipos de medios (Cinta, Disco, USB, CD/ DVD) Confiable, seguro y estable Sabe Qué, Dónde, y Cuándo fue guardado nuestro backup Te permite restaurar sólo los ficheros que tú quieres Restauración en un punto del tiempo Fácilmente escalable Sistema de alertas e informes vía correo electrónico
  8.  It comes by night and sucks the vital essence from

    your computers.   Bacula: The Network Backup Solution Componentes File Daemon (FD) Console Director (DIR) Storage Daemon (SD) Catalog Database Comandos de Usuario Autorización Atributos de Fichero Localización Almacenamiento Atributos de Fichero Localización Almacenamiento Comandos Atributos de Fichero + Datos PostgreSQL MySQL SQLite Medios físicos
  9.  It comes by night and sucks the vital essence from

    your computers.   Bacula: The Network Backup Solution Director (DIR) Controla y gestiona todo el proceso de Backup La entidad básica es el Job (Un cliente, un conjunto de ficheros, una agenda, un destino…) Programa, inicia y supervisa todos los Jobs Mantiene el Catalog (Base de datos) Normalmente solo existe uno, pero puede haber más según envergadura de la instalación
  10.  It comes by night and sucks the vital essence from

    your computers.   Bacula: The Network Backup Solution File Daemon ó Cliente (FD) Ejecuta el backup, la restauración y la verificación ordenadas por el Director Instalado en cada máquina cliente como servicio (daemon) Se comunica a través de red con el Director y Storage Daemon Necesita acceso a todos los ficheros que vayan a ser copiados (root, SYSTEM) Normalmente un FD por máquina, múltiples FD’s por Director
  11.  It comes by night and sucks the vital essence from

    your computers.   Bacula: The Network Backup Solution Storage Daemon (SD) Lee y escribe datos en el medio físico (Disco, Cinta,USB, etc) Acepta órdenes y autorizaciones del Director Acepta y devuelve datos desde/hacia los File Daemons (FD) Envía información de dónde está guardada la información al Director -> Catalog Normalmente uno por Director pero con distintos Devices (Dispositivos)
  12.  It comes by night and sucks the vital essence from

    your computers.   Bacula: The Network Backup Solution Console Permite a los usuarios y al administrador gestionar Bacula Se comunica con el Director mediante la red Permite iniciar Jobs, revisar la salida de un Job, y mandar consultas y modificar el Catalog Disponibles: • bconsole • bat • bacula-web • bweb Consolas con restricciones de acceso permiten a los usuarios restaurar sus propios archivos
  13.  It comes by night and sucks the vital essence from

    your computers.   Bacula: The Network Backup Solution Catalog Es el único componente no escrito por el equipo de Bacula Base de datos SQL (MySQL, PostgreSQL, SQLite) Guarda el resultado de la ejecución de los Jobs, el uso de los volúmenes, la localización de los ficheros, etc… Permite una rápida restauración de datos Permite la ejecución de consultas para saber dónde y cuándo fueron guardados nuestros datos Los datos que caducan son borrrados automáticamente por el Director Soporta varias bases de datos para poder escalar
  14.  It comes by night and sucks the vital essence from

    your computers.   Bacula: The Network Backup Solution Características Servidor centralizado con base de datos y backup distribuído Todos los componentes se comunican vía red Agenda interna para automatizar la ejecución del backup y su prioridad Restauración Interactiva • Copia Actual • Copia de la fecha DD/ MM/AAAA Restauración Interactiva (cont). • Lista de ficheros y directorios • Restaurar un JobId
  15.  It comes by night and sucks the vital essence from

    your computers.   Bacula: The Network Backup Solution Características (cont.) Administración simplificada mediante distintas consolas Volúmenes con nombre para prevenir sobreescritura de backup Soporte de etiquetas ANSI/IBM Volúmenes con formato independiente de la máquina/sistema operativo, extensibles. Soporte Unicode en Win32 / UTF-8 en Unix/ Linux
  16.  It comes by night and sucks the vital essence from

    your computers.   Bacula: The Network Backup Solution Características Hardware Los Backups pueden ocupar varios Volúmenes Múltiples backups por volumen (Distintos Jobs, Clients y Sistemas Operativos) Soporte de gran cantidad de dispositivos de cinta Soporte de gran cantidad de Librerías de Cinta Soporte de lectura de código de de barras Amplia gestión de Pools y Volúmenes Rápida restauración en comparación con otros métodos (tiempos << tar)
  17.  It comes by night and sucks the vital essence from

    your computers.   Bacula: The Network Backup Solution Características de Seguridad Autorización entre servicios (daemons) mediante CRAM-MD5 Tanto Director como Storage Daemon pueden funcionar con usuarios no- privilegiados (non-root) Firmas MD5 o SHA1 por cada fichero en el sistema Suma de control CRC para cada Volumen Consolas y monitores del sistema de acceso restringido. Comunicaciones encriptadas mediante TLS Datos encriptados mediante PKI Verificación de la integridad de los datos
  18.  It comes by night and sucks the vital essence from

    your computers.   Bacula: The Network Backup Solution Bacula: Qué es un Job Un Job o trabajo de copia es la unidad básica de trabajo dentro de Bacula y consta de los siguientes elementos: Name (único) • Es el nombre del trabajo, nos sirve para definir el trabajo de copia. (p.ej.: htdocs_www) Type • Tipo de Trabajo: Backup, Migrate, Admin, Restore, Copy Level • Nivel del tipo de copia: Full, Differential, Incremental, VirtualFull FileSet • Qué ficheros guardaremos Storage • Dónde guardaremos los ficheros Pool • Qué conjunto de volúmenes usaremos (Disk, Tape) Schedule • Cuándo haremos la copia
  19.  It comes by night and sucks the vital essence from

    your computers.   Bacula: The Network Backup Solution Configuración de Bacula: bacula-dir.conf Director { Name  =  bacula-­‐dir    Query  File  =  “/usr/local/etc/query.sql”    Working  Directory  =  “/var/bacula”    PID  Directory  =  “/var/run”    Maximum  Concurrent  Jobs  =  20    Password  =  “secret”      Messages  =  Standard   } Job { Name  =  ”htdocs_www”    Type  =  Backup    Client  =  www-­‐fd    FileSet  =  “htdocs_var”    Storage  =  File    Schedule  =  “CicloSemanal”    Pool  =  Standard    Messages  =  Standard        Write  Bootstrap  =  “/var/bacula/www.bsr”   } Definición del Director, contraseña y otras características del mismo. Definición del Job: -  Nombre = “htdocs_www” -  Tipo = Backup -  Cliente = Equipo www -  Storage = File -  Cuando = “CicloSemanal” -  Conjunto de Volúmenes = Standard -  Mensajes = Standard -  Log = Fichero www.bsr
  20. Bacula: The Network Backup Solution Configuración de Bacula (cont.): bacula-dir.conf

    Client { Name  =  www-­‐fd    Address  =  www.canonigos.es    Catalog  =  MyCatalog    Password  =  “mipassword”    File  RetenRon  =  30  days    Job  RetenRon  =  6  months    AutoPrune  =  yes    Maximum  Concurrent  Jobs  =  20   } Definición del Cliente, dirección, contraseña, Catalog que usará, tiempos de retención en Catalog de los datos acerca de los ficheros y trabajos de copia, auto borrado de datos cuando cumplan requisitos y número máximo de trabajos concurrentes que acepta el FD  It comes by night and sucks the vital essence from your computers.  
  21. Bacula: The Network Backup Solution Configuración de Bacula (cont.): bacula-dir.conf

     It comes by night and sucks the vital essence from your computers.   FileSet { Name = ”htdocs_var” Include { Options { signature = SHA1 } File = /var/www } } Definición del FileSet, nombre, incluye el directorio /var/www y crearemos una firma SHA1 por cada fichero. FileSet { Name = ”Documentos_Usuario” Enable VSS = yes Include { Options { signature = SHA1 } File = “C:/Users/usuario/Documentos” } } Definición del FileSet, nombre, incluye el directorio C:/Users/usuario/ Documents y crearemos una firma SHA1 por cada fichero. También habilitamos el soporte para VolumeShadowCopyService de sistemas Win9x/WinXP * http://en.wikipedia.org/wiki/Shadow_Copy
  22. Bacula: The Network Backup Solution Configuración de Bacula (cont.): bacula-dir.conf

     It comes by night and sucks the vital essence from your computers.   Schedule { Name = ”CicloSemanal” Run = Level=Full 1st sun at 2:05 Run = Level=Differential 2nd-5th sun at 2:05 Run = Level=Incremental mon-sat at 2:05 } Nuestro Job con el Schedule “CicloSemanal” se ejecutara: - Con un nivel de copia completa: El primer domingo de cada mes a las 2:05 - Con un nivel diferencial: Desde el segundo al quinto domingo de cada mes a las 2:05 - Con un nivel incremental: De lunes a sábado a las 2:05
  23. Bacula: The Network Backup Solution Configuración de Bacula (cont.): bacula-sd.conf

    Device { Name  =  File    Archive  Device  =  /var/backup    Device  Type  =  File    Media  Type  =  File    Label  Media  =  yes    Label  Format  =  “Backup-­‐”    Random  Access  =  yes     } Definición de un dispositivo (Device) con nombre File que guardará las copias en /var/backup, con acceso aleatorio y capaz de auto nombrar sus volúmenes mediante la etiqueta “Backup-” (Backup-001, Backup-002)  It comes by night and sucks the vital essence from your computers.   Device { Name  =  HP_STORAGEWORKS_920    Device  Type  =  /dev/nst0    Media  Type  =  LTO3    Label  Media  =  yes    Random  Access  =  no    AutomaRcMount  =  yes    RemovableMedia  =  yes    AlwaysOpen  =  no   } Definición de un dispositivo (Device) con nombre HP_STORAGEWORKS_920 que guardará las copias en el dispositivo /dev/nst0 (Unidad de Cinta) sin acceso aleatorio (secuencial) y capaz de nombrar sus volúmenes, es un dispositivo que permite extraer sus medios físicos y que no siempre está abierto (necesita montaje aunque puede ser automático).
  24. Bacula: The Network Backup Solution  It comes by night and

    sucks the vital essence from your computers.   Configuración de Bacula (cont.): bacula-fd.conf Director { Name  =  bacula-­‐dir    Password = “secret” } Definición del Director al que voy a dejar interactuar con el FD. FileDaemon { Name  =  www-­‐fd   FDPort = 9102 WorkingDirectory = /var/lib/bacula Pid Directory = /var/run Maximum Concurrent Jobs = 20 } Definición del FD, nombre, puerto de trabajo y número máximo de trabajos concurrentes.
  25. Bacula: The Network Backup Solution  It comes by night and

    sucks the vital essence from your computers.   Desarrollo del Proyecto SiRo  Web   •  h]p://www.bacula.org   EsRlo  de  desarrollo   •  Proyecto  en  SourceForge   •  Guía  para  desarrolladores  con  pautas  de  esRlo   •  Acceso  a  código  para  desarrolladores  mediante  SVN/GIT   •  Parches  y  Commits  revisados  por  Kern  Sibbald   •  Código  testeado  por  una  suite  de  regresión   •  Lista  de  correo  para  desarrolladores  (bacula-­‐devel)   Licencia   •  AGPLv3  (h]p://www.gnu.org/licenses/agpl.html)   •  The  Freedom  Task  Force  (  h]p://www.fsfe.org/projects/ef/ef.es.html)  
  26. Bacula: The Network Backup Solution  It comes by night and

    sucks the vital essence from your computers.   Recursos Para  usuarios  y  administradores  de  sistemas   •  Manual:    h]p://www.bacula.org/en/rel-­‐manual/index.html   •  Reporte  de  errores:  h]p://bugs.bacula.org/   •  Lista  de  soporte:  bacula-­‐[email protected]   •  Wiki:  h]p://wiki.bacula.org     Para  desarrolladores   •  Documentación:    h]p://www.bacula.org/en/developers/index.html   •  Lista  de  correo  para  desarrolladores  bacula-­‐ [email protected]  ,  bacula-­‐[email protected]     •  SVN/GIT  en  SourceForge  
  27. Bacula: The Network Backup Solution  It comes by night and

    sucks the vital essence from your computers.   Créditos Gracias a: Dan  Langlille  que   creó  la   presentación   original   Karl  Cunningham   que  la  actualizó   Oficina  de   Soeware  Libre   de  la   Universidad  de   Granada   Kern  Sibbald   creador  del   proyecto  Bacula   Una copia de ésta presentación puede encontrarse en el sitio de Bacula (bacula.org) en la sección de Presentaciones (Presentations)