Overview
Puedes cambiar la configuración de implementación de una aplicación existente para implementarla en un nuevo modelo, región o proveedor de nube. Por ejemplo, puedes cambiar tu aplicación de una implementación global a una región local específica de AWS o cambiar una aplicación implementada en el este de EE. UU. de AWS a Azure. Para ver todas las opciones disponibles, consulta "Modelos y regiones de implementación".
Para migrar una aplicación existente, se inicia una migración de implementación que traslada automáticamente los datos y la configuración de la aplicación a la nueva configuración. El proceso de migración está diseñado para ser lo más fluido posible, pero requiere 5 de a 30 minutos de inactividad. Puede supervisar el estado de la migración, pero no se procesarán solicitudes hasta que se complete. Para obtener más información, consulte Proceso de migración de implementación.
Importante
Contactar con el soporte de MongoDB
Le recomendamos que se ponga en contacto con el soporte técnico de MongoDB si planea cambiar el modelo de implementación de una aplicación de producción. Para saber cómo hacerlo, visite el portal de soporte de MongoDB.
Ejecutar una migración de implementación
Puedes iniciar una migración de implementación en cualquier momento. Solo se puede realizar una migración a la vez para una aplicación. Si intentas iniciar una migración mientras otra está en curso, la nueva migración no se ejecutará y generará un error.
Si se conecta a su aplicación desde un SDK de Realm, debe actualizarlo a una versión compatible con los cambios de modelo de implementación. Si la versión del SDK de su aplicación no es compatible, deberá reinstalarla. Si cambia los modelos de implementación antes de la actualización, el SDK no podrá conectarse y las solicitudes fallarán.
Versión mínima del SDK:
SDK de Realm C++ versión 68000.2.0
SDK de Flutter de Realm versión 68001.2.0
Realm Kotlin SDK v1.10.0
Realm .NET SDK v11.1.0
SDK de Realm Node.js v12.0.0 (versión pendiente)
SDK de React Native de Realm v12.0.0 (pendiente de lanzamiento)
SDK de Realm Swift versión 680010.40.0
Antes de comenzar
Antes de cambiar los modelos de implementación, tenga en cuenta lo siguiente:
Se perderán todos los registros y borradores.
Los activadores suspendidos se reiniciarán.
Cualquier punto final privado existente deberá volver a crearse para la nueva región.
Los activadores y las operaciones de sincronización de dispositivos se pausarán durante la migración.
Importante
La migración de implementación es permanente
Cambiar el modelo de implementación no es un borrador. Una vez guardado, este cambio no se puede revertir.
Necesitará lo siguiente para modificar el modelo de implementación de una aplicación en la interfaz de usuario de Atlas:
Una cuenta de MongoDB Atlas con permisos de propietario de proyecto. Para obtener información sobre cómo crear una cuenta gratuita, consulte Introducción a Atlas.
Necesitarás lo siguiente para modificar el modelo de implementación de una aplicación con la API de administración:
Una cuenta de MongoDB Atlas con permisos de propietario de proyecto. Para obtener información sobre cómo crear una cuenta gratuita, consulte Introducción a Atlas.
Un par de claves pública/privada de la API de administración de MongoDB Atlas. La clave de API debe tener permisos de propietario del proyecto para funcionar con la API de administración de App Services.
La cadena hexadecimal ObjectId interna de tu aplicación y el ID del proyecto Atlas que contiene tu aplicación. Para saber cómo encontrarlos, consulta Obtener metadatos de la aplicación.
Procedimiento
Elige un modelo de implementación objetivo y una región
Puede migrar una aplicación a cualquier configuración de implementación válida.
En primer lugar, elija migrar a una región específica LOCAL
región o una implementación GLOBAL distribuida en todo el mundo.
Si elige GLOBAL, elija una de las regiones globales para alojar los datos de configuración de su aplicación.
Si LOCAL elige, elija un proveedor de nube y una región específicos para la implementación. Para ver una lista de todas las opciones disponibles, consulte Modelos y regiones de implementación.
Iniciar la migración
Una vez que haya especificado la configuración de implementación deseada, haga clic en Continue. Debería aparecer un mensaje de confirmación con una lista de verificación. Revise y marque cada elemento de la lista para confirmar que comprende el impacto de la migración.
Una vez que haya revisado la lista de verificación, comience la migración haciendo clic en Change region.
Limpieza después de la migración
Algunas funciones y servicios dejarán de funcionar después de una migración y deberán reconfigurarse. Si utiliza alguna de estas funciones, siga los pasos de limpieza a continuación para restaurar la funcionalidad:
Característica | Pasos de limpieza |
|---|---|
Los puntos de conexión privados de VPC son específicos de cada región. Tras migrar a una nueva región, debe crear nuevos puntos de conexión privados de VPC en ella y actualizar su aplicación para que los use. No puede usar puntos de conexión privados de VPC si migró a una implementación global o a una región local en Azure o GCP. | |
Envío de solicitudes | Una vez completada la migración, deberá enviar solicitudes utilizando nuevas URL, si corresponde. |
Elige un modelo de implementación objetivo y una región
Puede migrar una aplicación a cualquier configuración de implementación válida.
Primero, elija migrar a una región LOCAL específica o a una implementación GLOBAL distribuida en todo el mundo.
Si elige GLOBAL, elija una de las regiones globales para alojar los datos de configuración de su aplicación.
{ "deployment_model": "GLOBAL", "provider_region": "aws-us-east-1" }
Si LOCAL elige, elija un proveedor de nube y una región específicos para la implementación. Para ver una lista de todas las opciones disponibles, consulte Modelos y regiones de implementación.
{ "deployment_model": "LOCAL", "provider_region": "azure-westus" }
Iniciar la migración
Para empezar una migración, llama al endpoint Crear una Migración de Implementación con el modelo de implementación y la región a la que quieras migrar en el cuerpo de la solicitud.
curl -X PUT \ https://services.cloud.mongodb.com/api/admin/v3.0/groups/{groupId}/apps/{appId}/deployment_migration \ -H 'Content-Type: application/json' \ -H 'Authorization: Bearer <AccessToken>' \ -d '{ "deployment_model": "<DeploymentModel>", "provider_region": "<RegionID>" }'
Monitorear el estado de la migración
Para obtener el estado actual de una migración de implementación, llame al punto final Obtener una migración de implementación.
curl -X GET \ https://services.cloud.mongodb.com/api/admin/v3.0/groups/<groupId>/apps/<appId>/deployment_migration \ -H 'Authorization: Bearer <AccessToken>'
Limpieza después de la migración
Algunas funciones y servicios dejarán de funcionar después de una migración y deberán reconfigurarse. Si utiliza alguna de estas funciones, siga los pasos de limpieza a continuación para restaurar la funcionalidad:
Característica | Pasos de limpieza |
|---|---|
Los puntos de conexión privados de VPC son específicos de cada región. Tras migrar a una nueva región, debe crear nuevos puntos de conexión privados de VPC en ella y actualizar su aplicación para que los use. No puede usar puntos de conexión privados de VPC si migró a una implementación global o a una región local en Azure o GCP. | |
Envío de solicitudes | Una vez completada la migración, deberá enviar solicitudes utilizando nuevas URL, si corresponde. |
Proceso de migración de implementación
Las migraciones de implementación trasladan los datos y la configuración de tu aplicación a una o más regiones nuevas en una serie de etapas. En cada etapa, el proceso migra una parte de tu aplicación al nuevo modelo y limpia cualquier artefacto del modelo anterior.
Una migración de implementación avanza por las siguientes etapas en orden:
"started":la migración ha comenzado"downtime":La aplicación no está disponible mientras la migración está en curso."enabling_event_subscriptions": se están habilitando los traductores de Device Sync y activadores de la aplicación"cleanup":Se están limpiando los artefactos de implementaciónLa migración está completa y puede estar en uno de dos estados:
"successful": la migración se completó con éxito"failed":la migración falló
Datos afectados
El proceso de migración no afecta ningún dato de aplicación almacenado en un clúster MongoDB Atlas.
El proceso de migración migra los siguientes componentes de su aplicación:
Cuentas de usuario
Archivos de configuración de la aplicación
Activadores
Servicios API
Traductores de sincronización de dispositivos
El proceso de migración no migra los siguientes datos:
Registros de aplicaciones
Borradores de implementación
Datos almacenados en un clúster de MongoDB Atlas