sql >> Base de Datos >  >> NoSQL >> MongoDB

Cómo hacer una copia de seguridad de su base de datos Open edX MongoDB

Open edX es un proyecto de código abierto para el aprendizaje en línea desarrollado por el equipo de MIT y Harvard. Es una aplicación basada en la web con una gran cantidad de componentes, como orientación para los estudiantes, creación de cursos, entrega de cursos y administración de contenido.

Open edX está construido en Python y usa Django como marco web. Utiliza MongoDB como base de datos. Al construir y configurar un entorno Open edX, uno debe pensar en el tiempo de actividad del servicio porque la plataforma es ampliamente utilizada por el estudiante y el aprendiz como una plataforma abierta.

La alta disponibilidad es imprescindible para las bases de datos MongoDB, además del servidor de aplicaciones también. Para la recuperación ante desastres, una buena estrategia de respaldo es clave para que sepa que puede restaurar los datos si algo sale realmente mal.

En este blog, revisaremos cómo hacer una copia de seguridad de su base de datos Open edX MongoDB.

Preparación del almacenamiento de copia de seguridad

Lo primero que debemos hacer es preparar el almacenamiento para la copia de seguridad de MongoDB. Puede organizar las copias de seguridad en la misma infraestructura que los servicios de Open edX y luego archivarlas fuera del sitio. Puede usar la red de área de almacenamiento (SAN) o el almacenamiento conectado a la red donde está montado en uno de los servidores MongoDB. AWS proporciona un servicio de almacenamiento simple llamado S3 para archivar sus copias de seguridad, mientras que Google Cloud Platform tiene almacenamiento en la nube.

Es un servicio bajo demanda y el modelo de precios se basa en el tamaño de GiB de su copia de seguridad. Por seguridad, al menos puede colocar la copia de seguridad de su base de datos Open edX en 2 áreas diferentes; que está en sus instalaciones y en la nube.

Copia de seguridad manual para MongoDB

Por lo general, la copia de seguridad de las bases de datos MongoDB utiliza la utilidad mongodump que se incluye cuando instala el servidor MongoDB. Puede realizar una copia de seguridad en uno de los servidores MongoDB, simplemente ejecute mongodump como se muestra a continuación:

$ mongodump --db edxapp --out /backups/open-edx/`date +"%m-%d-%y"`

2021-01-11T11:23:42.541-0500    writing edxapp.module to /backups/open-edx/01-11-21/edxapp/module.bson

2021-01-11T11:23:42.878-0500    writing edxapp.module metadata to /backups/open-edx/01-11-21/newdb/module.metadata.json

2021-01-11T11:23:42.923-0500    done dumping edxapp.module (25359 documents)

2021-01-11T11:23:42.945-0500    writing newdb.system.indexes to /backups/open-edx/01-11-21/edxapp/system.indexes.bson

……

Creará una copia de seguridad en el host MongoDB, puede tener un script para mover los archivos de copia de seguridad a otro almacenamiento.

Copia de seguridad de MongoDB para Open edX usando ClusterControl

ClusterControl admite la copia de seguridad de MongoDB para su plataforma Open edX. Es compatible con mongodump y acabamos de agregar soporte para un nuevo método de respaldo llamado PBM (Percona Backup for MongoDB), que sería más apropiado para los clústeres de MongoDB fragmentados. Hacer una copia de seguridad usando mongodump en ClusterControl es muy fácil usando un asistente basado en GUI. Elija la pestaña Copia de seguridad y luego Crear copia de seguridad. Hay dos opciones que puede elegir, puede crear una copia de seguridad inmediatamente o puede programar la copia de seguridad.

Y luego haga clic en Continuar:

Elija mongodump como método de respaldo y luego escriba el directorio de ubicación donde quieres poner la copia de seguridad. En este paso, puede usar una red de área de almacenamiento o almacenamiento conectado a la red que está montado en su servidor MongoDB.

ClusterControl también admite copias de seguridad en la nube, actualmente admitimos Amazon Web Services (AWS), Google Cloud Platform y Microsoft Azure.

También puede habilitar el cifrado para su copia de seguridad, esto es especialmente importante si están archivando en la nube. A continuación, simplemente presione Crear copia de seguridad, se activará un nuevo trabajo para la copia de seguridad como se muestra a continuación:

También puede usar Percona Backup for MongoDB para realizar una copia de seguridad consistente de su MongoDB Replicaset y Sharded Cluster. Simplemente seleccione percona-backup-mongodb como método de copia de seguridad, requiere que instale un agente en cada nodo y que el almacenamiento compartido se monte en cada nodo de MongoDB.