Actualiza una instancia a la nueva arquitectura de red


En esta página, se describe cómo actualizar las instancias de Cloud SQL de la arquitectura de red anterior a la nueva.

Esta página de actualización de la arquitectura de red de Cloud SQL solo se aplica a algunas instancias de Cloud SQL. Si tus instancias de Cloud SQL usan un proyecto de red de nube privada virtual (VPC) que se creó antes de agosto de 2021, debes actualizar la arquitectura de red de Cloud SQL para tus instancias.

Descripción general

En la siguiente tabla, se muestran los beneficios de la nueva arquitectura de red en comparación con la arquitectura de red anterior:

Función Arquitectura de red anterior Nueva arquitectura de red
Migra de Cloud SQL a AlloyDB para PostgreSQL y de AlloyDB para PostgreSQL a Cloud SQL con Database Migration Service Requiere que configures una dirección IP privada para la migración No se requiere configuración de red adicional.

Por ejemplo, migración de Cloud SQL a AlloyDB para PostgreSQL o migración de AlloyDB para PostgreSQL a Cloud SQL.
Conecta tu instancia de Cloud SQL con IP privada para servicios privados como Cloud Build o Vertex AI No se admite debido a la intransitividad del intercambio de tráfico entre redes Admitido
Instancias que cumplen con Assured Workloads No compatible Admitido
Microsoft AD administrado No compatible Admitido
Private Service Connect No compatible Admitido
Cuota de instancia predeterminada de Cloud SQL por proyecto 100 1000

Planifica la actualización

Antes de actualizar la arquitectura de red de tus instancias de Cloud SQL, planifica la actualización de acuerdo con las siguientes restricciones de actualización:

  • Si actualizas la arquitectura de tu red, es posible que tu instancia tenga un tiempo de inactividad de hasta 4 minutos en promedio.

  • Si hay una migración de datos en curso, no puedes actualizar la instancia de origen a la arquitectura nueva durante la migración de datos.

  • Si te conectas a una instancia desde una fuente externa, verifica que todas las conexiones de intercambio de tráfico estén actualizadas para habilitar la exportación de rutas personalizadas.

  • No puedes actualizar la arquitectura de red de las instancias en una red con más de 300 instancias de Cloud SQL.

  • Si tu red incluye dos o más instancias que usan direcciones IP privadas en la misma región, Cloud SQL debe usar un rango (o rangos) adicional /24 del rango de direcciones IP de acceso privado a los servicios asignados para alojar las instancias en la nueva arquitectura de red. Este consumo adicional es temporal y se quita durante un evento de mantenimiento posterior de Cloud SQL.

Planifica la actualización de todas las instancias de Cloud SQL en un proyecto de red

Tus instancias de Cloud SQL pueden estar en el mismo proyecto que la red de VPC o pueden estar alojadas en un proyecto independiente. El proyecto que aloja la red de VPC es el proyecto de red.

Si al menos una instancia de Cloud SQL dentro de un proyecto de red usa la arquitectura de red anterior, todo el proyecto usa la arquitectura de red anterior. En este caso, tu proyecto no se actualiza por completo a la arquitectura de red nueva.

Puedes usar la gcloud CLI o la API de Cloud SQL Admin para consultar la arquitectura de red de todas las instancias de Cloud SQL dentro de un proyecto.

Cuando modificas la red privada de una instancia o habilitas una IP privada para una instancia, no puedes modificar la arquitectura de red en la misma solicitud. Si lo haces, se rechaza la solicitud. Para evitar esto, te recomendamos que actualices todas las instancias de un proyecto de red antes de modificar el proyecto de red.

Actualiza la arquitectura de red de Cloud SQL

Para actualizar la arquitectura de red de las instancias de Cloud SQL, haz lo siguiente:

  1. Verifica la arquitectura de red de una sola instancia de Cloud SQL o de varias instancias de Cloud SQL.
  2. Actualiza la arquitectura de red de una instancia de Cloud SQL.

Verifica la arquitectura de red de una sola instancia de Cloud SQL

Para verificar la arquitectura de red actual de una sola instancia, usa el comando gcloud sql instances describe o el método instances.get.

gcloud

Para obtener información sobre cómo instalar y comenzar a usar la CLI de gcloud, consulta Instala la CLI de gcloud. Para obtener información sobre cómo iniciar Cloud Shell, consulta Usa Cloud Shell.

Para verificar la arquitectura de red de una sola instancia, ejecuta el siguiente comando:

   gcloud sql instances describe INSTANCE_NAME
   

Si la instancia usa la arquitectura de red anterior, la respuesta es similar a la siguiente:

   name: INSTANCE_NAME
   project: PROJECT_ID
   ...
   sqlNetworkArchitecture: OLD_NETWORK_ARCHITECTURE
  

