Actualiza una instancia a la edición Cloud SQL Enterprise Plus mediante el intercambio de tráfico de VPC


En esta página, se muestra cómo usar el método de conectividad de red de intercambio de tráfico de VPC privada de Database Migration Service para actualizar una instancia de Cloud SQL Enterprise a la edición Cloud SQL Enterprise Plus. Database Migration Service crea una nueva instancia de Cloud SQL y migra datos a esa instancia.

Descripción general

Cloud SQL Enterprise Plus es ideal para aplicaciones que requieren rendimiento máximo de escritura. Para obtener más información sobre estas mejoras, consulta Mejoras de rendimiento.

Para habilitar estas mejoras en las instancias existentes de la edición de Cloud SQL Enterprise, debes actualizarlas a la edición de Cloud SQL Enterprise Plus mediante Database Migration Service.

Antes de comenzar

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  5. Make sure that billing is enabled for your Google Cloud project.

  6. Habilita la API de Database Migration Service.

    Habilitación de la API

  7. Asegúrate de tener asignada el rol de administrador de Database Migration a tu cuenta de usuario.

    Ir a IAM

Requisitos

Database Migration Service ofrece varias opciones de bases de datos de origen y métodos de conectividad de red. Las diferentes fuentes funcionan mejor con algunos métodos de conectividad que con otros. En esta página, suponemos que usas una instancia de edición de Cloud SQL Enterprise en un entorno en el que puedes configurar tu red para agregar una regla de firewall entrante. Debido a que no podemos saber los detalles de tu entorno, no podemos proporcionar pasos detallados cuando se trata de tu configuración de red.

Configura tu instancia de origen

Para configurar tu instancia de origen de Cloud SQL Enterprise, completa los siguientes pasos:

  1. Si no tienes la base de datos postgres para tu instancia de origen, créala. Para obtener más información, consulta Crea una base de datos en la instancia de Cloud SQL.
  2. Instala el paquete pglogical en las bases de datos de tu instancia de origen. Asegúrate de que el paquete se incluya en la variable shared_preload_libraries. Para obtener más información, consulta Configura tus bases de datos de origen.
  3. Habilita la replicación lógica y la decodificación para las bases de datos de tu instancia de origen. Para obtener más información, consulta Habilita la replicación y decodificación lógicas para tus bases de datos de origen.

Configura tus bases de datos de origen

Además de las bases de datos template0 y template1, Database Migration Service migra todas las demás bases de datos en tu instancia de origen de Cloud SQL Enterprise.

En cada base de datos de tu instancia de origen que no se mencionó antes, completa los siguientes pasos:

  1. Para instalar la extensión pglogical en la base de datos, ejecuta el comando CREATE EXTENSION IF NOT EXISTS pglogical.

  2. Para cualquier tabla que no tenga claves primarias, migra las declaraciones UPDATE y DELETE de forma manual.

  3. Para establecer estos privilegios en cada una de las bases de datos migradas, crea un usuario o establece los privilegios de un usuario existente. Utiliza este usuario para conectarte a la instancia de origen y configúralo como el usuario en la página Perfiles de conexión. Este usuario debe tener ciertos privilegios en cada una de las bases de datos migradas, así como en la base de datos predeterminada de postgres.

    Para configurar estos privilegios, conéctate a la instancia y ejecuta los siguientes comandos:

    1. GRANT USAGE on SCHEMA SCHEMA to USER en todos los esquemas (además del esquema de información y los esquemas que comienzan con pg_) de cada base de datos que quieras migrar
    2. GRANT USAGE on SCHEMA pglogical to PUBLIC; en cada base de datos que deseas migrar.
    3. GRANT SELECT on ALL TABLES in SCHEMA pglogical to USER en todas las bases de datos para obtener información de replicación de las bases de datos de origen.
    4. GRANT SELECT on ALL TABLES in SCHEMA SCHEMA to USER en todos los esquemas (además del esquema de información y los esquemas que comienzan con pg_) de cada base de datos que quieras migrar
    5. GRANT SELECT on ALL SEQUENCES in SCHEMA SCHEMA to USER en todos los esquemas (aparte del esquema de información y los esquemas que comienzan con pg_) de cada base de datos que quieras migrar.
    6. ALTER USER USER with REPLICATION role

Habilita la replicación lógica y la decodificación para tus bases de datos de origen

