Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /
/ / /

Restaurar un set de réplicas desde una snapshot

Cuando restaures un set de réplicas a partir de una copia de seguridad, Cloud Manager te proporcionará un archivo de restauración para el punto de restauración seleccionado. Para aprender sobre el proceso de restauración, consulta Restore Overview.

La especificación BSON cambió el subtipo por defecto para el tipo de datos binarios BSON (BinData) de 2 a 0. Algunos datos binarios almacenados en una instantánea pueden ser de subtipo BinData 2. La copia de seguridad detecta y convierte automáticamente los datos de la snapshot en el subtipo BinData 2 al subtipo BinData 0. Si el código de tu aplicación espera el subtipo BinData 2, debes actualizar tu código para funcionar con el subtipo BinData 0.

Tip

Las notas sobre la especificación BSON explican los detalles específicos de este cambio.

El archivo de copia de seguridad de restauración incluye un archivo de metadatos llamado restoreInfo.txt. Este archivo recopila las opciones que utilizó la base de datos cuando se tomó la snapshot. La base de datos debe ejecutarse con las opciones mencionadas después de haber sido restaurada. Este archivo contiene:

  • Nombre del grupo

  • Nombre del set de réplicas

  • ID del clúster (si corresponde)

  • snapshot timestamp (como marca de tiempo en UTC)

  • Restaurar marca de tiempo (como marca de tiempo BSON en UTC)

  • Última Oplog aplicada (como un Timestamp BSON en UTC)

  • Versión de MongoDB

  • Tipo de motor de almacenamiento

  • mongod opciones de inicio utilizadas en la base de datos cuando se tomó la snapshot

Todo Las bases de datosFCV deben cumplir con las consideraciones de respaldo adecuadas.

Para realizar restauraciones manuales, debe tener el rol de administrador de Copias de seguridad en Cloud Manager.

Debe asegurarse de que la implementación de MongoDB no reciba solicitudes de clientes durante la restauración. Debe hacer una de las siguientes cosas:

  • Restaura en nuevos sistemas con nuevos hostnames y vuelve a configurar el código de tu aplicación una vez que la nueva implementación esté en funcionamiento, o bien

  • Asegúrese de que la implementación de MongoDB no reciba solicitudes de cliente mientras restaura datos.

Para que Cloud Manager restaure automáticamente la instantánea:

1
  1. Si aún no se muestra, se debe seleccionar la organización que contiene el proyecto deseado en el menú Organizations de la barra de navegación.

  2. Si aún no aparece, selecciona el proyecto deseado en el menú Projects de la barra de navegación.

  3. En la barra lateral, haz clic en Continuous Backup en la sección Database.

    Se muestra la página de copia de seguridad continua.

2
3
4
  1. Elija el punto desde el que desea restaurar su copia de seguridad.

    Tipo de restauración
    Descripción
    Acción

    Snapshot

    Le permite elegir una instantánea almacenada.

    Selecciona una snapshot existente para restaurar.

    Point In Time

    Crea una instantánea personalizada que incluye todas las operaciones hasta, pero sin incluir, la hora seleccionada. Por defecto, Oplog Store almacena 24 horas de datos.

    Por ejemplo, si selecciona 12:00, la última operación en la restauración será 11:59:59 o anterior.

    IMPORTANTE: En FCV,4.0 no se puede realizar una restauración PIT que cubra un período anterior a la última resincronización de la copia de seguridad. Para conocer las condiciones que provocan una resincronización, consulte Resincronizar una copia de seguridad. Esta nota no aplica a FCV 4.2 ni versiones posteriores.

    Seleccione Date y Time.

    Oplog Timestamp

    Crea un snapshot personalizado que incluye todas las operaciones hasta e incluyendo la marca de tiempo Oplog ingresada. La marca de tiempo Oplog contiene dos campos:

    Timestamp

    marca de tiempo en el número de segundos que han transcurrido desde el Unix epoch

    Increment

    Orden de la operación aplicada en ese momento como un valor ordinal de 32 bits.

    Escriba un Oplog Timestamp y Increment.

    Ejecute una query contra local.oplog.rs en su set de réplicas para encontrar la marca de tiempo deseada.

  2. Haga clic en Next.

5
  1. Haga clic en Choose Cluster to Restore to.

  2. Complete los siguientes campos:

    Campo
    Acción

    Project

    Elige un proyecto al que quieras restaurar la snapshot.

    Cluster to Restore to

    Seleccione un clúster al que quiera restaurar el snapshot.

    Cloud Manager debe administrar el conjunto de réplicas de destino.

    ADVERTENCIA: La automatización remueve todos los datos existentes del clúster. Preserva todas las copias de seguridad y las snapshots para el clúster existente.

  1. Haga clic en Restore.

    El Cloud Manager registra la cantidad de espacio de almacenamiento que requiere la restauración.

6

Advertencia

Considerar restauración automática

Este procedimiento implica un gran número de pasos. Algunos de estos pasos tienen graves implicaciones de seguridad. Si no necesita restaurar una implementación que Cloud Manager no gestiona, considere una restauración automatizada.

1
  1. Si aún no se muestra, se debe seleccionar la organización que contiene el proyecto deseado en el menú Organizations de la barra de navegación.

  2. Si aún no aparece, selecciona el proyecto deseado en el menú Projects de la barra de navegación.

  3. En la barra lateral, haz clic en Continuous Backup en la sección Database.

    Se muestra la página de copia de seguridad continua.