Si la instancia usa la nueva arquitectura de red, la respuesta es similar a la siguiente:

   name: INSTANCE_NAME
   project: PROJECT_ID
   ...
   sqlNetworkArchitecture: NEW_NETWORK_ARCHITECTURE
  

El parámetro sqlNetworkArchitecture indica si la instancia usa la arquitectura de red anterior (OLD_NETWORK_ARCHITECTURE) o la arquitectura de red nueva (NEW_NETWORK_ARCHITECTURE).

REST v1

Para verificar la arquitectura de red de una instancia, usa el método instances.get de la API de Cloud SQL Admin.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_ID: el ID del proyecto
  • INSTANCE_NAME: El nombre de la instancia.
  • NETWORK_ARCHITECTURE_TYPE: El tipo de arquitectura de red se define de la siguiente manera:
    • OLD_NETWORK_ARCHITECTURE: La instancia usa la arquitectura de red anterior.
    • NEW_NETWORK_ARCHITECTURE: La instancia usa la arquitectura de red nueva.

Método HTTP y URL:

GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_NAME

Cuerpo JSON de la solicitud:

{
  "sqlNetworkArchitecture": "NETWORK_ARCHITECTURE_TYPE"
}

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "kind": sql#instance
  "name": INSTANCE_NAME
  "project": PROJECT_ID
  "sqlNetworkArchitecture": enum (SqlNetworkArchitecture)
  ...
}

REST v1beta4

Para verificar la arquitectura de red de una instancia, usa el método instances.get de la API de Cloud SQL Admin.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_ID: el ID del proyecto
  • INSTANCE_NAME: El nombre de la instancia.
  • NETWORK_ARCHITECTURE_TYPE: El tipo de arquitectura de red se define de la siguiente manera:
    • OLD_NETWORK_ARCHITECTURE: La instancia usa la arquitectura de red anterior.
    • NEW_NETWORK_ARCHITECTURE: La instancia usa la arquitectura de red nueva.

Método HTTP y URL:

GET https://sqladmin.googleapis.com/v1beta4/projects/PROJECT_ID/instances/INSTANCE_NAME

Cuerpo JSON de la solicitud:

{
  "sqlNetworkArchitecture": "NETWORK_ARCHITECTURE_TYPE"
}

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "kind": sql#instance
  "name": INSTANCE_NAME
  "project": PROJECT_ID
  "sqlNetworkArchitecture": enum (SqlNetworkArchitecture)
  ...
}

Verifica la arquitectura de red de varias instancias de Cloud SQL

Para verificar la arquitectura de red de varias instancias de un proyecto, usa el comando gcloud sql instances list o el método instance.list.

gcloud

Para verificar la arquitectura de red de varias instancias de un proyecto, ejecuta el siguiente comando:

gcloud sql instances list --show-sql-network-architecture

El resultado es similar al siguiente.

NAME        DATABASE_VERSION LOCATION   ...     SQL_NETWORK_ARCHITECTURE
instance_1  POSTGRES_13      asia-northeast1-b  OLD_NETWORK_ARCHITECTURE
instance_2  MYSQL_5_7        europe-west1-d     NEW_NETWORK_ARCHITECTURE
...

REST v1

Para verificar la arquitectura de red de varias instancias en un proyecto, usa el método instance.list.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_ID: el ID del proyecto
  • NETWORK_ARCHITECTURE_TYPE: El tipo de arquitectura de red de la siguiente manera:
    • OLD_NETWORK_ARCHITECTURE: La instancia usa la arquitectura de red anterior.
    • NEW_NETWORK_ARCHITECTURE: La instancia usa la arquitectura de red nueva.

Método HTTP y URL:

LIST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances

Cuerpo JSON de la solicitud:

{
  "sqlNetworkArchitecture": "NETWORK_ARCHITECTURE_TYPE"
}

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "kind": sql#instance
  "name": INSTANCE_NAME
  "project": PROJECT_ID
  "sqlNetworkArchitecture": enum (SqlNetworkArchitecture)
  ...
}

REST v1beta4

Para verificar la arquitectura de red de varias instancias en un proyecto, usa el método instance.list.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_ID: el ID del proyecto
  • NETWORK_ARCHITECTURE_TYPE: El tipo de arquitectura de red se define de la siguiente manera:
    • OLD_NETWORK_ARCHITECTURE: La instancia usa la arquitectura de red anterior.
    • NEW_NETWORK_ARCHITECTURE: La instancia usa la arquitectura de red nueva.

Método HTTP y URL:

LIST https://sqladmin.googleapis.com/v1beta4/projects/PROJECT_ID/instances

Cuerpo JSON de la solicitud:

