¡Esta es la forma! La evolución de las copias de seguridad de Timeweb: de rsync a ZFS

Intentamos describir brevemente el camino que el equipo de Timeweb ha recorrido durante 10 años: desde rsync, LVM y DRBD hasta ZFS. Este artículo será útil para quienes se dedican a la infraestructura escalable de servidores, planean hacer copias de seguridad y se preocupan por el buen funcionamiento de los sistemas.



imagen



Vamos a hablar acerca de:



  • rsync (sincronización remota)
  • DRBD (dispositivo de bloque replicado distribuido)
  • respaldos incrementales para DRBD usando LVM
  • DRBD + ThinLVM
  • ZFS (Zettabyte File System)


rsync . .



rsync (sincronización remota) no se trata de copias de seguridad en absoluto, estrictamente hablando. Es un programa que le permite sincronizar archivos y directorios en dos ubicaciones mientras minimiza el tráfico. La sincronización se puede realizar tanto para carpetas locales como para servidores remotos.



Rsync se usa a menudo para copias de seguridad. Usamos esta utilidad cuando los sitios eran más simples y había muchos menos clientes.



Rsync hizo un buen trabajo, pero el mayor problema aquí es la velocidad. El programa es muy lento, carga mucho el sistema. Y con el aumento de datos, comienza a funcionar aún más.



Rsync se puede utilizar como tecnología de respaldo, pero para cantidades muy pequeñas de datos.



LVM (administrador de volumen lógico) - administrador de volumen lógico



Por supuesto, queríamos hacer copias de seguridad más rápido con menos carga, así que decidimos probar LVM. LVM permite instantáneas incluso usando la ext 4. De esta manera podríamos hacer copias de seguridad usando una instantánea LVM.



No usamos esta tecnología por mucho tiempo. Aunque la copia de seguridad era más rápida que rsync, siempre estaba llena. Solo queríamos copiar los cambios, así que cambiamos a DRBD.



DRBD



DRBD le permite sincronizar datos de un servidor a otro. Además, solo se sincronizan los cambios, no todos los datos. ¡Esto acelera el proceso considerablemente!



Y en el costado de la tienda, podríamos usar LVM y tomar instantáneas. Este sistema existe desde hace mucho tiempo y ahora existe en algunos de los servidores que aún no hemos tenido tiempo de transferir al nuevo sistema.



imagen



Sin embargo, incluso con este método, sigue existiendo un inconveniente. DRBD carga mucho el subsistema de disco durante la sincronización ... Esto significa que el servidor funcionará más lento. Como resultado, la copia de seguridad interfirió con el trabajo de los servicios principales, es decir, los sitios de los usuarios. Incluso intentamos hacer copias de seguridad por la noche, pero a veces simplemente no tenían tiempo para completarlas durante la noche. Tuve que maniobrar, respaldar alternativamente. Por ejemplo, hoy una parte de los servidores está funcionando, luego otra. Distribuimos copias de seguridad en un patrón de tablero de ajedrez.



DRBD, además, depende en gran medida de la velocidad de la red y afecta el rendimiento del servidor desde el cual y al que se realiza la copia de seguridad. ¡Es necesario buscar una nueva solución!



LVM delgado



En este punto, la empresa estableció una tarea para realizar copias de seguridad de 30 días y decidimos cambiar a thinLVM. ¡Esto no solucionó el problema principal! Ni siquiera esperábamos que se requiriera un rendimiento tan alto del sistema de archivos para admitir instantáneas delgadas. Esta experiencia fue completamente infructuosa, y nos dimos por vencidos en favor de instantáneas LVM gruesas y regulares.



Las ThinLVM en realidad no fueron diseñadas para nuestro propósito. Originalmente diseñado para computadoras portátiles y cámaras pequeñas, pero no para alojamiento.



Continuando con la búsqueda ...



Se decidió probar ZFS.



ZFS



ZFS es un sistema de archivos decente que tiene muchas ventajas integradas. Lo que se logra con ext 4 instalando en LVM, conectando un dispositivo DRBD, luego con ZFS este es el valor predeterminado. El sistema de archivos en sí es muy confiable. También debemos mencionar la función Copy-on-write, esta tecnología le permite manejar los datos con mucho cuidado.



ZFS le permite realizar instantáneas que se pueden copiar a una tienda, así como automatizar copias de seguridad. ¡No hay necesidad de inventar nada!



La migración a ZFS fue muy cuidadosa. Primero, creamos un stand donde simplemente probamos durante varios meses. En particular, intentamos reproducir problemas con el equipo, la fuente de alimentación, la red, la capacidad del disco. A través de pruebas rigurosas, pudimos encontrar cuellos de botella.



Un tema delicado para ZFS es la capacidad del disco. Pudimos resolver este problema reservando espacio vacío. Cuando el disco esté lleno, se tomarán las medidas necesarias para descargar el servidor y limpiar el espacio.



Después de las pruebas, comenzamos gradualmente a introducir nuevos servidores, transferir servidores antiguos a ZFS. ¡No más problemas con las copias de seguridad! Puede realizar copias de seguridad de 30 o 60 días, incluso si hace copias de seguridad cada hora. En cualquier caso, el servidor no experimentará cargas excesivas.



Recopiló todos los datos de las tablas siguientes para comparar las copias de seguridad que utilizan diversas tecnologías.



imagen



imagen



imagen



imagen



¿Qué pasó después?



Hay planes para actualizar ZFS a la versión 2 de OpenZFS 2.0.0. en 2021. Estamos preparando una transición utilizando todos los chips que se anunciaron con el lanzamiento a principios de diciembre.



¡Cómo es esto!



¡Este es el camino que hemos elegido para nosotros! ¿Estás resolviendo problemas similares? ¡Estaremos encantados de compartir tu experiencia en los comentarios! Esperamos que el artículo haya resultado útil y, si de repente también se enfrenta a la tarea de realizar copias de seguridad utilizando las utilidades integradas en Linux, nuestra historia le ayudará a encontrar una solución adecuada.



All Articles