2
3
4
  1. Elija el punto desde el que desea restaurar su copia de seguridad.

    Tipo de restauración
    Descripción
    Acción

    Snapshot

    Le permite elegir una instantánea almacenada.

    Selecciona una snapshot existente para restaurar.

    Point In Time

    Crea una instantánea personalizada que incluye todas las operaciones hasta, pero sin incluir, la hora seleccionada. Por defecto, Oplog Store almacena 24 horas de datos.

    Por ejemplo, si selecciona 12:00, la última operación en la restauración será 11:59:59 o anterior.

    IMPORTANTE: En FCV,4.0 no se puede realizar una restauración PIT que cubra un período anterior a la última resincronización de la copia de seguridad. Para conocer las condiciones que provocan una resincronización, consulte Resincronizar una copia de seguridad. Esta nota no aplica a FCV 4.2 ni versiones posteriores.

    Seleccione Date y Time.

    Oplog Timestamp

    Crea un snapshot personalizado que incluye todas las operaciones hasta e incluyendo la marca de tiempo Oplog ingresada. La marca de tiempo Oplog contiene dos campos:

    Timestamp

    marca de tiempo en el número de segundos que han transcurrido desde el Unix epoch

    Increment

    Orden de la operación aplicada en ese momento como un valor ordinal de 32 bits.

    Escriba un Oplog Timestamp y Increment.

    Ejecute una query contra local.oplog.rs en su set de réplicas para encontrar la marca de tiempo deseada.

  2. Haga clic en Next.

5
6
  1. Configura las siguientes opciones de descarga:

    Pull Restore Usage Limit

    Selecciona cuántas veces se puede usar el enlace. Si se selecciona No Limit, el enlace se puede reutilizar hasta que expire.

    Restore Link Expiration (in hours)

    Seleccione la cantidad de horas hasta que el enlace expire. El valor por defecto es 1. El valor máximo es el número de horas hasta que caduque la snapshot seleccionada.

  2. Haga clic en Finalize Request.

  3. Si usas 2FA, Cloud Manager te solicitará tu 2código FA. Ingresa tu 2código FA y haz clic Finalize Request en.

7
  1. Si aún no se muestra, se debe seleccionar la organización que contiene el proyecto deseado en el menú Organizations de la barra de navegación.

  2. Si aún no aparece, selecciona el proyecto deseado en el menú Projects de la barra de navegación.

  3. En la barra lateral, haz clic en Continuous Backup en la sección Database.

    Se muestra la página de copia de seguridad continua.

8

Cloud Manager crea enlaces a la instantánea. De forma predeterminada, estos enlaces están disponibles durante una hora y solo se pueden usar una vez.

Para descargar los snapshots:

  1. Haga clic en Restore History.

  2. Cuando la tarea de restauración se complete, haz clic en (get link) para cada set de réplicas que aparezca.

  3. Haz click:

    • El botón de copiar a la derecha del enlace para copiar el enlace y utilizarlo más tarde, o

    • Download para descargar la instantánea inmediatamente.

9

Antes de intentar restaurar los datos manualmente, quita el set de réplicas de automatización.

Elija la opción Unmanage this item in Ops Managers but continue to monitor.

10

Dependiendo de tu ruta, es posible que debas especificar la ruta a mongosh. ejecutar:

mongosh --port <port> \
--eval "db.getSiblingDB('admin').shutdownServer()"
11

Capacidad de almacenamiento

El hardware del host de destino necesita tener suficiente espacio de almacenamiento libre para almacenar los datos restaurados. Si desea mantener algún dato existente del clúster en este host, asegúrese de que el host tenga suficiente espacio libre para los datos del clúster y los datos restaurados.

Versión de MongoDB

El host de destino en el que se está restaurando y el host de origen desde el cual se está restaurando deben ejecutar la misma versión del MongoDB Server. Para comprobar la versión de MongoDB, ejecuta mongod --version desde una terminal o shell.

Para aprender más, consulta instalación.

12

Antes de mover los archivos de datos de la snapshot al host de destino, verifica si el host de destino contiene archivos existentes y borra todos los archivos excepto el archivo automation-mongod.conf.

Descomprime los archivos de la snapshot y muévelos al host de destino de la siguiente manera:

tar -xvf <backupSnapshot>.tar.gz
mv <backupSnapshot> </path/to/datafiles>
13

Inicia el proceso mongod en modo autónomo como una medida temporal. Esto te permite agregar nuevos parámetros de configuración a la colección system.replset en pasos posteriores.

Utiliza el <ephemeralPort> para el proceso temporal autónomo mongod en todos los pasos de este procedimiento en que se mencione. Este puerto debe diferir de los puertos del host de origen y de destino.

Ejecute el proceso como se indica a continuación. Dependiendo de mongod mongod la ruta, es posible que deba especificar la ruta al binario.

mongod --dbpath </path/to/datafiles> \
--port <ephemeralPort> \

Si está restaurando a partir de una snapshot filtrada por namespace, use la opción --restore.

mongod --dbpath </path/to/datafiles> \
--port <ephemeralPort> \
--restore

Después de que el proceso mongod comience a aceptar conexiones, continuar.

14

