Esta página descreve como atualizar suas instâncias do Cloud SQL da arquitetura de rede antiga para a nova arquitetura de rede.
Esta página de atualização da arquitetura de rede do Cloud SQL se aplica apenas a algumas instâncias do Cloud SQL. Se suas instâncias do Cloud SQL usam um projeto de rede de Nuvem Privada Virtual (VPC) criado antes de agosto de 2021, você precisa atualizar a arquitetura de rede do Cloud SQL para suas instâncias.
Visão geral
A tabela a seguir mostra os benefícios da nova arquitetura de rede em comparação com a arquitetura de rede antiga:
Capacidade | Arquitetura de rede antiga | Nova arquitetura de rede |
---|---|---|
Migrando do Cloud SQL para o AlloyDB para PostgreSQL usando o Database Migration Service | Requer que você configure um endereço IP privado para a migração | Nenhuma configuração de rede adicional é necessária. Por exemplo, do Cloud SQL para o AlloyDB para migração do PostgreSQL . |
Conecte sua instância do Cloud SQL usando IP privado para serviços privados, como Cloud Build ou Vertex AI | Não suportado devido à intransitividade do peering de rede | Suportado |
Instâncias que são compatíveis com Assured Workloads | Não suportado | Suportado |
Microsoft AD gerenciado | Não suportado | Suportado |
Conexão de serviço privado | Não suportado | Suportado |
Uso do intervalo de endereços IP | Intervalos extras de endereços IP consumidos para sub-redes dedicadas para instâncias de IP privado do Cloud SQL para PostgreSQL | Nenhum intervalo de endereço IP extra consumido para instâncias do Cloud SQL para PostgreSQL |
Cota padrão de instância do Cloud SQL por projeto | 100 | 1000 |
Planeje sua atualização
Antes de atualizar a arquitetura de rede das suas instâncias do Cloud SQL, planeje a atualização de acordo com as seguintes restrições de atualização:
Se você atualizar sua arquitetura de rede, poderá esperar um tempo de inatividade na sua instância de até 4 minutos, em média.
Se houver uma migração de dados em andamento, você não poderá atualizar a instância de origem para a nova arquitetura durante a migração de dados.
Se você se conectar a uma instância de uma fonte externa , verifique se todas as conexões de peering estão atualizadas para permitir a exportação de rotas personalizadas.
Se você estiver usando perímetros de serviço , verifique se o projeto de host da VPC compartilhada está incluído. Se este projeto não estiver incluído, a migração falhará.
Não é possível atualizar a arquitetura de rede de instâncias em uma rede com mais de 300 instâncias do Cloud SQL.
- Se a sua rede incluir duas ou mais instâncias que usam endereços IP privados na mesma região, o Cloud SQL deverá usar um intervalo (ou intervalos) /24 adicional do seu intervalo de endereços IP de acesso a serviços privados alocados para hospedar as instâncias na nova arquitetura de rede. Esse consumo adicional é temporário e será removido durante um evento de manutenção subsequente do Cloud SQL.
Planejar a atualização de todas as instâncias do Cloud SQL em um projeto de rede
Suas instâncias do Cloud SQL podem residir no mesmo projeto que a rede VPC ou em um projeto separado. O projeto que hospeda a rede VPC é o projeto de rede .
Um projeto de rede pode operar no modo de pilha dupla , o que significa que pode hospedar instâncias do Cloud SQL simultaneamente, usando as arquiteturas de rede antiga e nova. Isso ocorre quando pelo menos uma instância do projeto usa a arquitetura antiga. Como resultado, o Cloud SQL não pode atualizar o projeto para a nova arquitetura.
Para consultar a arquitetura de rede para todas as instâncias dentro de um projeto, você pode usar gcloud CLI ou a API.
Considerações para projetos de pilha dupla
Ao usar projetos de pilha dupla, tenha em mente as seguintes considerações:
- Atualizar uma instância implicitamente : quando você modifica a rede privada de uma instância ou habilita o endereço IP privado em um projeto de pilha dupla, o Cloud SQL pode atualizar a instância para a nova arquitetura de rede implicitamente.
- Sem rebaixamentos de arquitetura : mudanças na rede nunca rebaixam a arquitetura de rede de uma instância.
- Rejeitar solicitações : se uma alteração de rede precisar de um downgrade para ser concluída, o Cloud SQL rejeitará a solicitação.
Para evitar possíveis conflitos e garantir uma atualização de rede tranquila, recomendamos que você planeje atualizar todas as instâncias do projeto para a nova arquitetura.
Atualize sua arquitetura de rede do Cloud SQL
Para atualizar a arquitetura de rede da sua instância do Cloud SQL, faça o seguinte:
- Verifique a arquitetura de rede de uma única instância do Cloud SQL ou de várias instâncias do Cloud SQL .
- Atualize a arquitetura de rede de uma instância do Cloud SQL .
Verifique a arquitetura de rede de uma única instância do Cloud SQL
Para verificar a arquitetura de rede atual de uma única instância, use o comando gcloud sql instances describe
ou o método instances.get
.
gcloud
Para obter informações sobre como instalar e começar a usar a CLI do gcloud, consulte Instalar a CLI do gcloud . Para obter informações sobre como iniciar o Cloud Shell, consulte Usar o Cloud Shell .
Para verificar a arquitetura de rede de uma única instância, execute o seguinte comando:
gcloud sql instances describe INSTANCE_NAME
Se a instância usar a arquitetura de rede antiga, a resposta será semelhante à seguinte:
name: INSTANCE_NAME project: PROJECT_ID ... sqlNetworkArchitecture: OLD_NETWORK_ARCHITECTURE
Se a instância usar a nova arquitetura de rede, a resposta será semelhante à seguinte:
name: INSTANCE_NAME project: PROJECT_ID ... sqlNetworkArchitecture: NEW_NETWORK_ARCHITECTURE
O parâmetro sqlNetworkArchitecture
indica se sua instância usa a arquitetura de rede antiga ( OLD_NETWORK_ARCHITECTURE
) ou a nova arquitetura de rede ( NEW_NETWORK_ARCHITECTURE
).
REST v1
Para verificar a arquitetura de rede de uma instância, use o método instances.get
da API de administração do Cloud SQL.
Antes de usar qualquer um dos dados solicitados, faça as seguintes substituições:
- PROJECT_ID : O ID do projeto.
- INSTANCE_NAME : O nome da instância.
- NETWORK_ARCHITECTURE_TYPE : O tipo de arquitetura de rede é definido da seguinte forma:
-
OLD_NETWORK_ARCHITECTURE
: A instância usa a arquitetura de rede antiga. -
NEW_NETWORK_ARCHITECTURE
: A instância usa a nova arquitetura de rede.
-
Método HTTP e URL:
GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_NAME
Corpo JSON da solicitação:
{ "sqlNetworkArchitecture": "NETWORK_ARCHITECTURE_TYPE" }
Para enviar sua solicitação, expanda uma destas opções:
Você deve receber uma resposta JSON semelhante à seguinte:
{ "kind": sql#instance "name": INSTANCE_NAME "project": PROJECT_ID "sqlNetworkArchitecture": enum (SqlNetworkArchitecture) ... }
REST v1beta4
Para verificar a arquitetura de rede de uma instância, use o método instances.get
da API de administração do Cloud SQL.
Antes de usar qualquer um dos dados solicitados, faça as seguintes substituições:
- PROJECT_ID : O ID do projeto.
- INSTANCE_NAME : O nome da instância.
- NETWORK_ARCHITECTURE_TYPE : O tipo de arquitetura de rede é definido da seguinte forma:
-
OLD_NETWORK_ARCHITECTURE
: A instância usa a arquitetura de rede antiga. -
NEW_NETWORK_ARCHITECTURE
: A instância usa a nova arquitetura de rede.
-
Método HTTP e URL:
GET https://sqladmin.googleapis.com/v1beta4/projects/PROJECT_ID/instances/INSTANCE_NAME
Corpo JSON da solicitação:
{ "sqlNetworkArchitecture": "NETWORK_ARCHITECTURE_TYPE" }
Para enviar sua solicitação, expanda uma destas opções:
Você deve receber uma resposta JSON semelhante à seguinte:
{ "kind": sql#instance "name": INSTANCE_NAME "project": PROJECT_ID "sqlNetworkArchitecture": enum (SqlNetworkArchitecture) ... }
Verifique a arquitetura de rede de várias instâncias do Cloud SQL
Para verificar a arquitetura de rede de várias instâncias em um projeto, use o comando gcloud sql instances list
ou o método instance.list
.
gcloud
Para verificar a arquitetura de rede de várias instâncias em um projeto, execute o seguinte comando:
gcloud sql instances list --show-sql-network-architecture
A saída é semelhante à seguinte.
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 a arquitetura de rede de várias instâncias em um projeto, use o método instance.list
.
Antes de usar qualquer um dos dados solicitados, faça as seguintes substituições:
- PROJECT_ID : O ID do projeto.
- NETWORK_ARCHITECTURE_TYPE : O tipo de arquitetura de rede da seguinte forma:
-
OLD_NETWORK_ARCHITECTURE
: A instância usa a arquitetura de rede antiga. -
NEW_NETWORK_ARCHITECTURE
: A instância usa a nova arquitetura de rede.
-
Método HTTP e URL:
LIST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances
Corpo JSON da solicitação:
{ "sqlNetworkArchitecture": "NETWORK_ARCHITECTURE_TYPE" }
Para enviar sua solicitação, expanda uma destas opções:
Você deve receber uma resposta JSON semelhante à seguinte:
{ "kind": sql#instance "name": INSTANCE_NAME "project": PROJECT_ID "sqlNetworkArchitecture": enum (SqlNetworkArchitecture) ... }
REST v1beta4
Para verificar a arquitetura de rede de várias instâncias em um projeto, use o método instance.list
.
Antes de usar qualquer um dos dados solicitados, faça as seguintes substituições:
- PROJECT_ID : O ID do projeto.
- NETWORK_ARCHITECTURE_TYPE : O tipo de arquitetura de rede é definido da seguinte forma:
-
OLD_NETWORK_ARCHITECTURE
: A instância usa a arquitetura de rede antiga. -
NEW_NETWORK_ARCHITECTURE
: A instância usa a nova arquitetura de rede.
-
Método HTTP e URL:
LIST https://sqladmin.googleapis.com/v1beta4/projects/PROJECT_ID/instances
Corpo JSON da solicitação:
{ "sqlNetworkArchitecture": "NETWORK_ARCHITECTURE_TYPE" }
Para enviar sua solicitação, expanda uma destas opções:
Você deve receber uma resposta JSON semelhante à seguinte:
{ "kind": sql#instance "name": INSTANCE_NAME "project": PROJECT_ID "sqlNetworkArchitecture": enum (SqlNetworkArchitecture) ... }
Atualizar a arquitetura de rede de uma única instância do Cloud SQL
Para atualizar a arquitetura de rede de uma única instância, use o comando gcloud sql instances patch
, o método instance.update
ou o método instance.patch
.
gcloud
Para atualizar a arquitetura de rede de uma instância, execute o seguinte comando:
gcloud sql instances patch INSTANCE_NAME --upgrade-sql-network-architecture
A operação de atualização leva alguns minutos.
Durante a atualização, uma operação de longa execução é iniciada e um token de operação é retornado:
operation_id
REST v1
Para atualizar a arquitetura de rede de uma instância, use o método instance.update
ou instance.patch
da API de administração do Cloud SQL.
Ao atualizar a arquitetura de rede do Cloud SQL, nenhuma atualização adicional da instância é permitida na solicitação. O corpo da solicitação contém uma instância do objeto DatabaseInstance
, com sqlNetworkArchitecture
definido como NEW_NETWORK_ARCHITECTURE
.
Durante a atualização, uma operação de longa execução é iniciada e um token de operação é retornado:
operation_id
Antes de usar qualquer um dos dados solicitados, faça as seguintes substituições:
- PROJECT_ID : O ID do projeto.
- INSTANCE_NAME : O nome da instância.
- NETWORK_ARCHITECTURE_TYPE : O tipo de arquitetura de rede é definido da seguinte forma:
-
OLD_NETWORK_ARCHITECTURE
: A instância usa a arquitetura de rede antiga. -
NEW_NETWORK_ARCHITECTURE
: A instância usa a nova arquitetura de rede.
-
Método HTTP e URL:
PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_NAME
Corpo JSON da solicitação:
{ "sqlNetworkArchitecture": "NETWORK_ARCHITECTURE_TYPE" }
Para enviar sua solicitação, expanda uma destas opções:
Você deve receber uma resposta JSON semelhante à seguinte:
{ "kind": sql#instance, "targetLink": string, "status": enum (SqlOperationStatus), "name": string, "insertTime": string, "startTime": string, "endTime": string ... }
Se a atualização da sua instância falhar, tente realizar a operação de atualização novamente.
REST v1beta4
Para atualizar a arquitetura de rede de uma instância, use o instance.update method
ou o instance.patch method
da API de administração do Cloud SQL.
Ao atualizar a arquitetura de rede do Cloud SQL, nenhuma atualização adicional da instância é permitida na solicitação. O corpo da solicitação contém uma instância do objeto DatabaseInstance
, com sqlNetworkArchitecture
definido como NEW_NETWORK_ARCHITECTURE
.
Durante a atualização, uma operação de longa execução é iniciada e o seguinte token de operação é retornado:
operation_id
Antes de usar qualquer um dos dados solicitados, faça as seguintes substituições:
- PROJECT_ID : O ID do projeto.
- INSTANCE_NAME : O nome da instância.
- NETWORK_ARCHITECTURE_TYPE : O tipo de arquitetura de rede é definido da seguinte forma:
-
OLD_NETWORK_ARCHITECTURE
: A instância usa a arquitetura de rede antiga. -
NEW_NETWORK_ARCHITECTURE
: A instância usa a nova arquitetura de rede.
-
Método HTTP e URL:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_NAME
Corpo JSON da solicitação:
{ "sqlNetworkArchitecture": "NETWORK_ARCHITECTURE_TYPE" }
Para enviar sua solicitação, expanda uma destas opções:
Você deve receber uma resposta JSON semelhante à seguinte:
{ "kind": sql#instance, "targetLink": string, "status": enum (SqlOperationStatus), "name": string, "insertTime": string, "startTime": string, "endTime": string ... }
Se a atualização da sua instância falhar por qualquer motivo, você poderá tentar a operação de atualização novamente.
Perguntas frequentes
Esta seção fornece respostas para perguntas frequentes sobre como atualizar sua arquitetura de rede do Cloud SQL.
- Qual é o impacto da atualização na minha instância do Cloud SQL?
- Todos os recursos funcionam da mesma forma após a atualização?
- Quais instâncias usam a arquitetura de rede antiga?
- Todas as novas instâncias do Cloud SQL são criadas na nova arquitetura de rede?
- É possível atualizar todas as instâncias de um projeto com um único comando?
- A réplica será atualizada automaticamente se eu atualizar o primário?
- Recebi uma notificação de que a arquitetura de rede das minhas instâncias do Cloud SQL será atualizada. O que preciso fazer?
- Ao tentar atualizar minha instância, recebo o erro "fora do intervalo de endereços IP reservado". O que preciso fazer?
Qual é o impacto da atualização na minha instância do Cloud SQL?
Ao atualizar a arquitetura de rede, a instância do Cloud SQL entra no estado de MANUTENÇÃO. Nesse estado, a instância fica inativa por até quatro minutos, em média. Alterações adicionais na instância não são permitidas até que a atualização seja concluída. Outras instâncias no seu projeto ou rede não são afetadas pela atualização.
Todos os recursos funcionam da mesma forma após a atualização?
Todos os recursos da sua instância do Cloud SQL funcionam da mesma forma na nova arquitetura e na arquitetura antiga. Após atualizar uma instância para usar a nova arquitetura de rede, se você quiser alternar a rede dessa instância, certifique-se de que todas as instâncias na rede de destino também sejam atualizadas para a nova arquitetura de rede.
Quais instâncias usam a arquitetura de rede antiga?
Todos os novos projetos criados após agosto de 2021 usarão automaticamente a nova arquitetura de rede. Projetos existentes podem conter instâncias do Cloud SQL com mais de dois anos e que ainda usam a arquitetura de rede antiga. Portanto, todas as instâncias de um projeto existente devem ser atualizadas antes que novas instâncias nesse projeto possam começar a usar a nova arquitetura de rede.
Todas as novas instâncias do Cloud SQL são criadas na nova arquitetura de rede?
Por padrão, novas instâncias do Cloud SQL criadas em projetos criados após agosto de 2021 usam a nova arquitetura de rede.
Se você quiser criar uma instância em um projeto criado antes de agosto de 2021 e usar a nova arquitetura de rede, será necessário atualizar todas as suas instâncias existentes nesse projeto para a nova arquitetura de rede. Se estiver usando uma VPC Compartilhada , será necessário atualizar todas as instâncias nos projetos que participam da VPC Compartilhada.
Após atualizar todas as instâncias existentes no seu projeto, aguarde algumas horas antes de criar qualquer instância. As novas instâncias criadas no projeto usarão a nova arquitetura de rede.
Se houver instâncias excluídas recentemente com a arquitetura de rede antiga, será necessário aguardar quatro dias antes de criar uma nova instância com a nova arquitetura de rede. Esse atraso acomoda o processo de restauração de uma instância excluída.
É possível atualizar todas as instâncias de um projeto com um único comando?
Não, a atualização para a nova arquitetura de rede é baseada em cada instância.
A réplica será atualizada automaticamente se eu atualizar o primário?
Não, a atualização para a nova arquitetura de rede é baseada em cada instância individual. Cada réplica é tratada como uma instância separada e deve ser atualizada separadamente. Isso significa que, se a primária for atualizada e a réplica estiver usando a arquitetura de rede antiga, a réplica não será afetada. O oposto também é verdadeiro. Se você atualizar uma réplica, a primária não será afetada.
Recebi uma notificação de que a arquitetura de rede das minhas instâncias do Cloud SQL será atualizada. O que preciso fazer?
Nenhuma ação é necessária da sua parte.
Em alguns casos, quando a atualização automática ocorre em uma rede privada, a solicitação é temporariamente rejeitada. Como solução alternativa, você pode atualizar a arquitetura de rede da sua instância seguindo o procedimento em Atualizar a arquitetura de rede de uma única instância do Cloud SQL .
Ao tentar atualizar minha instância, recebo o erro "fora do intervalo de endereços IP reservado". O que preciso fazer?
Para usar instâncias do Cloud SQL em uma rede VPC com IP privado, aloque intervalos de endereços IP ao configurar o acesso a serviços privados para a rede VPC.
Por exemplo, se um intervalo de endereços IP alocados for alterado ou excluído, você poderá encontrar um erro semelhante ao seguinte:
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.
Neste exemplo, o intervalo de endereços IP alocado originalmente é chamado google-managed-services-VPC_NETWORK_NAME
e o intervalo de endereços IP alocado originalmente é 10.0.0.0/16
. Em seguida, você cria uma instância com um endereço IP privado de 10.0.0.1
. Se o intervalo de endereços IP de google-managed-services-VPC_NETWORK_NAME
for excluído ou atualizado para se referir a um intervalo de 10.1.0.0/16
, esse intervalo não abrangerá o endereço IP privado da instância, 10.0.0.1
. Posteriormente, ao tentar atualizar a arquitetura de rede da sua instância, você encontrará o erro outside the reserved IP address range
.
Para resolver esse problema, siga o procedimento em Configurar acesso a serviços privados para o Cloud SQL . Realoque um intervalo de endereços IP que inclua o endereço IP da sua instância nos intervalos alocados para acesso a serviços privados. No mínimo, você pode alocar o intervalo de endereços IP relatado na sua mensagem de erro (no exemplo anterior, 10.0.0.0/24
).
Em seguida, tente atualizar a arquitetura de rede novamente.
O que vem a seguir
- Saiba mais sobre o Private Service Connect
- Saiba mais sobre Cargas de Trabalho Asseguradas
- Saiba mais sobre Configurar acesso de serviço privado para o Cloud SQL
- Saiba mais sobre o serviço de migração de banco de dados para AlloyDB para PostgreSQL