Actualizar una instancia a la nueva arquitectura de red,Actualizar una instancia a la nueva arquitectura de red


Esta página describe cómo actualizar sus instancias de Cloud SQL de la arquitectura de red anterior a la nueva arquitectura de red.

Esta página de actualización de la arquitectura de red de Cloud SQL solo se aplica a algunas instancias de Cloud SQL. Si sus instancias de Cloud SQL utilizan un proyecto de red de nube virtual privada (VPC) creado antes de agosto de 2021, deberá actualizar la arquitectura de red de Cloud SQL para sus instancias.

Descripción general

La siguiente tabla muestra los beneficios de la nueva arquitectura de red en comparación con la antigua arquitectura de red:

Capacidad Arquitectura de red antigua Nueva arquitectura de red
Migración de Cloud SQL a AlloyDB para PostgreSQL mediante el Servicio de migración de bases de datos Requiere que configure 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 .
Conecte su instancia de Cloud SQL mediante una IP privada a servicios privados como Cloud Build o Vertex AI No compatible debido a la intransitividad del peering de red Apoyado
Instancias que cumplen con las cargas de trabajo aseguradas No compatible Apoyado
Microsoft AD administrado No compatible Apoyado
Conexión de servicio privado No compatible Apoyado
Uso del rango de direcciones IP Rangos de direcciones IP adicionales consumidos para subredes dedicadas para instancias de IP privadas de Cloud SQL para PostgreSQL No se consumen rangos de direcciones IP adicionales para Cloud SQL para instancias de PostgreSQL
Cuota de instancia de Cloud SQL predeterminada por proyecto 100 1000

Planifique su actualización

Antes de actualizar la arquitectura de red de sus instancias de Cloud SQL, planifique la actualización según las siguientes restricciones de actualización:

  • Si actualiza la arquitectura de su red, puede esperar un tiempo de inactividad en su instancia de hasta 4 minutos en promedio.

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

  • Si se conecta a una instancia desde una fuente externa , verifique que todas las conexiones de intercambio estén actualizadas para habilitar la exportación de rutas personalizadas.

  • Si utiliza perímetros de servicio , verifique que el proyecto del host de VPC compartida esté incluido. Si no lo está, la migración fallará.

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

  • Si su red incluye dos o más instancias que usan direcciones IP privadas en la misma región, Cloud SQL debe usar uno o más rangos /24 adicionales de su rango de direcciones IP de acceso a servicios privados asignado para alojar las instancias en la nueva arquitectura de red. Este consumo adicional es temporal y se elimina durante un evento de mantenimiento posterior de Cloud SQL.

Plan para actualizar todas las instancias de Cloud SQL en un proyecto de red

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

Un proyecto de red puede operar en modo dual stack , lo que significa que puede alojar instancias de Cloud SQL simultáneamente, utilizando tanto la arquitectura de red antigua como la nueva. Esto ocurre cuando al menos una instancia del proyecto utiliza la arquitectura antigua. Como resultado, Cloud SQL no puede actualizar el proyecto a la nueva arquitectura.

Para consultar la arquitectura de red de todas las instancias dentro de un proyecto, puede utilizar gcloud CLI o la API.

Consideraciones para proyectos de doble pila

Al utilizar proyectos de doble pila, tenga en cuenta las siguientes consideraciones:

  • Actualizar una instancia implícitamente : cuando modifica la red privada de una instancia o habilita la dirección IP privada dentro de un proyecto de pila dual, Cloud SQL podría actualizar la instancia a la nueva arquitectura de red implícitamente.
  • Sin degradaciones de arquitectura : los cambios de red nunca degradan la arquitectura de red de una instancia.
  • Rechazar solicitudes : si un cambio de red necesita una degradación para completarse, Cloud SQL rechaza la solicitud.

Para evitar posibles conflictos y garantizar una actualización de la red sin problemas, le recomendamos que planifique actualizar todas las instancias del proyecto a la nueva arquitectura.

Actualice su arquitectura de red de Cloud SQL

Para actualizar la arquitectura de red de su instancia de Cloud SQL, haga lo siguiente:

  1. Verifique la arquitectura de red de una sola instancia de Cloud SQL o de varias instancias de Cloud SQL .
  2. Actualizar la arquitectura de red de una instancia de Cloud SQL .

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

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