Desde el host que ejecuta este mongod proceso, inicie.mongosh Según la ruta, es posible que deba especificar la ruta mongosh a.

Para conectarse al mongod escuchando en localhost en el mismo <ephemeralPort> especificado en el paso anterior, ejecute:

mongosh --port <ephemeralPort>

Después de que mongosh se conecte a mongod, continúa.

15

Para realizar restauraciones manuales, debe tener el rol de administrador de Copias de seguridad en Cloud Manager.

Ejecute los siguientes comandos para eliminar la configuración del conjunto de réplicas anterior y otras recopilaciones relacionadas con la replicación que no sean registros de operaciones.

db.getSiblingDB("local").replset.minvalid.drop()
db.getSiblingDB("local").replset.oplogTruncateAfterPoint.drop()
db.getSiblingDB("local").replset.election.drop()
db.getSiblingDB("local").system.replset.remove({})

Una respuesta exitosa debería verse así:

> db.getSiblingDB("local").replset.minvalid.drop()
true
> db.getSiblingDB("local").replset.oplogTruncateAfterPoint.drop()
true
> db.getSiblingDB("local").replset.election.drop()
true
> db.getSiblingDB("local").system.replset.remove({})
WriteResult({ "nRemoved" : 1 })
16

Inserta el siguiente documento en la colección system.replset de la base de datos local. Cambia las siguientes variables:

  • <replaceMeWithTheReplicaSetName> Al nombre de su conjunto de réplicas. Este nombre no tiene que ser el mismo que el anterior.

  • <host> al host que sirve a este miembro del conjunto de réplicas.

  • <ephemeralPortNewReplicaSet> al puerto efímero para el nuevo set de réplicas. Esto debe ser un puerto diferente del <ephemeralPort> que especificaste en el paso 11 de este procedimiento.

1db.getSiblingDB("local").system.replset.insertOne({
2 "_id" : "<replaceMeWithTheReplicaSetName>",
3 "version" : NumberInt(1),
4 "protocolVersion" : NumberInt(1),
5 "members" : [
6 {
7 "_id" : NumberInt(0),
8 "host" : "<host>:<ephemeralPortNewReplicaSet>"
9 }
10 ],
11 "settings" : {
12
13 }
14})

Una respuesta exitosa debería verse así:

{ "acknowledged" : true, "insertedId" : "<yourReplicaSetName>" }
17

Ejecutes el siguiente comando:

db.getSiblingDB("local").replset.minvalid.insertOne({
"_id" : ObjectId(),
"t" : NumberLong(-1),
"ts" : Timestamp(0,1)
})

Una respuesta exitosa debería verse así:

{ "acknowledged" : true, "insertedId" : ObjectId("<yourObjectId>") }
18

Establece el documento oplogTruncateAfterPoint con los valores proporcionados en el campo Restore Timestamp del archivo restoreInfo.txt.

El campo Restore Timestamp de ese archivo contiene dos valores. En el siguiente ejemplo, el primero es la marca de tiempo y el segundo, el incremento.

1...
2Restore timestamp: (1609947369, 2)
3Last Oplog Applied: Wed Jan 06 15:36:09 GMT 2021 (1609947369, 1)
4MongoDB Version: 4.2.11
5...

El siguiente código de ejemplo utiliza el valor de marca de tiempo y el valor de incremento del ejemplo anterior.

truncateAfterPoint = Timestamp(1609947369,2)
db.getSiblingDB("local").replset.oplogTruncateAfterPoint.insertOne({
"_id": "oplogTruncateAfterPoint",
"oplogTruncateAfterPoint": truncateAfterPoint
})

Una respuesta exitosa debería verse así:

WriteResult({ "nInserted" : 1 })

Nota

Restaurando MongoDB 4.2 Instantáneas usando MongoDB 4.4

Si intenta restaurar una instantánea de MongoDB 4.2 con un mongod ejecutando MongoDB,4.4 su registro de operaciones puede contener documentos innecesarios.

Para solucionar este problema, puede realizar una de las siguientes acciones:

  • Disminuye la marca de tiempo en 1.

  • Restaurar utilizando MongoDB 4.2.

  • Haz que Cloud Manager ejecute una restauración automatizada.

Este problema no aplica a MongoDB 4.4 ni a instantáneas posteriores.

19

Dependiendo de tu ruta, es posible que debas especificar la ruta a mongosh. ejecutar:

mongosh --port <ephemeralPort> \
--eval "db.getSiblingDB('admin').shutdownServer()"
20

Inicie utilizando el siguiente comando, especificando estos mongod parámetros:

  • <bind_ip> al host que sirve a este miembro del set de réplicas que especificaste en el paso 14 de este procedimiento.

  • <port> al <ephemeralPort> que especificaste en el paso 11 de este procedimiento.

El reproduce mongod el Restore timestamp registro de operaciones hasta el.

mongod --dbpath </path/to/datafiles> \
--port <ephemeralPort> \
--bind_ip <host-serving-this-replica-set-member> \
--replSet <replaceMeWithTheReplicaSetName>
21

Dependiendo de tu ruta, es posible que debas especificar la ruta a mongosh. ejecutar:

mongosh --port <ephemeralPort> \
--eval "db.getSiblingDB('admin').shutdownServer()"
22

