PoC #1: Migración y Replicación de datos desde on-premises hacia AWS - parte 1
Experimento con datos y resultados
Los datos son el corazón de cualquier sistema, moverlos requiere esencialmente de dos pasos: migración (tomar una fecha de referencia, hacer una copia exacta hasta el origen de los datos y finalmente moverlos a un nuevo destino) y replicación (mantener una replicación sincrónica de los mismos, esta se puede hacer en tiempo real o bien, en proceso batch que se ejecuta con cierta frecuencia).
En esta primera parte vamos a revisar lo siguiente:
Planteamiento del problema
Objetivos
Diseño de solución
Escenarios
En la segunda parte, pretendo presentar los resultados obtenidos y dejar mis recomendaciones al respecto.
1. Planteamiento del problema
Supongamos que se debe migrar las bases de datos Oracle desde on-premise (un datacenter cualquiera) hacia AWS. Las bases de datos tienen un almacenamiento total aproximado de 5 TB de información.
El problema entonces es; buscar la estrategia de implementación en que esta migración tenga costos óptimos y bajo impacto en la base de datos on-premise.
Como antecedente, previo a las tareas de replicación masivas, no es conocido la velocidad de transferencia de datos y qué factores podrían afectar este proceso.
Luego de esta PoC, se debe lograr poner en evidencia aquellas variables que contribuyen o limitan la migración de datos.
2. Objetivos
Objetivo general: diseñar la estrategia de migración de datos on-premise hacia AWS
Objetivos específicos
Establecimiento de VPN entre on-premise hacia AWS.
Migrar una muestra de datos (esquemas y tablas), bajo dos escenarios con uso de recursos de cómputo diferentes
Medir las siguientes variables:
Parámetros relacionados a las instancias de replicación (uso CPU, uso RAM)
Velocidad de transferencia de datos
Costos
3. Diseño de solución
Para resolver el problema, considero que la mejor forma es utilizar el servicio DMS (Database Migration Service), con el siguiente diseño de solución:
Todas las IP’s son solo referenciales, y son esenciales conocerlas para este tipo de soluciones, porque en la práctica tú no tienes acceso al on-premises del cliente, generalmente tienes que coordinar una sesión con el equipo de redes (IT, seguridad, arquitectura, etc…) donde establecen el enlace (VPN). Bueno, describamos brevemente cada componente de la solución:
On-premises
BBDD: Base de datos Oracle. Es el punto de fuente de datos para DMS
FW: Firewall.
CGW: Gateway para establecimiento de VPN Site-to-Site
AWS Cloud
VPN Site-to-Site: Servicio VPN Site-to-Site. El “Tunnel 1” es el equivalente al CGW del lado on-premises.
VPG: Gateway para la VPC.
DMS instance: Instancia de replicación del servicio DMS.
S3 test_Bucket: Bucket S3. Es el punto objetivo para DMS
Si todo esto es muy nuevo para ti, escríbeme tus preguntas respondiendo el correo, o bien, en los comentarios del post.
4. Escenarios
Vamos a migrar 7 tablas ficticias, almacenadas en la base de datos. El peso relativo asciende a 16,2 GB. La distribución por cantidad de registros de estas tablas, es:
De esta muestra, se realizarán dos migraciones, variando el tipo de instancia del servicio DMS. Estas son sus características:
Despedida
Lamentablemente se acabó… por ahora.
Espero que este siendo interesante este post, en la parte 2 mostraré los resultados de estos escenarios, así que atento a tu correo!