Habilita la replicación lógica y la decodificación para las bases de datos de tu instancia de edición de Cloud SQL Enterprise de origen mediante la configuración de las marcas cloudsql.logical_decoding y cloudsql.enable_pglogical en On. Para obtener más información sobre las marcas, consulta Configura marcas de base de datos.

Para habilitar ambas marcas, completa los siguientes pasos:

  1. En la consola de Google Cloud, ve a la página Instancias de Cloud SQL.

    Ir a Instancias de Cloud SQL

  2. Haz clic en tu instancia de origen.
  3. Haz clic en Editar.
  4. En la sección Personaliza tu instancia, si aparece el menú Mostrar opciones de configuración, haz clic en él.
  5. Expande la sección Marcas.

  6. Para establecer las marcas cloudsql.logical_decoding y cloudsql.enable_pglogical, completa los siguientes pasos:

    1. Haz clic en Agregar una marca de base de datos.
    2. En el menú desplegable, elige la marca cloudsql.logical_decoding.
    3. Establece el valor de esta marca en On.
    4. Haz clic en Listo.
    5. Repite estos pasos para la marca cloudsql.enable_pglogical.
  7. Haz clic en Guardar.

  8. En el diálogo Debes reiniciar para que se apliquen los cambios, haz clic en Guardar y reiniciar. Cloud SQL reinicia la instancia de origen para que se apliquen los cambios de configuración que realizaste en las marcas.

  9. En el panel Configuración, confirma los cambios en la sección Marcas de base de datos.

Recupera información de la instancia de origen

Para actualizar una instancia de Cloud SQL Enterprise de origen, debes recuperar la siguiente información:

  • La dirección IP privada de la instancia Usas esta dirección IP cuando creas un perfil de conexión en Database Migration Service.
  • El nombre de la red de VPC que permite que la instancia de destino de la edición Cloud SQL Enterprise Plus se comunique directamente con la instancia de origen de la edición Cloud SQL Enterprise. Usas esta red de VPC cuando creas un trabajo de migración en Database Migration Service.

Para recuperar información de la instancia de origen de Cloud SQL Enterprise, completa los siguientes pasos:

  1. En la consola de Google Cloud, ve a la página Instancias de SQL.

    Ir a Instancias de Cloud SQL

  2. Haz clic en tu instancia de origen.
  3. En la sección Conéctate a esta instancia, haz clic en Copiar en el portapapeles en el campo Dirección IP privada.
  4. En la parte superior de la página, haz clic en Editar.
  5. Expanda la sección Conexiones.
  6. En la sección Redes asociadas, toma nota del nombre de la red de VPC que aparece en el campo Red.

Crear perfiles de conexión

Un perfil de conexión contiene información sobre la base de datos de origen de Cloud SQL Enterprise. Database Migration Service usa la información del perfil de conexión para migrar datos de tu base de datos de origen a la instancia de destino de Cloud SQL Enterprise Plus.

Para crear un perfil de conexión, completa los siguientes pasos:

  1. En la consola de Google Cloud, ve a la página Perfiles de conexión en Database Migration Service.

    Ir a Perfiles de conexión

  2. Haga clic en Crear perfil.

  3. En la lista desplegable Motor de base de datos, selecciona Cloud SQL for PostgreSQL.

  4. En el campo Nombre del perfil de conexión, ingresa un nombre para el perfil de conexión de tu base de datos de origen, como My Connection Profile.

  5. Selecciona la región en la que deseas guardar el perfil de conexión.

  6. En la lista desplegable Instancia de Cloud SQL, selecciona el nombre de tu instancia de edición de Cloud SQL Enterprise.

  7. En el campo Nombre de host o dirección IP, reemplaza el valor por la dirección IP privada que copiaste en Recuperar información de la instancia de origen de Cloud SQL Enterprise.

  8. Para autenticar tu instancia de origen, ingresa un nombre de usuario y una contraseña. Luego, haga clic en Continuar.

  9. Si deseas encriptar tus datos, habilita la encriptación SSL/TLS para la conexión entre las bases de datos de origen y de destino. De lo contrario, conserva el valor predeterminado de None.

  10. Haz clic en Continuar.

  11. En el menú desplegable Prueba de conectividad, selecciona Sin definir.

  12. Haz clic en Crear.

Crea trabajos de migración

Database Migration Service usa trabajos de migración para migrar datos de tu instancia de base de datos de origen de Cloud SQL Enterprise a la instancia de destino de Cloud SQL Enterprise Plus.

