¿ Otra vez cambiando de programa ? Pues sí, otra vez. Y tampoco estoy seguro de que ahora la cosa vaya a mejor.
He estado años usando Bacula para salvar los datos de las máquinas de la red. Después, tras ver cómo cada vez iba a peor, cambié a Bareos, un fork de Bacula que prometía mucho pero estaba lastrado de origen: la configuración es un infierno. El uso es casi peor aún. Se pasa de un interfaz de línea de órdenes a uno web para terminar resolviendo cosas con instrucciones SQL en su base de datos.
Basta con calcular mal el espacio de los volúmenes para que al poco tiempo estés sin espacio, conservando datos inútiles, e incapaz de abrirte hueco sin recurrir a arcanos y magias varias. Si tu profesión está dedicada por completo a las copias de seguridad estupendo. En caso contrario más te vale entender cómo funciona para no encontrarte atrapado por su algoritmo. Y no es fácil.
Las razones porque las que soporto malamente este par de aplicaciones son varias.
- Necesitan tener funcionando un cliente en la máquina de la que extraer archivos. No siempre conseguible si el sistema es antiguo; entonces toca compilar C y empieza la fiesta.
- Las copias se almacenan en volúmenes bajo su control y es complicado saber cuánto hay salvado y cuánto no. Mucho menos si sólo eres un jefe que quiere saber si hay copias hechas.
- La configuración y la síntaxis es tan compleja como los viejos programas de reparto de correo. Varias guías y muchas web consultadas sin obtener la seguridad de que lo entiendes.
- Si te quedas sin espacio de copias estás jodido. Como has calculado mal (siempre lo haces) el tamaño de cada pool y cada volumen dentro de él hacerle cambiar de idea es un locura. Yo he llegado a situaciones donde he tenido que borrarlo todo y comenzar de cero.
Así que lo que busco ahora es otra cosa. Algo que me permita lo siguiente:
- No usar programas en las máquinas cliente.
- Usar herramientas estándar de transferencia de archivos como rsync y conexiones también normalizadas como ssh.
- Disponer de una visión clara de lo que se ha salvado, dónde está y qué versiones del mismo existen.
- Que a esa visión tengan acceso también personas no técnicas. Más que para operar para ver qué ocurre. Resúmenes sencillos por correo también son muy deseables.
He visto varias alabanzas al programa BackupPC que conocía de oídas. Escrito en Perl y con una filosofía bastante directa en cuanto a copias, he pensado en instalarlo y usarlo en la red de la empresa, y ya me he encontrado con algunos escollos.
- En Debian no está aún la versión 4 del programa que mejora mucho y cambia más el funcionamiento de las versiones 3 y anteriores. Así que he creado los paquetes empleando las instrucciones de su wiki.
- No hay ejemplos de configuración. Ninguno. Punto. Hay que recurrir a blogs personales y foros de correo que otros pioneros han creado antes.
- La configuración vía web es demasiado cruda. En la práctica es una configuración escrita en Perl y hay cosas que encajan a golpes.
Así que esta mañana estoy con ello. Supongo que en cuanto vea que el funcionamiento merece la pena escribiré más sobre ello. Si no, será otra cosa más que recordar mientras curo las heridas.
Yo sigo creyendo que es un error confiar en edificios de software complejos, llenos de capas y con configuraciones complejas. Como siempre, porque sabes que ocurrirá, el día que tengas que restaurar una copia con toda la prisa del mundo montar el belén entero será un horror.
La solución a los backups existe desde que éramos niños: tar y cron. Ninguna red por enrevesada que sea tiene una estructura que no sea salvable con esas herramientas.
Si además quieres olvidarte de los problemas de los backups en remoto y puedes gastar dinero, usa tarsnap. Es un servicio de pago pero de precio razonable. La herramienta tiene el interfaz del tar, así que no hay que aprender mierdas nuevas. Cuando hace los backups se curra una «deduplication» y solo transfiere y contabiliza lo que realmente ha cambiado. Los datos se almacenan cifrados allí, y es cifrado de verdad, comprobado por criptógrafos de verdad. No es software libre (no puedes hacer tu fork) pero se distribuye con todos los fuentes del software cliente por si quieres analizar lo que hace (no quieres). Hay paquetes .deb para todas las distribuciones y es actualizable con apt.
Pero si pasas de pagar la solución es tar y cron. Para los backups remotos cifra los archivos y súbelos a las cientos de «nubes» (Drive, Dropbox, OneDrive…) que hay que no cuestan dinero. Un programa razonable de cifrado hará imposible que estas empresas miren lo que has subido (porque sabes que lo hacen). La única razón para no hacer cosas de estas es que tus datos sean ingentes (y aún así con una política razonable de archivado por tamaños o timestamps se puede hacer).
No necesitas un interfaz web para comprobar qué se ha copiado y qué no ni ningún otro fantasma que te muestre logs que supuestamente han ocurrido: necesitas restaurar los backups que acabas de hacer. Reserva un día tranquilo y ponte en modo «lo he perdido todo y tengo que restaurar desde cero todo el sistema». Si es necesario, usa una virtualización, que ahora salen gratis y funcionan bien.
Si estoy completamente de acuerdo contigo. En mi caso tengo https://rsync.net y estoy contento. Y el programa BackupPC, al final, está usando rsync y cron a fin de cuentas. No hace nada más excepto la deduplicación, que se agradece un montón. En la empresa ahora mismo hay casi 3 teras de información a salvar de la que podríamos prescindir en casi dos y medio. Con la deduplicación se queda en 400Gb.
Pero lo imprescindible es que ellos puedan comprobar que las copias están hechas. Y lo fácil que puede ser recuperarlos. Es la sensación de seguridad más que la propia seguridad.
Y eso sin tener en cuenta que todas las copias están orientadas a archivos, no a servicios. Salvar un programa que emplee una pila LAMP, por ejemplo, y recuperarlo tras una caída tiene muy poco de sencillo con el enfoque de copias de ahora.
Gracias por tus consejos, Ángel, siempre bienvenido. :-)
PD: ¿ el editor de comentarios siempre ha sido tan cutre ? Tengo que mirarlo