{
  "sqlNetworkArchitecture": "NETWORK_ARCHITECTURE_TYPE"
}

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "kind": sql#instance
  "name": INSTANCE_NAME
  "project": PROJECT_ID
  "sqlNetworkArchitecture": enum (SqlNetworkArchitecture)
  ...
}

Actualiza la arquitectura de red de una sola instancia de Cloud SQL

Para actualizar la arquitectura de red de una sola instancia, usa el comando gcloud sql instances patch, el método instance.update o el método instance.patch.

gcloud

Para actualizar la arquitectura de red de una instancia, ejecuta el siguiente comando:

gcloud sql instances patch INSTANCE_NAME --upgrade-sql-network-architecture

La operación de actualización toma unos minutos.

Durante la actualización, se inicia una operación de larga duración y se muestra un token de operación:

operation_id

REST v1

Para actualizar la arquitectura de red de una instancia, usa el método instance.update o el método instance.patch de la API de Cloud SQL Admin.

Cuando actualizas la arquitectura de red de Cloud SQL, no se permiten actualizaciones adicionales de la instancia en la solicitud. El cuerpo de la solicitud contiene una instancia del objeto DatabaseInstance, con sqlNetworkArchitecture configurado como NEW_NETWORK_ARCHITECTURE.

Durante la actualización, se inicia una operación de larga duración y se muestra un token de operación:

operation_id

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_ID: el ID del proyecto
  • INSTANCE_NAME: El nombre de la instancia.
  • NETWORK_ARCHITECTURE_TYPE: El tipo de arquitectura de red se define de la siguiente manera:
    • OLD_NETWORK_ARCHITECTURE: La instancia usa la arquitectura de red anterior.
    • NEW_NETWORK_ARCHITECTURE: La instancia usa la arquitectura de red nueva.

Método HTTP y URL:

PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_NAME

Cuerpo JSON de la solicitud:

{
  "sqlNetworkArchitecture": "NETWORK_ARCHITECTURE_TYPE"
}

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "kind": sql#instance,
  "targetLink": string,
  "status": enum (SqlOperationStatus),
  "name": string,
  "insertTime": string,
  "startTime": string,
  "endTime": string
  ...
}

Si la actualización de la instancia falla, vuelve a intentar la operación de actualización.

REST v1beta4

Para actualizar la arquitectura de red de una instancia, usa instance.update method o instance.patch method de la API de Cloud SQL Admin.

Cuando actualizas la arquitectura de red de Cloud SQL, no se permiten actualizaciones adicionales de la instancia en la solicitud. El cuerpo de la solicitud contiene una instancia del objeto DatabaseInstance, con sqlNetworkArchitecture configurado como NEW_NETWORK_ARCHITECTURE.

Durante la actualización, se inicia una operación de larga duración y se muestra el siguiente token de operación:

operation_id

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_ID: el ID del proyecto
  • INSTANCE_NAME: El nombre de la instancia.
  • NETWORK_ARCHITECTURE_TYPE: El tipo de arquitectura de red se define de la siguiente manera:
    • OLD_NETWORK_ARCHITECTURE: La instancia usa la arquitectura de red anterior.
    • NEW_NETWORK_ARCHITECTURE: La instancia usa la arquitectura de red nueva.

Método HTTP y URL:

PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_NAME

Cuerpo JSON de la solicitud:

{
  "sqlNetworkArchitecture": "NETWORK_ARCHITECTURE_TYPE"
}

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "kind": sql#instance,
  "targetLink": string,
  "status": enum (SqlOperationStatus),
  "name": string,
  "insertTime": string,
  "startTime": string,
  "endTime": string
  ...
}

Si por algún motivo la actualización de la instancia falla, puedes reintentar la operación de actualización.

Preguntas frecuentes

En esta sección, se proporcionan respuestas a las preguntas frecuentes sobre la actualización de la arquitectura de red de Cloud SQL.

¿Cuál es el impacto de la actualización en mi instancia de Cloud SQL?

Cuando actualizas la arquitectura de tu red, la instancia de Cloud SQL tiene el estado MAINTENANCE. En este estado, la instancia experimenta hasta cuatro minutos de tiempo de inactividad en promedio. No se permiten cambios adicionales en la instancia hasta que se complete la actualización. Otras instancias en tu proyecto o red afectadas por la actualización.

¿Todas las funciones operan de la misma manera después de la actualización?

Todas las funciones de tu instancia de Cloud SQL operan de la misma manera en la arquitectura nueva que en la anterior. Después de actualizar una instancia para usar la nueva arquitectura de red, si deseas cambiar la red de esa instancia, asegúrate de que todas las instancias en la red de destino también se actualicen a la nueva arquitectura de red.

¿Qué instancias usa la arquitectura de red anterior?

