![](https://cdn.qwiklabs.com/assets/labs/start_lab-f45aca49782d4033c3ff688160387ac98c66941d.png)
Before you begin
- Labs create a Google Cloud project and resources for a fixed time
- Labs have a time limit and no pause feature. If you restart it, you'll have to start from the beginning.
- On the top left of your screen, click Start lab to begin
Prepare the source database for migration.
/ 20
Create a Database Migration Service connection profile.
/ 20
Create and start a continuous migration job.
/ 20
Confirm the data in Cloud SQL for PostgreSQL.
/ 20
Promote Cloud SQL to be a stand-alone instance for reading and writing data.
/ 20
Database Migration Service proporciona opciones de trabajos continuos y únicos para migrar datos a Cloud SQL usando distintas alternativas de conectividad, como listas de IP permitidas, intercambio de tráfico entre VPC y túneles SSH inversos (consulta la documentación sobre las opciones de conectividad en https://cloud.google.com/database-migration/docs/postgresql/configure-connectivity).
En este lab, migrarás una base de datos de PostgreSQL independiente (que se ejecuta en una máquina virtual) a Cloud SQL para PostgreSQL usando un trabajo continuo de Database Migration Service con intercambio de tráfico entre VPC como opción de conectividad.
Para migrar una base de datos a través de Database Migration Service primero debes prepararla, lo que incluye crear un usuario exclusivo con derechos de replicación, agregar la extensión pglogical
a la base de datos de origen y otorgarle a ese usuario los derechos al esquema y a las tablas de la base de datos que se migrará, y a la base de datos de postgres.
Después de crear y ejecutar el trabajo de migración, debes confirmar que se migró correctamente una copia inicial de tu base de datos a tu instancia de Cloud SQL para PostgreSQL. También explorarás cómo los trabajos de migración continuos le aplican actualizaciones de datos de tu base de datos de origen a tu instancia de Cloud SQL. Para concluir el trabajo de migración, debes ascender la instancia de Cloud SQL para que sea una base de datos independiente en la que se pueda leer y escribir datos.
Lee estas instrucciones. Los labs son cronometrados y no se pueden pausar. El cronómetro, que comienza a funcionar cuando haces clic en Comenzar lab, indica por cuánto tiempo tendrás a tu disposición los recursos de Google Cloud.
Este lab práctico te permitirá realizar las actividades correspondientes en un entorno de nube real, no en uno de simulación o demostración. Para ello, se te proporcionan credenciales temporales nuevas que utilizarás para acceder a Google Cloud durante todo el lab.
Para completar este lab, necesitarás lo siguiente:
Haga clic en el botón Comenzar lab. Si debe pagar por el lab, se abrirá una ventana emergente para que seleccione su forma de pago. A la izquierda, se encuentra el panel Detalles del lab, que tiene estos elementos:
Haz clic en Abrir la consola de Google Cloud (o haz clic con el botón derecho y selecciona Abrir el vínculo en una ventana de incógnito si ejecutas el navegador Chrome).
El lab inicia recursos y abre otra pestaña en la que se muestra la página de acceso.
Sugerencia: Ordene las pestañas en ventanas separadas, una junto a la otra.
De ser necesario, copia el nombre de usuario a continuación y pégalo en el diálogo Acceder.
También puedes encontrar el nombre de usuario en el panel Detalles del lab.
Haz clic en Siguiente.
Copia la contraseña que aparece a continuación y pégala en el diálogo Te damos la bienvenida.
También puedes encontrar la contraseña en el panel Detalles del lab.
Haz clic en Siguiente.
Haga clic para avanzar por las páginas siguientes:
Después de un momento, se abrirá la consola de Google Cloud en esta pestaña.
Cloud Shell es una máquina virtual que cuenta con herramientas para desarrolladores. Ofrece un directorio principal persistente de 5 GB y se ejecuta en Google Cloud. Cloud Shell proporciona acceso de línea de comandos a tus recursos de Google Cloud.
Cuando te conectes, habrás completado la autenticación, y el proyecto estará configurado con tu PROJECT_ID. El resultado contiene una línea que declara el PROJECT_ID para esta sesión:
gcloud
es la herramienta de línea de comandos de Google Cloud. Viene preinstalada en Cloud Shell y es compatible con la función de autocompletado con tabulador.
Haz clic en Autorizar.
Ahora, el resultado debería verse de la siguiente manera:
Resultado:
Resultado:
Resultado de ejemplo:
gcloud
, consulta la guía con la descripción general de gcloud CLI en Google Cloud.
En esta página aparecerá información del estado o se te ofrecerá la opción de habilitar la API.
La API de Service Networking es necesaria para configurar Cloud SQL y que admita el intercambio de tráfico entre VPC y las conexiones a través de una dirección IP privada.
En esta página aparecerá información del estado o se te ofrecerá la opción de habilitar la API.
En esta tarea, agregarás funciones a la base de datos de origen que son necesarias para que Database Migration Service realice una migración. Debes realizar las siguientes acciones:
pglogical
a las bases de datos postgres
, orders
y gmemegen_db
en el servidor independientemigration_admin
(con permisos de replicación) para la migración de la base de datos y otorgarle los permisos solicitados para el esquema y las relacionesEn este paso, descargarás la extensión pglogical
y la agregarás a las bases de datos orders y postgres en la instancia de VM postgresql-vm
.
En el menú de navegación () de la consola de Google Cloud, haz clic en Compute Engine > Instancias de VM.
En la entrada de postgresql-vm
, debajo de Connect
haz clic en SSH.
Si se te solicita, haz clic en Autorizar.
En la terminal de la nueva ventana del navegador, instala la extensión de base de datos pglogical
:
pglogical
es un sistema de replicación lógica implementado por completo como extensión de PostgreSQL. Como está completamente integrado, no requiere activadores ni programas externos. Esta alternativa a la replicación física es un método altamente eficiente para replicar datos usando un modelo de publicación y suscripción para replicaciones selectivas. Obtén más información aquí: https://github.com/2ndQuadrant/pglogical
Con estos comandos, se agregó a pg_hba.conf
una regla para permitir el acceso a todos los hosts:
Con estos comandos también se estableció en postgresql.conf
la configuración mínima de pglogical para que escuche en todas las direcciones IP:
Los fragmentos de código anteriores se agregaron a los archivos relevantes y se reinició el servicio de PostgreSQL.
pglogical
a las bases de datos postgres
, orders
y gmemegen_db
.Aquí puedes ver, además de las bases de datos postgresql predeterminadas, las bases de datos orders
y gmemegen_db
que se proporcionaron para este lab. No usarás la base de datos gmemegen_db
en este lab, pero se incluirá en la migración para usarla en otro lab.
En este paso, crearás un usuario exclusivo para administrar la migración de la base de datos.
En este paso, le asignarás los permisos necesarios al usuario de migration_admin
para habilitar Database Migration Service y, así, migrar tu base de datos.
pglogical
a la base de datos postgres
.pglogical
a la base de datos orders
.public
a la base de datos orders
.pglogical
a la base de datos gmemegen_db
.public
a la base de datos gmemegen_db
.Ahora, las bases de datos de origen están preparadas para la migración. Los permisos que le otorgaste al usuario migration_admin
es todo lo que se necesita para que Database Migration Service migre las bases de datos postgres
, orders
y gmemegen_db
.
Convierte al usuario migration_admin
en propietario de las tablas en la base de datos orders
para que puedas editar los datos de origen más adelante cuando hagas pruebas de la migración.
Haz clic en Revisar mi progreso para verificar el objetivo.
En esta tarea, crearás un perfil de conexión para la instancia de PostgreSQL de origen.
En este paso, identificarás la dirección IP interna de la instancia de base de datos de origen que migrarás a Cloud SQL.
En el menú de navegación () de la consola de Google Cloud, haz clic en Compute Engine > Instancias de VM.
Ubica la línea que tenga la instancia llamada postgresql-vm.
Copia el valor de la IP interna (p. ej., 10.128.0.2).
Un perfil de conexión almacena información sobre la instancia de base de datos de origen (p. ej., PostgreSQL independiente), y Database Migration Service lo utiliza para migrar datos desde el origen hasta tu instancia de base de datos de Cloud SQL de destino. Después de crear un perfil de conexión, se puede volver a utilizar en los trabajos de migración.
En este paso, crearás un nuevo perfil de conexión para la instancia PostgreSQL de origen.
En la consola de Google Cloud, en el menú de navegación (), haz clic en Migración de bases de datos > Perfiles de conexión.
Haz clic en + Crear perfil.
En Motor de base de datos, selecciona PostgreSQL.
En Nombre del perfil de conexión, ingresa postgres-vm.
En Nombre de host o dirección IP, ingresa la IP interna de la instancia de PostgreSQL de origen que copiaste en la tarea anterior (p. ej., 10.128.0.2).
En Puerto, ingresa 5432.
En Nombre de usuario, ingresa migration_admin.
En Contraseña, ingresa DMS_1s_cool! .
En Región, selecciona
Deja los demás valores en su configuración predeterminada.
Haz clic en Crear.
Aparecerá un nuevo perfil de conexión con el nombre postgres-vm en la lista de perfiles llamada Conexiones.
Haz clic en Revisar mi progreso para verificar el objetivo.
Cuando creas un nuevo trabajo de migración, primero debes definir la instancia de base de datos de origen usando un perfil de conexión creado previamente. Luego, debes crear una nueva instancia de base de datos de destino y configurar la conectividad entre las instancias de origen y de destino.
En esta tarea, usarás la interfaz del trabajo de migración para crear una nueva instancia de base de datos de Cloud SQL para PostgreSQL y la establecerás como el destino para el trabajo de migración continuo de la instancia de origen de PostgreSQL.
En este paso, crearás un nuevo trabajo de migración continuo.
En la consola de Google Cloud, en el menú de navegación (), haz clic en Migración de bases de datos > Trabajos de migración.
Haz clic en + Crear trabajos de migración.
En Nombre del trabajo de migración, ingresa vm-to-cloudsql.
En Motor de base de datos de origen, selecciona PostgreSQL.
En Región de destino, selecciona
En Motor de la base de datos de destino, selecciona Cloud SQL para PostgreSQL.
En Tipo de trabajo de migración, selecciona Continuo.
Deja los valores predeterminados para el resto de la configuración.
En este paso, definirás la instancia de origen para la migración.
Deja los valores predeterminados para el resto de la configuración.
En este paso, crearás la instancia de destino para la migración.
En ID de la instancia de destino, ingresa postgresql-cloudsql.
En Contraseña, ingresa supersecret!.
En Elige una edición de Cloud SQL, selecciona Enterprise.
En Versión de la base de datos, selecciona Cloud SQL para PostgreSQL 13.
En la sección Elige la región y la zona, selecciona Zona única y selecciona
En Conectividad de las instancias, selecciona IP privada e IP pública.
Selecciona Usar un rango de IP asignado automáticamente.
Deja los valores predeterminados para el resto de la configuración.
Nota: Este paso puede tardar unos minutos. Si se te pide reintentar la solicitud, haz clic en el botón Volver a intentarlo para actualizar la API de Service Networking.
Cuando se complete este paso, se te notificará a través de un mensaje actualizado que la instancia usará la conexión del servicio administrado existente.
Tendrás que editar el archivo pg_hba.conf en la instancia de VM para permitir el acceso al rango de IP que se generó automáticamente en el punto 5 del paso anterior. Harás esto en un paso posterior, antes de probar la configuración de migración al final de esta tarea.
Ingresa la información adicional necesaria para crear la instancia de destino en Cloud SQL.
En Formas de máquinas, marca 1 CPU virtual, 3.75 GB.
En Tipo de almacenamiento, selecciona SSD.
En Capacidad de almacenamiento, selecciona 10 GB.
Haz clic en Crear y continuar.
Si se te solicita confirmar, haz clic en Crear destino y continuar. Se indicará en un mensaje que se está creando tu instancia de base de datos de destino. Avanza al siguiente paso mientras esperas.
En este paso, definirás el método de conectividad para la migración.
En Método de conectividad, selecciona Intercambio de tráfico entre VPC.
En VPC, selecciona predeterminada.
Database Migration Service configura el intercambio de tráfico entre VPC usando la información proporcionada por la red de VPC (la red predeterminada en este ejemplo).
Cuando veas un mensaje actualizado que indica que se creó la instancia de destino, avanza al siguiente paso.
En este paso, editarás el archivo de configuración de PostgreSQL pg_hba.conf
para permitir que Database Migration Service acceda a la base de datos de PostgreSQL independiente.
Obtén el rango de direcciones IP asignadas. En la consola de Google Cloud, en el menú de navegación (), haz clic con el botón derecho en red de VPC > Intercambio de tráfico entre redes de VPC y ábrelo en una nueva pestaña.
Haz clic en la entrada servicenetworking-googleapis-com
.
En la pestaña Rutas importadas, selecciona y copia el Rango de IP de destino
(p. ej., 10.107.176.0/24).
En la sesión de terminal en la instancia de VM, edita el archivo pg_hba.conf
de la siguiente manera:
reemplaza el rango “todas las direcciones IP” (0.0.0.0/0) por el que copiaste en el punto 3 más arriba.
Guarda y sal del editor nano con Ctrl-O, Intro y, luego, Ctrl-X.
Reinicia el servicio de PostgreSQL para que se apliquen los cambios. En la sesión de terminal de la instancia de VM, ingresa lo siguiente:
En este paso, probarás y, luego, iniciarás el trabajo de migración.
En la pestaña Database Migration Service que abriste anteriormente, revisa los detalles del trabajo de migración.
Haz clic en Probar trabajo.
Si la prueba se realiza correctamente, haz clic en Crear y ejecutar trabajo.
Si se te solicita confirmar, haz clic en Crear y comenzar.
En este paso, confirmarás que el trabajo de migración continuo se esté ejecutando.
En la consola de Google Cloud, en el menú de navegación (), haz clic en Migración de bases de datos > Trabajos de migración.
Haz clic en el trabajo de migración vm-to-cloudsql para ver la página de detalles.
Revisa el estado del trabajo de migración.
Cuando el estado del trabajo cambie a En ejecución | CDC en curso, avanza al próximo paso.
Haz clic en Revisar mi progreso para verificar el objetivo.
En la consola de Google Cloud, en el menú de navegación (), haz clic en Bases de datos > SQL.
Expande el ID de instancia que tiene el nombre postgresql-cloudsql-master.
Haz clic en la instancia postgresql-cloudsql (réplica de lectura de PostgreSQL).
En el menú Instancia de réplica, haz clic en Bases de datos.
Ten en cuenta que se migraron a Cloud SQL las bases de datos llamadas postgres, orders y gmemegen_db.
En el menú Instancia de réplica, haz clic en Descripción general.
Desplázate hasta la sección Conectarse a esta instancia y haz clic en Abrir Cloud Shell.
El comando para conectarte a PostgreSQL se prepropagará en Cloud Shell:
Si se te solicita, haz clic en Autorizar para la API.
Acabas de activar la consola interactiva de PostgreSQL para la instancia de destino.
distribution_centers
:(Resultado)
Acabas de activar la consola interactiva de PostgreSQL para la instancia de destino.
distribution_centers
:(Resultado)
Ten en cuenta que la nueva fila agregada a la base de datos independiente orders
ahora está presente en la base de datos migrada.
Haz clic en Revisar mi progreso para verificar el objetivo.
En la consola de Google Cloud, en el menú de navegación (), haz clic en Migración de bases de datos > Trabajos de migración.
Haz clic en el nombre de trabajo de migración vm-to-cloudsql para ver la página de detalles.
Haz clic en Ascender.
Si se te solicita confirmar la acción, haz clic en Ascender.
Cuando se complete el ascenso, el estado del trabajo se actualizará a Completado.
Ten en cuenta que postgresql-cloudsql ahora es una instancia independiente en la que se puede leer y escribir datos.
Haz clic en Revisar mi progreso para verificar el objetivo.
Aprendiste a configurar un trabajo de Database Migration Service continuo para migrar bases de datos de una instancia de PostgreSQL a Cloud SQL para PostgreSQL.
Recibe la formación que necesitas para aprovechar al máximo las tecnologías de Google Cloud. Nuestras clases incluyen habilidades técnicas y recomendaciones para ayudarte a avanzar rápidamente y a seguir aprendiendo. Para que puedas realizar nuestros cursos cuando más te convenga, ofrecemos distintos tipos de capacitación de nivel básico a avanzado: a pedido, presenciales y virtuales. Las certificaciones te ayudan a validar y demostrar tus habilidades y tu conocimiento técnico respecto a las tecnologías de Google Cloud.
Última actualización del manual: 14 de mayo de 2024
Prueba más reciente del lab: 14 de mayo de 2024
Copyright 2025 Google LLC. All rights reserved. Google y el logotipo de Google son marcas de Google LLC. Los demás nombres de productos y empresas pueden ser marcas de las respectivas empresas a las que estén asociados.