Este paso es opcional. Ejecutalo si necesitas restauración a un punto específico del tiempo. Si necesitas este paso, complétalo y luego ejecuta los pasos 21 y 22. Si no necesitas este paso, continúa con el paso 23. En este paso, debes descargar y ejecutar la utilidad MongoDB copia de seguridad restauración Utility en la instancia destino del set de réplicas, y luego detener la instancia.

  1. Descargue la utilidad de restauración de copia de seguridad de MongoDB en su host.

    Si cerró el panel de restauración, haga clic en Continuous Backup in Deployment, More, y luego en Download MongoDB Backup Restore Utility.

  2. Inicie una instancia de mongod sin que la autenticación esté habilitada utilizando el directorio de instantáneas extraído como el directorio de datos. Dependiendo de tu trayecto, es posible que necesites especificar la ruta del binario mongod.

    mongod --port <ephemeralPort> \
    --dbpath </path/to/datafiles> \
    --setParameter ttlMonitorEnabled=false

    Advertencia

    La Utilidad de restauración de copia de seguridad de MongoDB no admite la autenticación, por lo que no puede iniciar esta base de datos temporal con autenticación.

  3. Ejecuta la utilidad de restauración de copias de seguridad de MongoDB en tu host de destino. Ejecute una vez para el set de réplicas.

    Importante

    Comando preconfigurado para la utilidad mongodb-copia de seguridad-restauración-util

    Cloud Manager proporciona al mongodb-backup-restore-util las opciones adecuadas para su restauración en el panel de restauración bajo Run Binary with PIT Options.

    Debes copiar el comando mongodb-backup-restore-util proporcionado en Cloud Manager.

    ./mongodb-backup-restore-util --https --host <targetHost> \
    --port <targetPort> \
    --opStart <opLogStartTimeStamp> \
    --opEnd <opLogEndTimeStamp> \
    --logFile <logPath> \
    --apiKey <apiKey> \
    --groupId <groupId> \
    --rsId <rsId> \
    --accessList <database1.collection1, database2, etc.> \
    --denyList <database1.collection1, database2, etc.> \
    --seedReplSetMember \
    --oplogSizeMB <size> \
    --seedTargetPort <port> \
    --ssl \
    --sslCAFile </path/to/ca.pem> \
    --sslPEMKeyFile </path/to/pemkey.pem>
    --sslClientCertificateSubject <distinguishedName> \
    --sslRequireValidServerCertificates <true|false> \
    --sslServerClientCertificate </path/to/client.pem> \
    --sslServerClientCertificatePassword <password> \
    --sslRequireValidMMSBackupServerCertificate <true|false> \
    --sslTrustedMMSBackupServerCertificate </path/to/mms-certs.pem> \
    --httpProxy <proxyURL>

    El comando mongodb-backup-restore-util utiliza las siguientes opciones:

    Opción
    Necesidad
    Descripción

    --host

    Requerido

    Proporcione el nombre de host, FQDN, la dirección IP IPv4 o la dirección IP IPv6 para el host que sirve a mongod al que se debe aplicar el oplog. Si copiaste el mongodb-backup-restore-util comando proporcionado en el Cloud Manager, este campo está preconfigurado.

    --port

    Requerido

    Indique el puerto del host que sirve al mongod al que se debe aplicar el oplog.

    --opStart

    Requerido

    Proporciona la marca de tiempo BSON para la primera entrada de oplog que deseas incluir en la restauración. Esta información aparece en la entrada "Último Oplog aplicado" en el archivo restoreInfo.txt proporcionado con el snapshot descargado.

    Este valor debe ser menor o igual al valor --opEnd.

    --opEnd

    Requerido

    Proporcione la marca de tiempo BSON de la última oplog que desee incluir en la restauración.

    Este valor no puede ser mayor que el final del opLog.

    --logFile

    Opcional

    Proporcione una ruta, incluido el nombre del archivo, donde se escribe el registro MBRU.

    --oplogSourceAddr

    Requerido

    Proporcione el URL al endpoint del recurso del Cloud Manager.

    --apiKey

    Requerido

    Proporcione su clave API del agentede Cloud Manager.

    --groupId

    Requerido

    Proporcione el ID del grupo.

    --rsId

    Requerido

    Proporcione el ID del set de réplicas.

    --accessList

    Opcional

    Proporcione una lista de bases de datos y/o colecciones a las que quiera limitar la restauración.

    --denyList

    Opcional

    Proporcione una lista de bases de datos y/o colecciones que desea excluir de la restauración.

    --seedReplSetMember

    Opcional

    Utilice esto si necesita que un miembro del conjunto de réplicas vuelva a crear la colección oplog y la inicialice con la marca de tiempo correcta.

    Requiere --oplogSizeMB y --seedTargetPort.

    --oplogSizeMB

    Condicional

    Proporcione el tamaño de oplog en MB.

    Requerido si --seedReplSetMember está configurado.

    --seedTargetPort

    Condicional

    Proporciona el puerto para el set de réplicas primario. Esto puede diferir del puerto efímero utilizado.

    Requerido si --seedReplSetMember está configurado.

    --ssl

    Condicional

    Úsalo si necesitas TLS/SSL para aplicar el oplog al mongod.

    Requiere --sslCAFile y --sslPEMKeyFile.

    --sslCAFile

    Condicional

    Proporcione la ruta al archivo de la Autoridad Certificadora.

    Requerido si --ssl está configurado.

    --sslPEMKeyFile

    Condicional

    Proporciona la ruta al archivo del certificado PEM.

    Requerido si --ssl está configurado.

    --sslPEMKeyFilePwd

    Condicional

    Proporcione la contraseña para el archivo de certificado PEM especificado --sslPEMKeyFile en.

    Obligatorio si --ssl está configurado y el archivo de clave PEM está cifrado.

    --sslClientCertificateSubject

    Proporcione el Sujeto del Certificado de Cliente o Nombre Distinguido (DN) para el proceso de destino de MongoDB.

    --sslRequireValidServerCertificates

    Opcional

    Establezca una bandera que indique si la herramienta debe validar los certificados que presenta el proceso objetivo de MongoDB.

    --sslServerClientCertificate

    Opcional

    Proporcione la ruta absoluta al archivo del certificado de cliente que se utilizará para conectarse al host de Cloud Manager.

    --sslServerClientCertificatePassword

    Condicional

    Proporcione la ruta absoluta al archivo de contraseña del certificado de cliente que se va a utilizar para conectarse al host de Cloud Manager.

    Obligatorio si --sslServerClientCertificate está configurado y ese certificado está cifrado.

    --sslRequireValidMMSBackupServerCertificate

    Opcional

    Establecer una bandera que indique si se requieren certificados válidos al contactar con el host de Cloud Manager. El valor por defecto es true.

    --sslTrustedMMSBackupServerCertificate

    Opcional

    Proporcione la ruta absoluta a los certificados de la Autoridad Certificadora confiable en formato PEM para el host de Cloud Manager. Si no se proporciona esta bandera, se utiliza la Autoridad de certificación del sistema.

    --httpProxy

    Opcional

    Proporcione la URL de un HTTP servidor proxy que la herramienta pueda usar.

    significa que si copiaste el comando mongodb-backup-restore-util proporcionado en Cloud Manager, este campo está preconfigurado.

  4. Detén el mongod en la instancia. Dependiendo de tu trayecto, puede que necesites especificar la ruta a mongosh. ejecutar:

    mongosh --port <ephemeralPort> \
    --eval "db.getSiblingDB('admin').shutdownServer()"