nube g

Para obtener información sobre la instalación y los primeros pasos con la CLI de gcloud, consulte Instalar la CLI de gcloud . Para obtener información sobre cómo iniciar Cloud Shell, consulte Usar Cloud Shell .

Para comprobar la arquitectura de red de una sola instancia, ejecute el siguiente comando:

   gcloud sql instances describe INSTANCE_NAME
   

Si la instancia utiliza 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 utiliza 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 su instancia utiliza la arquitectura de red anterior ( OLD_NETWORK_ARCHITECTURE ) o la nueva arquitectura de red ( NEW_NETWORK_ARCHITECTURE ).

REST versión 1

Para comprobar la arquitectura de red de una instancia, utilice el método instances.get de la API de administración de Cloud SQL.

Antes de utilizar cualquiera de los datos solicitados, realice las siguientes sustituciones:

  • 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 utiliza la arquitectura de red antigua.
    • NEW_NETWORK_ARCHITECTURE : La instancia utiliza la nueva arquitectura de red.

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 su solicitud, expanda una de estas opciones:

Debería recibir una respuesta JSON similar a la siguiente:

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

REST v1beta4

Para comprobar la arquitectura de red de una instancia, utilice el método instances.get de la API de administración de Cloud SQL.

Antes de utilizar cualquiera de los datos solicitados, realice las siguientes sustituciones:

  • 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 utiliza la arquitectura de red antigua.
    • NEW_NETWORK_ARCHITECTURE : La instancia utiliza la nueva arquitectura de red.

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 su solicitud, expanda una de estas opciones:

Debería recibir una respuesta JSON similar a la siguiente:

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

Verifique la arquitectura de red de múltiples instancias de Cloud SQL

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

nube g

Para comprobar la arquitectura de red de varias instancias en un proyecto, ejecute el siguiente comando:

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

El resultado se parece 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 versión 1

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

Antes de utilizar cualquiera de los datos solicitados, realice las siguientes sustituciones:

  • PROJECT_ID : El ID del proyecto.
  • NETWORK_ARCHITECTURE_TYPE : El tipo de arquitectura de red como se indica a continuación:
    • OLD_NETWORK_ARCHITECTURE : La instancia utiliza la arquitectura de red antigua.
    • NEW_NETWORK_ARCHITECTURE : La instancia utiliza la nueva arquitectura de red.

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 su solicitud, expanda una de estas opciones:

Debería recibir una respuesta JSON similar a la siguiente:

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

REST v1beta4

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

Antes de utilizar cualquiera de los datos solicitados, realice las siguientes sustituciones:

  • 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 utiliza la arquitectura de red antigua.
    • NEW_NETWORK_ARCHITECTURE : La instancia utiliza la nueva arquitectura de red.

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 su solicitud, expanda una de estas opciones:

Debería recibir una respuesta JSON similar a la siguiente:

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

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

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

nube g

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

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

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

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

operation_id

REST versión 1

Para actualizar la arquitectura de red de una instancia, utilice el método instance.update o instance.patch de la API de administración de Cloud SQL.

Al actualizar 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 establecido en NEW_NETWORK_ARCHITECTURE .

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

operation_id

Antes de utilizar cualquiera de los datos solicitados, realice las siguientes sustituciones:

  • 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 utiliza la arquitectura de red antigua.
    • NEW_NETWORK_ARCHITECTURE : La instancia utiliza la nueva arquitectura de red.

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 su solicitud, expanda una de estas opciones:

Debería recibir una respuesta JSON similar a la siguiente:

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

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

REST v1beta4

Para actualizar la arquitectura de red de una instancia, utilice el instance.update method o el instance.patch method de la API de administración de Cloud SQL.

Al actualizar 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 establecido en NEW_NETWORK_ARCHITECTURE .

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

operation_id

Antes de utilizar cualquiera de los datos solicitados, realice las siguientes sustituciones:

  • 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 utiliza la arquitectura de red antigua.
    • NEW_NETWORK_ARCHITECTURE : La instancia utiliza la nueva arquitectura de red.

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 su solicitud, expanda una de estas opciones:

Debería recibir una respuesta JSON similar a la siguiente:

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

Si la actualización de su instancia falla por algún motivo, puede volver a intentar la operación de actualización.

Preguntas frecuentes