Cualquier proyecto nuevo que se haya creado después de agosto de 2021 usará automáticamente la arquitectura de red nueva. Los proyectos existentes pueden contener instancias de Cloud SQL que tienen más de dos años y aún usan la arquitectura de red anterior. Por lo tanto, todas las instancias dentro de un proyecto existente deben actualizarse antes de que cualquier instancia nueva en ese proyecto pueda comenzar a usar la nueva arquitectura de red.

¿Se crean todas las instancias de Cloud SQL nuevas en la arquitectura de red nueva?

De forma predeterminada, las instancias nuevas de Cloud SQL que se crean en proyectos creados después de agosto de 2021 usan la arquitectura de red nueva. Si deseas crear una instancia en un proyecto creado antes de agosto de 2021 y usar la nueva arquitectura de red, debes hacer lo siguiente:

  1. Actualiza todas las instancias existentes en ese proyecto a la arquitectura de red nueva.

  2. Si tienes un contrato de asistencia de Google Cloud, crea una solicitud de asistencia para cambiar la arquitectura de red predeterminada del proyecto a la nueva arquitectura.

  3. Si no tienes un contrato de asistencia, crea tu instancia y, luego, actualízala a la nueva arquitectura de red.

Una vez que se cambia el valor predeterminado del proyecto, puedes crear instancias con la arquitectura de red nueva en ese proyecto.

Si no cambias la arquitectura de red predeterminada de tu proyecto, todas las instancias nuevas de ese proyecto usarán la arquitectura de red anterior. Luego, debes actualizar cada una de estas instancias a la nueva arquitectura de red de forma individual.

¿Es posible actualizar todas las instancias de un proyecto con un solo comando?

No, la actualización a la nueva arquitectura de red se basa en cada instancia.

¿La réplica se actualiza automáticamente si actualizo la instancia principal?

No, la actualización a la nueva arquitectura de red se basa en cada instancia individual. Cada réplica se trata como una instancia independiente y debe actualizarse por separado. Esto significa que, si la instancia principal se actualiza y la réplica usa la arquitectura de red anterior, la réplica no se ve afectada. Lo contrario también es verdadero. Si actualizas una réplica, la instancia principal no se verá afectada.

Recibí una notificación en la que se indica que se actualizará la arquitectura de red de mis instancias de Cloud SQL. ¿Qué debo hacer?

No es necesario que realices ninguna acción.

En algunas instancias, cuando la actualización automática se realiza en una red privada, la solicitud se rechaza de forma temporal. Como solución alternativa, puedes actualizar la arquitectura de red de tu instancia; para ello,, sigue el procedimiento en Actualiza la arquitectura de red de una sola instancia de Cloud SQL.

¿Por qué no puedo actualizar la arquitectura de red de mi instancia zonal?

Si la instancia está configurada con disponibilidad zonal y omitió su último evento de mantenimiento programado, es posible que tu instancia no admita la actualización a la nueva arquitectura de red. Para solucionar este problema, habilita la alta disponibilidad en tu instancia y, luego, actualiza la arquitectura de red. Después de la actualización, puedes volver a cambiar la configuración de la instancia a la disponibilidad zonal.

Cuando intento actualizar mi instancia, recibo el error “fuera del rango de direcciones IP reservadas”. ¿Qué debo hacer?

Para usar instancias de Cloud SQL en una red de VPC con IP privada, asigna rangos de direcciones IP cuando configures el acceso privado a los servicios para la red de VPC.

Por ejemplo, si se cambia o borra un rango de direcciones IP asignadas, es posible que veas un error similar al siguiente:

Network architecture upgrade not allowed for private-ip instance PROJECT_ID:INSTANCE_NAME
whose IP address range 10.0.0.0/24 is outside the reserved IP address range for
private services access. Re-allocate the IP address range for private services access and retry.

En este ejemplo, el rango de direcciones IP asignado original tiene el nombre google-managed-services-VPC_NETWORK_NAME y el rango de direcciones IP asignado original es 10.0.0.0/16. Luego, creas una instancia con una dirección IP privada de 10.0.0.1. Si se borra el rango de direcciones IP de google-managed-services-VPC_NETWORK_NAME o se actualiza para hacer referencia a un rango de 10.1.0.0/16, este rango no abarca la dirección IP privada de la instancia 10.0.0.1. Luego, cuando intentes actualizar la arquitectura de red de la instancia, verás el error outside the reserved IP address range.

A fin de resolver este problema, sigue el procedimiento en Configura el acceso privado a servicios para Cloud SQL. Reasigna un rango de direcciones IP que incluya la dirección IP de tu instancia en los rangos asignados para el acceso privado a servicios. Como mínimo, puedes asignar el rango de direcciones IP informado en el mensaje de error (en el ejemplo anterior, 10.0.0.0/24).

Luego, vuelve a intentar la actualización de la arquitectura de red.

¿Qué sigue?