23

Este paso es necesario sólo si se ha ejecutado el paso 20. Si no necesitabas ejecutar el paso 20, entonces continúa con el paso 23. Inicie el mongod usando el siguiente comando. El mongod reproduce el oplog hasta el Restore timestamp. Dependiendo de la ruta, es posible que deba especificar la ruta al binario de mongod.

mongod --dbpath </path/to/datafiles> \
--port <ephemeralPort> \
--replSet <replaceMeWithTheReplicaSetName>

Una vez que completes este paso, el proceso real de restauración se completará. En los siguientes pasos, restaure la configuración del set de réplicas y vuelva a importarlo.

24

Este paso solo es necesario si ejecutó el paso 20. Si no necesitó ejecutar el paso 20, entonces proceda al paso 23.

Dependiendo de tu ruta, es posible que debas especificar la ruta a mongosh. ejecutar:

mongosh--port <ephemeralPort> \
--eval "db.getSiblingDB('admin').shutdownServer()"
25

Inicie el proceso como instancia independiente con el siguiente comando.mongod Para,<port> utilice el puerto real en el que se ejecutará este nodo del conjunto de réplicas. Según la ruta, es posible que deba especificar la ruta al mongod binario.

mongod --dbpath </path/to/datafiles> \
--port <port>

Después de que el proceso mongod comience a aceptar conexiones, continuar.

26

Ejecuta el siguiente comando:

mongosh --port <port> \
--eval db.getSiblingDB("local").system.replset.remove({})
27

Dependiendo de tu ruta, es posible que debas especificar la ruta a mongosh. ejecutar:

mongosh --port <port> \
--eval "db.getSiblingDB('admin').shutdownServer()"
28
29

En este punto, los archivos de datos en el conjunto de réplicas están en un estado consistente, pero la configuración del conjunto de réplicas debe actualizarse para que cada nodo esté al tanto de los demás.

Ejecuta el siguiente comando:

sudo -u mongod <path/to/target_mongod_binary> -f /path/to/datafiles/automation-mongod.conf

El siguiente ejemplo reinicia todos los nodos con la versión 4.4.12 enterprise con la ruta de datos /data6/node3:

sudo -u mongod /var/lib/mongodb-mms-automation/mongodb-linux-x86_64-4.4.12-ent/bin/mongod -f /data6/node3/automation-mongod.conf
30

Inicie sesión en uno de los nodos y ejecute los siguientes comandos:

rs.initiate()
rs.add( { host: "<host2>:<port>" } )
rs.add( { host: "<host3>:<port>" } )
31
  1. Si aún no se muestra, seleccione la organización que contiene su proyecto deseado en el menú Organizations de la barra de navegación.

  2. Si aún no aparece, selecciona el proyecto deseado en el menú Projects de la barra de navegación.

  3. En la barra lateral, haz clic en Processes en la sección Database.

Se muestra la página Procesos.

32

Para gestionar el set de réplicas con automatización nuevamente, importa el set de réplicas de regreso en Cloud Manager.

Haz clic en Add, selecciona Existing MongoDB Deployment y procede a añadir Automation nuevamente a tu clúster.

Para que Cloud Manager restaure automáticamente la instantánea:

1
  1. Si aún no se muestra, se debe seleccionar la organización que contiene el proyecto deseado en el menú Organizations de la barra de navegación.

  2. Si aún no aparece, selecciona el proyecto deseado en el menú Projects de la barra de navegación.

  3. En la barra lateral, haz clic en Continuous Backup en la sección Database.

    Se muestra la página de copia de seguridad continua.

2
3
4
  1. Elija el punto desde el que desea restaurar su copia de seguridad.

    Tipo de restauración
    Descripción
    Acción

    Snapshot

    Le permite elegir una instantánea almacenada.

    Selecciona una snapshot existente para restaurar.

    Point In Time

    Crea una instantánea personalizada que incluye todas las operaciones hasta, pero sin incluir, la hora seleccionada. Por defecto, Oplog Store almacena 24 horas de datos.

    Por ejemplo, si selecciona 12:00, la última operación en la restauración será 11:59:59 o anterior.

    IMPORTANTE: En FCV,4.0 no se puede realizar una restauración PIT que cubra un período anterior a la última resincronización de la copia de seguridad. Para conocer las condiciones que provocan una resincronización, consulte Resincronizar una copia de seguridad. Esta nota no aplica a FCV 4.2 ni versiones posteriores.

    Seleccione Date y Time.

    Oplog Timestamp

    Crea un snapshot personalizado que incluye todas las operaciones hasta e incluyendo la marca de tiempo Oplog ingresada. La marca de tiempo Oplog contiene dos campos:

    Timestamp

    marca de tiempo en el número de segundos que han transcurrido desde el Unix epoch

    Increment

    Orden de la operación aplicada en ese momento como un valor ordinal de 32 bits.

    Escriba un Oplog Timestamp y Increment.

    Ejecute una query contra local.oplog.rs en su set de réplicas para encontrar la marca de tiempo deseada.

  2. Haga clic en Next.

Para encontrar la última entrada de Oplog, ejecute la siguiente consulta mongosh en:

db.getSiblingDB('local').oplog.rs.find().sort({$natural:-1}).limit(1).pretty()

Un resultado exitoso debe verse así:

{
"ts": Timestamp(1537559320, 1),
"h": NumberLong("-2447431566377702740"),
"v": 2,
"op": "n",
"ns": "",
"wall": ISODate("2018-09-21T19:48:40.708Z"),
"o": {
"msg": "initiating set"
}
}

Las partes del valor ts corresponden a los valores que necesita para los cuadros Timestamp y Increment.

Nota

Para traducir el tiempo de Unix epoch a una marca de tiempo legible para humanos, intente usar una herramienta como Convertidor de época

MongoDB no respalda este servicio. Su referencia está destinada únicamente a fines informativos.

5
  1. Haga clic en Choose Cluster to Restore to.

  2. Complete los siguientes campos:

    Campo
    Acción

    Project

    Elige un proyecto al que quieras restaurar la snapshot.

    Cluster to Restore to

    Seleccione un clúster al que quiera restaurar el snapshot.

    Cloud Manager debe administrar el conjunto de réplicas de destino.

    ADVERTENCIA: La automatización remueve todos los datos existentes del clúster. Preserva todas las copias de seguridad y las snapshots para el clúster existente.

  1. Haga clic en Restore.

    El Cloud Manager registra la cantidad de espacio de almacenamiento que requiere la restauración.

6
1
  1. Si aún no se muestra, se debe seleccionar la organización que contiene el proyecto deseado en el menú Organizations de la barra de navegación.

  2. Si aún no aparece, selecciona el proyecto deseado en el menú Projects de la barra de navegación.

  3. En la barra lateral, haz clic en Continuous Backup en la sección Database.

    Se muestra la página de copia de seguridad continua.

2
3
4
  1. Elija el punto desde el que desea restaurar su copia de seguridad.

    Tipo de restauración
    Descripción
    Acción

    Snapshot

    Le permite elegir una instantánea almacenada.

    Selecciona una snapshot existente para restaurar.

    Point In Time

    Crea una instantánea personalizada que incluye todas las operaciones hasta, pero sin incluir, la hora seleccionada. Por defecto, Oplog Store almacena 24 horas de datos.

    Por ejemplo, si selecciona 12:00, la última operación en la restauración será 11:59:59 o anterior.

    IMPORTANTE: En FCV,4.0 no se puede realizar una restauración PIT que cubra un período anterior a la última resincronización de la copia de seguridad. Para conocer las condiciones que provocan una resincronización, consulte Resincronizar una copia de seguridad. Esta nota no aplica a FCV 4.2 ni versiones posteriores.

    Seleccione Date y Time.

    Oplog Timestamp

    Crea un snapshot personalizado que incluye todas las operaciones hasta e incluyendo la marca de tiempo Oplog ingresada. La marca de tiempo Oplog contiene dos campos:

    Timestamp

    marca de tiempo en el número de segundos que han transcurrido desde el Unix epoch

    Increment

    Orden de la operación aplicada en ese momento como un valor ordinal de 32 bits.

    Escriba un Oplog Timestamp y Increment.

    Ejecute una query contra local.oplog.rs en su set de réplicas para encontrar la marca de tiempo deseada.

  2. Haga clic en Next.

Para encontrar la última entrada de Oplog, ejecute la siguiente consulta mongosh en:

db.getSiblingDB('local').oplog.rs.find().sort({$natural:-1}).limit(1).pretty()

Un resultado exitoso debe verse así:

{
"ts": Timestamp(1537559320, 1),
"h": NumberLong("-2447431566377702740"),
"v": 2,
"op": "n",
"ns": "",
"wall": ISODate("2018-09-21T19:48:40.708Z"),
"o": {
"msg": "initiating set"
}
}

Las partes del valor ts corresponden a los valores que necesita para los cuadros Timestamp y Increment.

Nota

Para traducir el tiempo de Unix epoch a una marca de tiempo legible para humanos, intente usar una herramienta como Convertidor de época

MongoDB no respalda este servicio. Su referencia está destinada únicamente a fines informativos.

5
6
  1. Configura las siguientes opciones de descarga:

    Pull Restore Usage Limit

    Selecciona cuántas veces se puede usar el enlace. Si se selecciona No Limit, el enlace se puede reutilizar hasta que expire.

    Restore Link Expiration (in hours)

    Seleccione la cantidad de horas hasta que el enlace expire. El valor por defecto es 1. El valor máximo es el número de horas hasta que caduque la snapshot seleccionada.

  2. Haga clic en Finalize Request.

  3. Si usas 2FA, Cloud Manager te solicitará tu 2código FA. Ingresa tu 2código FA y haz clic Finalize Request en.

7
  1. Si aún no se muestra, se debe seleccionar la organización que contiene el proyecto deseado en el menú Organizations de la barra de navegación.

  2. Si aún no aparece, selecciona el proyecto deseado en el menú Projects de la barra de navegación.

  3. En la barra lateral, haz clic en Continuous Backup en la sección Database.

    Se muestra la página de copia de seguridad continua.

8

Cloud Manager crea enlaces a la instantánea. De forma predeterminada, estos enlaces están disponibles durante una hora y solo se pueden usar una vez.

Para descargar los snapshots:

  1. Haga clic en Restore History.

  2. Cuando se complete la tarea de restauración, haz clic en (get link) para cada set de réplicas que aparezca.

  3. Haz click:

    • El botón de copiar a la derecha del enlace para copiar el enlace y utilizarlo más tarde, o

    • Download para descargar la instantánea inmediatamente.

Importante

Paso extra para restauración a un punto específico del tiempo

Para restauraciones en un punto en el tiempo y con marca de tiempo del oplog, se muestran instrucciones adicionales. El paso final muestra el comando completo que debes ejecutar usando el MBRU. Incluye todas las opciones necesarias para garantizar una restauración completa.

Selecciona y copia el comando mongodb-backup-restore-util proporcionado en Run Binary with PIT Options.

9

Ejemplo

