GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cómo hacer una copia de seguridad a gran escala de Gitlab?

Solución 1:

Revisaría lo que está respaldando y posiblemente usaría un enfoque de "múltiples rutas". Por ejemplo, puede hacer una copia de seguridad de los repositorios de Git ejecutando constantemente las extracciones de Git en servidores de copia de seguridad. Eso copiaría solo la diferencia y te dejaría con una segunda copia de todos los repositorios de Git. Presumiblemente, podría detectar nuevos repositorios con la API.

Y use los procedimientos de respaldo "incorporados" para respaldar los problemas, etc. Dudo que los 3 TB provengan de esta parte, por lo que podría hacer respaldos muy a menudo a un costo muy bajo. También puede configurar la base de datos PostgreSQL con un modo de espera tibio con replicación.

Posiblemente, sus 3 TB provengan de imágenes de contenedor en el registro de Docker. ¿Necesitas hacer una copia de seguridad de esos? Si es así, entonces puede haber un mejor enfoque solo para eso.

Básicamente, recomendaría realmente mirar qué es lo que compone su copia de seguridad y hacer una copia de seguridad de los datos en varias partes.

Incluso la herramienta de respaldo de GitLab tiene opciones para incluir/excluir ciertas partes del sistema, como Docker Registry.

Solución 2:

Para tan poco tiempo entre copias de seguridad (1h), su mejor opción es confiar en la instantánea a nivel del sistema de archivos y send/recv apoyo.

Si usar ZoL no es un problema en su entorno, le recomiendo encarecidamente que lo use. ZFS es un sistema de archivos muy robusto y realmente le gustarán todos los extras (p. ej., compresión) que ofrece. Cuando se combina con sanoid/syncoid , puede proporcionar una estrategia de copia de seguridad muy sólida. La principal desventaja es que no está incluido en el núcleo principal, por lo que debe instalarlo/actualizarlo por separado.

Alternativamente, si realmente necesita restringirse a cosas incluidas en la línea principal, puede usar BTRFS. Pero asegúrese de comprender sus (muchos) inconvenientes y pita.

Finalmente, una solución alternativa es usar lvmthin para realizar copias de seguridad periódicas (p. ej., con snapper ), apoyándose en herramientas de terceros (p. ej.:bdsync , blocksync , etc.) para copiar/enviar deltas solamente.

Un enfoque diferente sería tener dos máquinas replicadas (a través de DRBD ) donde toma instantáneas independientes a través de lvmthin .


Linux
  1. Cómo GNOME usa Git

  2. Cómo crear una copia de seguridad

  3. ¿Cómo tener un módulo Pam de respaldo?

  4. Cómo hacer una copia de seguridad y restaurar la base de datos en PostgreSQL

  5. ¿Cómo hacer una copia de seguridad de los archivos crontab -e?

Cómo instalar Gitlab en Debian 8

Cómo instalar Gitlab en Debian 11

Cómo instalar Gitlab en Centos 7

¿Cómo instalar Gitlab en Debian 10?

Cómo configurar GitLab en CentOS 8

Cómo instalar GitLab CE en Oracle Linux 8