Blog de Amazon Web Services (AWS)

AWS Database Migration Service

Por Jeff Barr

Actualmente almacena datos relacionales en una base de datos Oracle, SQL Server, MySQL, MariaDB o PostgreSQL? Desea mover estos datos a la nube de AWS prácticamente sin downtime, para poder aprovechar las ventajas de escalabilidad, eficiencia operacional y la multitud de opciones de almacenamiento que están disponibles para usted?

Si es así, el nuevo servicio AWS Database Migration Service (DMS), es para usted! Anunciado en el re:Invent 2015, nuestros clientes ya lo han usado para migrar más de 1000 bases de datos on-premises a AWS. Usted puede mover bases de datos de escalas de terabytes, vivas, con opciones para mantener su plataforma de base de datos existente o realizar un upgrade a una nueva, que atienda mejor sus requerimientos. Si usted está migrando a una nueva plataforma de base de datos como parte de su jornada a la nube, el AWS Schema Conversion Tool va a convertir sus Schemas y Stored Procedures para ser usado en la nueva plataforma.

El AWS Database Migration Service funciona configurando y luego administrando una instancia de replicación en AWS. Esta instancia extrae los datos de la base de datos fuente y los carga en la base de datos de destino; además, puede ser usada para una migración inicial, seguida de una replicación incremental y soportar una migración total con un mínimo downtime. A lo largo del camino, DMS maneja muchos de los detalles complejos asociados con una migración, incluyendo transformación de tipos de datos y conversión de una plataforma de base de datos a otra (Oracle a Aurora, por ejemplo). Este servicio también monitorea la replicación y la salud de la instancia, lo notifica si algo sale mal y automáticamente aprovisiona una instancia de reemplazo si es necesario.

El servicio soporta diversos escenarios de migración y opciones de red diferentes. Uno de los endpoints debe siempre ser AWS; el otro puede ser on-premieses, rodando en una instancia EC2 o rodando en una instancia de base de datos RDS. La fuente y el destino pueden vivir dentro de la misma Virtual Private Cloud (VPC) o en dos VPCs diferentes (si usted está migrando de una base de datos a otra). Usted puede conectarse a una base de datos on-premises via internet (VPN) o vía AWS Direct Connect.

Migrando una base de datos

Usted puede configurar su primera migración con un par de clicks! Simplemente cree la base de datos destino, migre el Schema de base de datos, configure el proceso de replicación de datos e inicialice la migración. Cuando la base de datos destino se encuentra al día con la fuente, simplemente cámbiela en su ambiente productivo.

Comience abriendo la consola del AWS Database Migration Service (en la sección de Database de la Consola de administración de AWS, como DMS) y clique en “Create migration”.

La consola provee una visión complete del proceso de migración:

A continuación, se hace click en “Next” y definiendo los parámetros necesarios para crea la instancia de replicación:

Para este primer blog post, seleccionaremos una de las VPCs existentes y desmarcando “Publicly accessible”. Previamente se ha configurado una instancia EC2 que representa mi base de datos on-premise.

Después que la instancia de replicación ha sido creada, se especifican los endpoints de las bases de datos Fuente y destino, y luego click en “Run test” para asegurarse que los endpoints son accesibles (diciendo la verdad, pasé algún tiempo ajustando mis Security Groups para que estos test pasen):

Ahora, se crea realmente la tarea de migración. Es posible (por el “Migration type”) migrar los datos existentes y luego replicar, o replicar de forma continua:

Es posible cliquear en “Task Settings” para configurar otras opciones (LOBs son Large Objects):

La tarea de migración está lista y comenzará tan pronto sea seleccionada y presionado el botón “Start/Resume”:

Es posible ver el progreso, y luego revisar las “Table statistics”  para ver lo que ha pasado (estas fueron tablas de test y los resultados no son tan emocionantes):

A este punto, es posible realizar un test de sanidad y luego apuntar mi aplicación hacia el Nuevo endpoint. Es posible también escoger la opción de replicación continua.

El AWS Database Migration Service, ofrece muchas opciones y hemos apenas tocado la superficie. Usted puede, por ejemplo, escoger migrar solo algunas tablas; también puede crear muchos tipos de tareas de replicación diferente y activarlos en tiempos diferentes. Es muy recomendado leer la documentación de DMS porque hace un gran trabajo guiándolo a través de su primera migración.

Si usted necesita migrar una colección de bases de datos, usted puede automatizar su trabajo usando la interfaz de línea de comandos de AWS (CLI) o la API del Database Migration Service.

Precio y disponibilidad

El AWS Database Migration Service, está disponible en las regiones US East (Northern Virginia), US West (Oregon), US West (Northern California), Europe (Ireland), Europe (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Singapore),  and Asia Pacific (Sydney) y usted puede empezar a usarlo hoy (planeamos agregar soporte para otras regiones en los próximos meses).

El precio es basado en los recursos de cómputo usados durante el proceso de migración, con un cargo de almacenamiento de largo plazo de logs. Vea la página de Database Migration Service Pricing  para mayor información.