tar -xvf <backupSnapshot>.tar.gz
mv <backupSnapshot> <temp-database-path>
10
  1. Descargue la utilidad de restauración de copia de seguridad de MongoDB en su host.

    Nota

    Si cerró el panel de restauración:

    1. En MongoDB Cloud Manager, ve a la página Continuous Backup de tu proyecto.

      1. Si aún no se muestra, seleccione la organización que contiene su proyecto deseado en el menú Organizations de la barra de navegación.

      2. Si aún no aparece, selecciona el proyecto deseado en el menú Projects de la barra de navegación.

      3. En la barra lateral, haz clic en Continuous Backup en la sección Database.

      Se muestra la página de copia de seguridad continua.

    2. Haz clic en More y luego en Download MongoDB Backup Restore Utility.

  2. Inicie una instancia sin autenticación habilitada utilizando el directorio de instantáneas extraído como directorio de mongod datos.

    Ejemplo

    mongod --port <port number> \
    --dbpath <temp-database-path> \
    --setParameter ttlMonitorEnabled=false

    Advertencia

    La Utilidad de restauración de copia de seguridad de MongoDB no admite la autenticación, por lo que no puede iniciar esta base de datos temporal con autenticación.

  3. Ejecute el MongoDB Copia de seguridad Restauración Utility en su host de destino. Ejecutar una vez para el set de réplicas.

    Importante

    Comando preconfigurado para la utilidad mongodb-copia de seguridad-restauración-util

    Cloud Manager proporciona al mongodb-backup-restore-util las opciones adecuadas para su restauración en el panel de restauración bajo Run Binary with PIT Options.

    Debes copiar el comando mongodb-backup-restore-util proporcionado en Cloud Manager.

    ./mongodb-backup-restore-util --https --host <targetHost> \
    --port <targetPort> \
    --opStart <opLogStartTimeStamp> \
    --opEnd <opLogEndTimeStamp> \
    --logFile <logPath> \
    --apiKey <apiKey> \
    --groupId <groupId> \
    --rsId <rsId> \
    --accessList <database1.collection1, database2, etc.> \
    --denyList <database1.collection1, database2, etc.> \
    --seedReplSetMember \
    --oplogSizeMB <size> \
    --seedTargetPort <port> \
    --ssl \
    --sslCAFile </path/to/ca.pem> \
    --sslPEMKeyFile </path/to/pemkey.pem>
    --sslClientCertificateSubject <distinguishedName> \
    --sslRequireValidServerCertificates <true|false> \
    --sslServerClientCertificate </path/to/client.pem> \
    --sslServerClientCertificatePassword <password> \
    --sslRequireValidMMSBackupServerCertificate <true|false> \
    --sslTrustedMMSBackupServerCertificate </path/to/mms-certs.pem> \
    --httpProxy <proxyURL>

    El comando mongodb-backup-restore-util utiliza las siguientes opciones:

    Opción
    Necesidad
    Descripción

    --host

    Requerido

    Proporcione el nombre de host, FQDN, la dirección IP IPv4 o la dirección IP IPv6 para el host que sirve a mongod al que se debe aplicar el oplog. Si copiaste el mongodb-backup-restore-util comando proporcionado en el Cloud Manager, este campo está preconfigurado.

    --port

    Requerido

    Indique el puerto del host que sirve al mongod al que se debe aplicar el oplog.

    --opStart

    Requerido

    Proporciona la marca de tiempo BSON para la primera entrada de oplog que deseas incluir en la restauración. Esta información aparece en la entrada "Último Oplog aplicado" en el archivo restoreInfo.txt proporcionado con el snapshot descargado.

    Este valor debe ser menor o igual al valor --opEnd.

    --opEnd

    Requerido

    Proporcione la marca de tiempo BSON de la última oplog que desee incluir en la restauración.

    Este valor no puede ser mayor que el final del opLog.

    --logFile

    Opcional

    Proporcione una ruta, incluido el nombre del archivo, donde se escribe el registro MBRU.

    --oplogSourceAddr

    Requerido

    Proporcione el URL al endpoint del recurso del Cloud Manager.

    --apiKey

    Requerido

    Proporcione su clave API del agentede Cloud Manager.

    --groupId

    Requerido

    Proporcione el ID del grupo.

    --rsId

    Requerido

    Proporcione el ID del set de réplicas.

    --accessList

    Opcional

    Proporcione una lista de bases de datos y/o colecciones a las que quiera limitar la restauración.

    --denyList

    Opcional

    Proporcione una lista de bases de datos y/o colecciones que desea excluir de la restauración.

    --seedReplSetMember

    Opcional

    Utilice esto si necesita que un miembro del conjunto de réplicas vuelva a crear la colección oplog y la inicialice con la marca de tiempo correcta.

    Requiere --oplogSizeMB y --seedTargetPort.

    --oplogSizeMB

    Condicional

    Proporcione el tamaño de oplog en MB.

    Requerido si --seedReplSetMember está configurado.

    --seedTargetPort

    Condicional

    Proporciona el puerto para el set de réplicas primario. Esto puede diferir del puerto efímero utilizado.

    Requerido si --seedReplSetMember está configurado.

    --ssl

    Condicional

    Úsalo si necesitas TLS/SSL para aplicar el oplog al mongod.

    Requiere --sslCAFile y --sslPEMKeyFile.

    --sslCAFile

    Condicional

    Proporcione la ruta al archivo de la Autoridad Certificadora.

    Requerido si --ssl está configurado.

    --sslPEMKeyFile

    Condicional

    Proporciona la ruta al archivo del certificado PEM.

    Requerido si --ssl está configurado.

    --sslPEMKeyFilePwd

    Condicional

    Proporcione la contraseña para el archivo de certificado PEM especificado --sslPEMKeyFile en.

    Obligatorio si --ssl está configurado y el archivo de clave PEM está cifrado.

    --sslClientCertificateSubject

    Proporcione el Sujeto del Certificado de Cliente o Nombre Distinguido (DN) para el proceso de destino de MongoDB.

    --sslRequireValidServerCertificates

    Opcional

    Establezca una bandera que indique si la herramienta debe validar los certificados que presenta el proceso objetivo de MongoDB.

    --sslServerClientCertificate

    Opcional

    Proporcione la ruta absoluta al archivo del certificado de cliente que se utilizará para conectarse al host de Cloud Manager.

    --sslServerClientCertificatePassword

    Condicional

    Proporcione la ruta absoluta al archivo de contraseña del certificado de cliente que se va a utilizar para conectarse al host de Cloud Manager.

    Obligatorio si --sslServerClientCertificate está configurado y ese certificado está cifrado.

    --sslRequireValidMMSBackupServerCertificate

    Opcional

    Establecer una bandera que indique si se requieren certificados válidos al contactar con el host de Cloud Manager. El valor por defecto es true.

    --sslTrustedMMSBackupServerCertificate

    Opcional

    Proporcione la ruta absoluta a los certificados de la Autoridad Certificadora confiable en formato PEM para el host de Cloud Manager. Si no se proporciona esta bandera, se utiliza la Autoridad de certificación del sistema.

    --httpProxy

    Opcional

    Proporcione la URL de un HTTP servidor proxy que la herramienta pueda usar.

    significa que si copiaste el comando mongodb-backup-restore-util proporcionado en Cloud Manager, este campo está preconfigurado.

11

Antes de intentar restaurar los datos manualmente, quita el set de réplicas de automatización.

12

Sigue el tutorial del manual de MongoDB para restaurar el set de réplicas.

13

Para gestionar el set de réplicas con automatización nuevamente, importa el set de réplicas de regreso en Cloud Manager.

Importante

Rotar la clave maestra después de la restauración de snapshots cifrados con AES256-GCM

Si restauras una snapshot cifrada que el Administrador de la nube cifró con AES256-GCM, rota tu clave maestra después de completar la restauración.

Volver

Restaurar clúster fragmentado

En esta página