La creación de un trabajo de migración incluye los siguientes pasos:

  • Definir la configuración del trabajo.
  • Selecciona el perfil de conexión que creaste para tu base de datos de origen de Cloud SQL Enterprise. Este es tu perfil de conexión fuente.
  • Definir la configuración para la instancia de edición de Cloud SQL Enterprise Plus de destino.
  • Configurar la conectividad entre las instancias de base de datos de origen y de destino.
  • Probar el trabajo de migración para asegurarte de que la información de conexión que proporcionaste para el trabajo sea válida

Define la configuración del trabajo de migración

  1. En la consola de Google Cloud, ve a la página Trabajos de migración en Database Migration Service.

    Ir a Trabajos de migración

  2. Haz clic en Crear trabajos de migración.

  3. En el campo Nombre del trabajo de migración, ingresa un nombre para el trabajo de migración, como My Migration Job.

  4. En la lista desplegable Motor de la base de datos de origen, selecciona Cloud SQL para PostgreSQL.

  5. En la lista desplegable Motor de base de datos de destino, selecciona Cloud SQL para PostgreSQL.

  6. Selecciona la región de destino en la que se creará la instancia de edición de Cloud SQL Enterprise Plus.

  7. En la lista desplegable Tipo de trabajo de migración, selecciona Continuo porque deseas que los cambios en curso en tu base de datos de origen de Cloud SQL Enterprise se migren a la instancia de la edición de destino de Cloud SQL Enterprise.

  8. Revisa los requisitos previos necesarios que se generan de forma automática para reflejar cómo se debe preparar el entorno para un trabajo de migración. Estos requisitos previos pueden incluir cómo configurar la base de datos de origen de la edición de Cloud SQL Enterprise y cómo conectarla a la instancia de destino de la edición de Cloud SQL Enterprise Plus.

    Se recomienda completar estos requisitos previos en este paso, pero puedes completarlos en cualquier momento antes de probar o iniciar tu trabajo de migración.

  9. Haz clic en Guardar y continuar.

Especifica la información sobre el perfil de conexión de origen

  1. En la lista desplegable Seleccionar perfil de conexión de origen, selecciona el perfil de conexión que creaste.

  2. Haz clic en Guardar y continuar.

Define la configuración de la instancia de edición de Cloud SQL Enterprise Plus de destino

  1. En el campo Contraseña, ingresa una contraseña alfanumérica para la instancia de edición de Cloud SQL Enterprise Plus de destino. Esta es la contraseña de la cuenta de administrador postgres en la instancia.

  2. En la lista desplegable Versión de la base de datos, selecciona la instancia de destino de la lista de versiones compatibles de Cloud SQL para el motor de base de datos especificado.

  3. Selecciona Enterprise Plus.

  4. En la sección Elige la región y la zona, selecciona la zona de Google Cloud deseada para la instancia nueva de la edición de Cloud SQL Enterprise Plus (o deja como Cualquiera).

  5. Selecciona la casilla de verificación IP privada.

  6. En la lista desplegable VPC, selecciona la red de VPC que anotaste en Recupera información de la instancia de origen de Cloud SQL Enterprise.

  7. Selecciona la forma de máquina para la instancia de edición de Cloud SQL Enterprise Plus. El tamaño del disco debe ser igual o mayor que el tamaño de la base de datos de origen.

  8. Define el tipo de almacenamiento y la capacidad de almacenamiento para la instancia de Cloud SQL.

  9. Para crear la instancia nueva, haz clic en Crear y continuar.

  10. En el cuadro de diálogo que aparece, haz clic en Crear destino y continuar. La creación de la instancia puede tardar varios minutos en completarse.

Configura la conectividad

  1. Elige cómo quieres usar la conectividad entre la base de datos de origen de la edición de Cloud SQL Enterprise y la de destino de Cloud SQL Enterprise Plus. En este procedimiento, usa la lista desplegable Método de conectividad para seleccionar La fuente y el destino usan una IP privada.
  2. En la lista desplegable VPC, selecciona la red de VPC en la que reside la instancia de Cloud SQL Enterprise de origen. Esta es la red de VPC que anotaste en Recupera información de la instancia de origen de Cloud SQL Enterprise.
  3. Haz clic en Configurar y continuar.