Esta sección proporciona respuestas a preguntas frecuentes sobre cómo actualizar la arquitectura de red de Cloud SQL.

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

Al actualizar la arquitectura de red, la instancia de Cloud SQL se encuentra en estado de MANTENIMIENTO. En este estado, la instancia experimenta un tiempo de inactividad de hasta cuatro minutos, en promedio. No se permiten cambios adicionales en la instancia hasta que se complete la actualización. Las demás instancias del proyecto o la red no se ven afectadas por la actualización.

¿Todas las funciones funcionan igual después de la actualización?

Todas las características de su instancia de Cloud SQL funcionan igual en la nueva arquitectura que en la anterior. Después de actualizar una instancia para usar la nueva arquitectura de red, si desea cambiar la red de esa instancia, asegúrese de que todas las instancias de la red de destino también estén actualizadas a la nueva arquitectura de red.

¿Qué instancias utilizan la antigua arquitectura de red?

Todos los proyectos nuevos creados después de agosto de 2021 utilizan automáticamente la nueva arquitectura de red. Los proyectos existentes pueden contener instancias de Cloud SQL con más de dos años de antigüedad que aún utilizan la arquitectura de red anterior. Por lo tanto, todas las instancias de un proyecto existente deben actualizarse antes de que las nuevas instancias de ese proyecto puedan empezar a utilizar la nueva arquitectura de red.

¿Todas las nuevas instancias de Cloud SQL se crean en la nueva arquitectura de red?

De forma predeterminada, las nuevas instancias de Cloud SQL creadas en proyectos creados después de agosto de 2021 utilizan la nueva arquitectura de red.

Si desea crear una instancia en un proyecto creado antes de agosto de 2021 y usar la nueva arquitectura de red, debe actualizar todas las instancias existentes de ese proyecto a la nueva arquitectura de red. Si usa una VPC compartida , debe actualizar todas las instancias de los proyectos que participan en ella.

Después de actualizar todas las instancias existentes en su proyecto, espere varias horas antes de crear instancias. Las nuevas instancias que cree en el proyecto utilizan la nueva arquitectura de red.

Si hay instancias eliminadas recientemente con la arquitectura de red anterior, debe esperar cuatro días antes de crear una nueva instancia con la nueva arquitectura de red. Este retraso facilita el proceso de restauración de una instancia eliminada.

¿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 principal?

No, la actualización a la nueva arquitectura de red se basa en cada instancia individual. Cada réplica se considera una instancia independiente y debe actualizarse por separado. Esto significa que si se actualiza la instancia principal y la réplica utiliza la arquitectura de red anterior, esta no se verá afectada. Lo contrario también es cierto: si se actualiza una réplica, la instancia principal no se verá afectada.

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

No es necesario que usted haga nada.

En algunos casos, cuando la actualización automática se realiza en una red privada, la solicitud se rechaza temporalmente. Como solución alternativa, puede actualizar la arquitectura de red de su instancia usted mismo siguiendo el procedimiento descrito en Actualizar la arquitectura de red de una sola instancia de Cloud SQL .

Al intentar 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, asigne rangos de direcciones IP cuando configure el acceso a servicios privados para la red de VPC.

Por ejemplo, si se cambia o elimina un rango de direcciones IP asignadas, es posible que aparezca 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 originalmente se llama google-managed-services-VPC_NETWORK_NAME y es 10.0.0.0/16 . A continuación, se crea una instancia con la dirección IP privada 10.0.0.1 . Si el rango de direcciones IP de google-managed-services-VPC_NETWORK_NAME se elimina o se actualiza para que haga referencia al rango 10.1.0.0/16 , este rango no cubre la dirección IP privada de la instancia 10.0.0.1 . Posteriormente, al intentar actualizar la arquitectura de red de la instancia, se produce el error outside the reserved IP address range .

Para resolver este problema, siga el procedimiento descrito en Configurar el acceso a servicios privados para Cloud SQL . Reasigne un rango de direcciones IP que incluya la dirección IP de su instancia a los rangos asignados para el acceso a servicios privados. Como mínimo, puede asignar el rango de direcciones IP indicado en el mensaje de error (en el ejemplo anterior, 10.0.0.0/24 ).

Luego vuelva a intentar la actualización de la arquitectura de red.

¿Qué sigue?