Prueba, crea e inicia el trabajo de migración

  1. Revisa la configuración que elegiste para el trabajo de migración.

  2. Verifica que la fuente se haya configurado de forma correcta, que las instancias de edición de Cloud SQL Enterprise y de destino de Cloud SQL Enterprise Plus de origen puedan comunicarse entre sí y que el trabajo de migración sea válido:

    1. Haz clic en Probar trabajo.

    2. Verifica que veas el estado Your migration job test was successful!.

    Si la prueba falla, puedes abordar el problema en la parte adecuada del flujo y volver a realizar la prueba.

  3. Para crear el trabajo de migración y comenzarlo de inmediato, haz clic en Crear y comenzar trabajo.

  4. En el cuadro de diálogo que aparece, haz clic en Crear y comenzar.

  5. En la página Trabajos de migración, verifica que el trabajo de migración tenga el estado Starting.

  6. Después de unos minutos, confirma que el estado cambie a Running.

Verifica el trabajo de migración

Para confirmar que Database Migration Service usó el trabajo de migración para migrar datos de tu instancia de base de datos de origen de Cloud SQL Enterprise a la de destino de Cloud SQL Enterprise Plus, completa los siguientes pasos:

  1. En la consola de Google Cloud, ve a la página Instancias de SQL.

    Ir a Instancias de Cloud SQL

  2. Haz clic en la entrada de réplica de lectura de tu trabajo de migración.

  3. Haz clic en el ícono Activar Cloud Shell que aparece junto al campo Buscar.
  4. En el mensaje, usa el comando gcloud sql connect para conectarte a la instancia de base de datos de edición de destino de Cloud SQL Enterprise Plus.

    gcloud sql connect DESTINATION_INSTANCE_NAME --user=postgres

    Reemplaza DESTINATION_INSTANCE_NAME por el nombre de la instancia de edición de Cloud SQL Enterprise Plus de destino.

  5. Opcional: Si aparece un diálogo Autoriza Cloud Shell, haz clic en Autorizar.
  6. En el mensaje Ingresar contraseña, ingresa la contraseña que proporcionaste en Define la configuración para la instancia de destino de Cloud SQL Enterprise Plus.
  1. En el cuadro de postgres, para enumerar las bases de datos y verificar que veas la instancia de base de datos de origen de Cloud SQL Enterprise, ingresa \list.
  2. En el cuadro de postgres, ingresa \connect SOURCE_DB_NAME para ver las tablas asociadas con esta instancia de base de datos. El nombre del mensaje cambia de postgres a SOURCE_DB_NAME.
  3. En la instrucción SOURCE_DB_NAME, ingresa \dt para ver las tablas de esta instancia.
  4. Cuando se te solicite SOURCE_DB_NAME, ingresa GRANT cloudsqlexternalsync to USER; para otorgar permiso a este usuario para acceder a los datos en las tablas de esta instancia.

    Reemplaza USER por el nombre del usuario que usaste para conectarte a la instancia de base de datos de destino de Cloud SQL Enterprise Plus.

  5. Cuando se te solicite SOURCE_DB_NAME, para ver la información que se replica desde una tabla en tu instancia de base de datos de origen de Cloud SQL Enterprise, ingresa SELECT * from TABLE_NAME;.
  6. Verifica que veas la información correcta en la tabla.

Promociona el trabajo de migración

Si promocionas el trabajo de migración, se reemplazará la instancia de base de datos de origen de Cloud SQL Enterprise por la de destino de Cloud SQL Enterprise Plus como instancia principal.

Para promocionar el trabajo de migración, completa los siguientes pasos:

  1. Regresa a la página Trabajos de migración.

  2. Haz clic en el trabajo de migración que deseas ascender. Aparecerá la página Detalles del trabajo de migración.

  3. Detén todas las operaciones de escritura en la base de datos de origen de Cloud SQL Enterprise.

  4. Verifica que el retraso en la replicación sea mínimo.

  5. Haz clic en el trabajo de migración que deseas ascender. Este trabajo tiene el estado Running.

  6. Para ascender el trabajo de migración, haz clic en Ascender.

  7. En el cuadro de diálogo que aparece, haz clic en Ascender.

  8. Verifica que el trabajo de migración tenga el estado Promote in progress. Después de unos minutos, confirma que el estado cambie a Completed.

Tu nueva instancia de base de datos de la edición Cloud SQL Enterprise Plus está lista para usarse.

Limpia

Para evitar que se apliquen cargos a tu cuenta de Google Cloud por los recursos que usaste en esta página, usa la consola de Google Cloud para borrar tu trabajo de migración, perfil de conexión, instancia de origen de Cloud SQL Enterprise y el proyecto si no los necesitas.

¿Qué sigue?