Esta pÔgina descreve como configurar uma instância do Cloud SQL para usar o IP privado.
Para ver informações sobre como funciona o IP privado, bem como os requisitos de gestão e ambiente, consulte o artigo IP privado.
Antes de comeƧar
Requisitos da API e da IAM
- Tem de ativar a API Service Networking para o seu Cloud de Confiance projeto.
- Para gerir uma ligação de acesso a serviços privados, o utilizador tem de ter as seguintes autorizações de gestão de identidade e de acesso (IAM). Se não tiver as autorizações necessÔrias, pode receber erros de autorizações insuficientes.
compute.networks.listcompute.addresses.createcompute.addresses.listservicenetworking.services.addPeering
Se estiver a usar uma rede VPC partilhada, também tem de adicionar o utilizador ao projeto anfitrião e atribuir as mesmas autorizações ao utilizador no projeto anfitrião.
Se estiver a usar uma rede VPC partilhada, também tem de ativar esta API para o projeto anfitrião.
Acesso a serviƧos privados
Quando cria uma nova rede de nuvem virtual privada (VPC) no seu projeto, tem de configurar o acesso privado a serviços para atribuir um intervalo de endereços IP e criar uma ligação de serviço privado. Isto permite que os recursos na rede VPC se liguem a instâncias do Cloud SQL. A consola Cloud de Confiance oferece um assistente para ajudar a configurar esta configuração.
Configure uma instância para usar o IP privado
Pode configurar uma instância do Cloud SQL para usar o IP privado quando criar a instância ou para uma instância existente.
Configure o IP privado para uma nova instância
Para configurar uma instância do Cloud SQL para usar o IP privado ao criar uma instância:
Consola
-
Na Cloud de Confiance consola, aceda à pÔgina Instâncias do Cloud SQL.
- Clique em Criar instância.
- Expanda Mostrar opções de configuração.
- Expanda LigaƧƵes.
- Selecione IP privado.
Uma lista pendente mostra as redes VPC disponĆveis no seu projeto. Se o seu projeto for o projeto de serviƧo de uma VPC partilhada, tambĆ©m sĆ£o apresentadas as redes VPC do projeto anfitriĆ£o.
- Selecione a rede de VPC que quer usar.
- Clique em Configurar associação.
- Na secção Atribua um intervalo de IPs, selecione uma das seguintes
opƧƵes:
- Selecione um ou mais intervalos de IP existentes ou crie um novo no menu pendente. O menu pendente inclui intervalos atribuĆdos anteriormente, se existirem, ou pode selecionar Atribuir um novo intervalo de IPs e introduzir um novo intervalo e nome.
- Use um intervalo de IP atribuĆdo automaticamente na sua rede.
- Clique em Continuar.
- Clique em Criar associação.
- Confirme se vĆŖ a mensagem:
Private service connection for network VPC_NETWORK_NAME has been successfully created. - Opcionalmente, pode especificar um intervalo de IPs atribuĆdo para as suas instĆ¢ncias usarem para ligaƧƵes.
- Expanda a opção Mostrar intervalo de IPs atribuĆdos.
- Selecione um intervalo de IPs no menu pendente.
- Opcional. Se quiser permitir que outros Cloud de Confiance by S3NS serviços, como o BigQuery, acedam aos dados no Cloud SQL e façam consultas a estes dados através de uma ligação de IP privada, selecione Ativar caminho privado.
- Conclua a configuração da instância.
- Clique em Criar instância.
Se vir uma mensagem a indicar que tem de configurar uma ligação de serviço privado, faça o seguinte:
gcloud
Antes de criar uma instância com um endereço IP privado, certifique-se de que o seu projeto estÔ configurado para o acesso a serviços privados.
Antes de usar qualquer um dos dados do pedido, faƧa as seguintes substituiƧƵes:
INSTANCE_ID: o ID da instĆ¢nciaPROJECT_ID: o ID do projetoNETWORK_PROJECT_ID: o ID do projeto da rede VPCVPC_NETWORK_NAME: o nome da rede da VPCRANGE_NAME: opcional. Se especificado, define um nome de intervalo para o qual Ć© atribuĆdo um intervalo de IPs. O nome do intervalo tem de estar em conformidade comRFC-1035e conter entre 1 e 63 carateres.DATABASE_VERSION: a versĆ£o da base de dados PostgreSQL (por exemplo,POSTGRES_14)NUMBER_OF_CPU: o nĆŗmero de CPUsMEMORY_IN_GB: a quantidade de memória (em GB)REGION_NAME: o nome da regiĆ£o
--network. Para desativar o IP pĆŗblico, use a flag --no-assign-ip.
Além disso, opcionalmente, use o parâmetro --enable-google-private-path para permitir que outros Cloud de Confiance serviços, como o
BigQuery, acedam aos dados no Cloud SQL e faƧam consultas a estes
dados através de uma ligação IP privada. Este parâmetro só é vÔlido se:
- Usar o parâmetro
--no-assign-ip. - Use o parâmetro
--networkpara especificar o nome da rede VPC que quer usar para criar uma ligação privada.
--enforce-new-network-architecture.
Certifique-se de que atribuiu endereƧos IP suficientes. Quando usa a aplicação da nova arquitetura de rede antes de um projeto ser totalmente atualizado, pode ocorrer uma falha na criação de instĆ¢ncias se nĆ£o houver espaƧo de endereƧo IP suficiente disponĆvel.
Para mais informaƧƵes, consulte os artigos
Atualize uma instância para a nova arquitetura de rede e Atribua um intervalo de endereços IP.
gcloud beta sql instances create INSTANCE_ID \ --project=PROJECT_ID \ --network=projects/NETWORK_PROJECT_ID/global/networks/VPC_NETWORK_NAME \ --no-assign-ip \ --allocated-ip-range-name=RANGE_NAME \ --enable-google-private-path \ --database-version=DATABASE_VERSION \ --cpu=NUMBER_OF_CPU \ --memory=MEMORY_IN_GB \ --region=REGION_NAME \ --enforce-new-network-architecture
Terraform
Para configurar o IP privado para uma nova instância, use os seguintes recursos do Terraform:
google_compute_networkgoogle_compute_global_addressgoogle_service_networking_connectiongoogle_sql_database_instance
Aplique as alteraƧƵes
Para aplicar a configuração do Terraform num Cloud de Confiance projeto, conclua os passos nas secções seguintes.
Prepare o Cloud Shell
- Inicie o Cloud Shell.
-
Defina o Cloud de Confiance projeto predefinido onde quer aplicar as suas configuraƧƵes do Terraform.
Só tem de executar este comando uma vez por projeto e pode executÔ-lo em qualquer diretório.
export GOOGLE_CLOUD_PROJECT=PROJECT_ID
As variĆ”veis de ambiente sĆ£o substituĆdas se definir valores explĆcitos no ficheiro de configuração do Terraform.
Prepare o diretório
Cada ficheiro de configuração do Terraform tem de ter o seu próprio diretório (também denominado módulo raiz).
-
No Cloud Shell, crie um diretório e um novo ficheiro nesse diretório. O nome do ficheiro tem de ter a extensão
.tf, por exemplo,main.tf. Neste tutorial, o ficheiro Ć© denominadomain.tf.mkdir DIRECTORY && cd DIRECTORY && touch main.tf
-
Se estiver a seguir um tutorial, pode copiar o código de exemplo em cada secção ou passo.
Copie o exemplo de código para o
main.tfcriado recentemente.Opcionalmente, copie o código do GitHub. Isto é recomendado quando o fragmento do Terraform faz parte de uma solução completa.
- Reveja e modifique os parâmetros de exemplo para aplicar ao seu ambiente.
- Guarde as alteraƧƵes.
-
Inicialize o Terraform. Só tem de fazer isto uma vez por diretório.
terraform init
Opcionalmente, para usar a versão mais recente do fornecedor Google, inclua a opção
-upgrade:terraform init -upgrade
Aplique as alteraƧƵes
-
Reveja a configuração e verifique se os recursos que o Terraform vai criar ou
atualizar correspondem Ć s suas expetativas:
terraform plan
Faça correções à configuração conforme necessÔrio.
-
Aplique a configuração do Terraform executando o seguinte comando e introduzindo
yesno comando:terraform apply
Aguarde atĆ© que o Terraform apresente a mensagem "Apply complete!" (Aplicação concluĆda!).
- Abra o seu Cloud de Confiance projeto para ver os resultados. Na Cloud de Confiance consola, navegue para os seus recursos na IU para se certificar de que o Terraform os criou ou atualizou.
Eliminar as alteraƧƵes
Para eliminar as alteraƧƵes, faƧa o seguinte:
- Para desativar a proteção contra eliminação, no ficheiro de configuração do Terraform, defina o argumento
deletion_protectioncomofalse.deletion_protection = "false"
- Aplique a configuração do Terraform atualizada executando o seguinte comando e
introduzindo
yesno comando:terraform apply
-
Remova os recursos aplicados anteriormente com a sua configuração do Terraform executando o seguinte comando e introduzindo
yesno comando:terraform destroy
REST v1
Crie uma nova instância com um endereço IP privado:
Antes de usar qualquer um dos dados do pedido, faƧa as seguintes substituiƧƵes:
- PROJECT_ID: O ID do projeto
- INSTANCE_ID: O ID da instância
- VPC_NETWORK_NAME: Especifique o nome da rede de nuvem virtual privada (VPC) que quer usar para esta instância. O acesso a serviços privados jÔ tem de estar configurado para a rede.
- RANGE_NAME: Opcional. Se especificado, define um nome de intervalo para o qual Ć© alocado um intervalo de IP. O nome do intervalo tem de estar em conformidade com
RFC-1035e conter entre 1 e 63 carateres. - AUTHORIZED_NETWORKS: Para ligações de IP público, especifique as ligações de redes autorizadas que podem estabelecer ligação à sua instância.
Para o parâmetro ipv4Enabled, defina o valor como true
se estiver a usar um endereço IP público para a sua instância ou false se a sua instância tiver um
endereƧo IP privado.
Se definir o parâmetro enablePrivatePathForGoogleCloudServices como true,
permite que outros Cloud de Confiance by S3NS serviƧos, como o BigQuery, acedam aos dados no
Cloud SQL e façam consultas a estes dados através de uma ligação IP privada. Se definir este parâmetro como
false, outros Cloud de Confiance by S3NS serviços não podem aceder a dados no Cloud SQL através de uma ligação IP privada.
Pode usar o campo sqlNetworkArchitecture para aplicar a utilização da nova arquitetura de rede à instância no momento da criação, mesmo que o projeto não esteja totalmente atualizado.
Para mais detalhes sobre a nova arquitetura de rede e as respetivas implicaƧƵes, consulte os artigos
Atualize uma instância para a nova arquitetura de rede e Atribua um intervalo de endereços IP.
MƩtodo HTTP e URL:
POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances
Corpo JSON do pedido:
{
"name": "INSTANCE_ID",
"region": "region",
"databaseVersion": "database-version",
"settings": {
"tier": "machine-type",
"ipConfiguration": {
"ipv4Enabled": false,
"privateNetwork": "projects/PROJECT_ID/global/networks/VPC_NETWORK_NAME",
"allocatedIpRange": "RANGE_NAME"
"authorizedNetworks": [AUTHORIZED_NETWORKS],
"enablePrivatePathForGoogleCloudServices": true
}
},
"sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE"
}
Para enviar o seu pedido, expanda uma destas opƧƵes:
Deve receber uma resposta JSON semelhante Ć seguinte:
REST v1beta4
Crie uma nova instância com um endereço IP privado:
Antes de usar qualquer um dos dados do pedido, faƧa as seguintes substituiƧƵes:
- PROJECT_ID: O ID do projeto
- INSTANCE_ID: O ID da instância
- VPC_NETWORK_NAME: Especifique o nome da rede de nuvem virtual privada (VPC) que quer usar para esta instância. O acesso a serviços privados jÔ tem de estar configurado para a rede.
- RANGE_NAME: Opcional. Se especificado, define um nome de intervalo para o qual Ć© alocado um intervalo de IP. O nome do intervalo tem de estar em conformidade com
RFC-1035e conter entre 1 e 63 carateres. - AUTHORIZED_NETWORKS: Para ligações de IP público, especifique as ligações de redes autorizadas que podem estabelecer ligação à sua instância.
Para o parâmetro ipv4Enabled, defina o valor como true
se estiver a usar um endereço IP público para a sua instância ou false se a sua instância tiver um
endereƧo IP privado.
Se definir o parâmetro enablePrivatePathForGoogleCloudServices como true,
permite que outros Cloud de Confiance by S3NS serviƧos, como o BigQuery, acedam aos dados no
Cloud SQL e façam consultas a estes dados através de uma ligação IP privada. Se definir este parâmetro como
false, outros Cloud de Confiance by S3NS serviços não podem aceder a dados no Cloud SQL através de uma ligação IP privada.
Pode usar o campo sqlNetworkArchitecture para aplicar a utilização da nova arquitetura de rede à instância no momento da criação, mesmo que o projeto não esteja totalmente atualizado.
Para mais detalhes sobre a nova arquitetura de rede e as respetivas implicaƧƵes, consulte os artigos
Atualize uma instância para a nova arquitetura de rede e Atribua um intervalo de endereços IP.
MƩtodo HTTP e URL:
POST https://sqladmin.googleapis.com/v1beta4/projects/PROJECT_ID/instances
Corpo JSON do pedido:
{
"name": "INSTANCE_ID",
"region": "region",
"databaseVersion": "database-version",
"settings": {
"tier": "machine-type",
"ipConfiguration": {
"ipv4Enabled": false,
"privateNetwork": "projects/PROJECT_ID/global/networks/VPC_NETWORK_NAME",
"allocatedIpRange": "RANGE_NAME"
"authorizedNetworks": [AUTHORIZED_NETWORKS],
"enablePrivatePathForGoogleCloudServices": true
}
},
"sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE"
}
Para enviar o seu pedido, expanda uma destas opƧƵes:
Deve receber uma resposta JSON semelhante Ć seguinte:
Configure o IP privado para uma instância existente
A configuração de uma instância do Cloud SQL existente para usar o IP privado faz com que a instância seja reiniciada, o que resulta em tempo de inatividade.
Para configurar uma instância existente para usar o IP privado:
Consola
-
Na Cloud de Confiance consola, aceda à pÔgina Instâncias do Cloud SQL.
- Para abrir a pÔgina Vista geral de uma instância, clique no nome da instância.
- Selecione Associações no menu de navegação do Cloud SQL.
- No separador Rede, selecione a caixa de verificação IP privado.
Uma lista pendente mostra as redes disponĆveis no seu projeto.
- Selecione a rede de VPC que quer usar:
- Clique em Configurar associação.
- Na secção Atribua um intervalo de IPs, escolha uma das seguintes opções:
- Selecione um ou mais intervalos de IP existentes ou crie um novo no menu pendente. O menu pendente inclui intervalos atribuĆdos anteriormente, se existirem, ou pode selecionar Atribuir um novo intervalo de IPs e introduzir um novo intervalo e nome.
- Use um intervalo de IP atribuĆdo automaticamente na sua rede.
- Clique em Continuar.
- Clique em Criar associação.
- Verifique se vê o estado Ligação de serviço privada para a rede
VPC_NETWORK_NAMEcriada com êxito. - Opcional. Se quiser permitir que outros Cloud de Confiance serviços, como o BigQuery, acedam a dados no Cloud SQL e façam consultas a estes dados através de uma ligação IP privada, selecione a caixa de verificação Ativar caminho privado.
- Clique em Guardar.
Se vir a mensagem Ligação de serviço privada necessÔria:
gcloud
Certifique-se de que o seu projeto estƔ configurado para o acesso a serviƧos privados.
Atualize a instância do Cloud SQL com o parâmetro --network para especificar o nome da rede VPC selecionada.
Para aplicar a utilização da nova arquitetura de rede à instância quando adicionar uma configuração de rede IP privada, use a flag --enforce-new-network-architecture.
Certifique-se de que atribuiu espaƧo de endereƧo IP suficiente no seu intervalo de IPs.
Quando usa a aplicação da nova arquitetura de rede antes de um projeto ser totalmente atualizado, pode ocorrer uma falha na criação de instĆ¢ncias se nĆ£o houver espaƧo de endereƧo IP suficiente disponĆvel.
Para mais informações, consulte os artigos Atualize uma instância para a nova arquitetura de rede e Atribua um intervalo de endereços IP.
gcloud beta sql instances patch INSTANCE_ID \ --project=PROJECT_ID \ --network=projects/NETWORK_PROJECT_ID/global/networks/VPC_NETWORK_NAME \ --no-assign-ip \ --enable-google-private-path \ --enforce-new-network-architecture
REST v1
Crie uma nova instância com um endereço IP privado:
Antes de usar qualquer um dos dados do pedido, faƧa as seguintes substituiƧƵes:
- PROJECT_ID: O ID do projeto
- INSTANCE_ID: O ID da instância
- VPC_NETWORK_NAME: Especifique o nome da rede de nuvem virtual privada (VPC) que quer usar para esta instância. O acesso a serviços privados jÔ tem de estar configurado para a rede.
- RANGE_NAME: Opcional. Se especificado, define um nome de intervalo para o qual Ć© alocado um intervalo de IP. O nome do intervalo tem de estar em conformidade com
RFC-1035e conter entre 1 e 63 carateres. - AUTHORIZED_NETWORKS: Para ligações de IP público, especifique as ligações de redes autorizadas que podem estabelecer ligação à sua instância.
Para o parâmetro ipv4Enabled, defina o valor como true
se estiver a usar um endereço IP público para a sua instância ou false se a sua instância tiver um
endereƧo IP privado.
Se definir o parâmetro enablePrivatePathForGoogleCloudServices como true,
permite que outros Cloud de Confiance by S3NS serviƧos, como o BigQuery, acedam aos dados no
Cloud SQL e façam consultas a estes dados através de uma ligação IP privada. Se definir este parâmetro como
false, outros Cloud de Confiance by S3NS serviços não podem aceder a dados no Cloud SQL através de uma ligação IP privada.
Pode usar o campo sqlNetworkArchitecture para aplicar a utilização da nova arquitetura de rede à instância no momento da criação, mesmo que o projeto não esteja totalmente atualizado.
Para mais detalhes sobre a nova arquitetura de rede e as respetivas implicaƧƵes, consulte os artigos
Atualize uma instância para a nova arquitetura de rede e Atribua um intervalo de endereços IP.
MƩtodo HTTP e URL:
PATCH https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/instances/INSTANCE_ID
Corpo JSON do pedido:
{
"settings":
{
"ipConfiguration": {
"ipv4Enabled": false,
"privateNetwork": "projects/PROJECT_ID/global/networks/VPC_NETWORK_NAME",
"allocatedIpRange": "RANGE_NAME"
"authorizedNetworks": [AUTHORIZED_NETWORKS],
"enablePrivatePathForGoogleCloudServices": true
}
},
"sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE"
}
Para enviar o seu pedido, expanda uma destas opƧƵes:
Deve receber uma resposta JSON semelhante Ć seguinte:
REST v1beta4
Crie uma nova instância com um endereço IP privado:
Antes de usar qualquer um dos dados do pedido, faƧa as seguintes substituiƧƵes:
- PROJECT_ID: O ID do projeto
- INSTANCE_ID: O ID da instância
- VPC_NETWORK_NAME: Especifique o nome da rede de nuvem virtual privada (VPC) que quer usar para esta instância. O acesso a serviços privados jÔ tem de estar configurado para a rede.
- RANGE_NAME: Opcional. Se especificado, define um nome de intervalo para o qual Ć© alocado um intervalo de IP. O nome do intervalo tem de estar em conformidade com
RFC-1035e conter entre 1 e 63 carateres. - AUTHORIZED_NETWORKS: para ligações de IP público, especifique as ligações de redes autorizadas que podem estabelecer ligação à sua instância.
Para o parâmetro ipv4Enabled, defina o valor como true
se estiver a usar um endereço IP público para a sua instância ou false se a sua instância tiver um
endereƧo IP privado.
Se definir o parâmetro enablePrivatePathForGoogleCloudServices como true,
permite que outros Cloud de Confiance by S3NS serviƧos, como o BigQuery, acedam aos dados no
Cloud SQL e façam consultas a estes dados através de uma ligação IP privada. Se definir este parâmetro como
false, outros Cloud de Confiance by S3NS serviços não podem aceder a dados no Cloud SQL através de uma ligação IP privada.
Pode usar o campo sqlNetworkArchitecture para aplicar a utilização da nova arquitetura de rede à instância no momento da criação, mesmo que o projeto não esteja totalmente atualizado.
Para mais detalhes sobre a nova arquitetura de rede e as respetivas implicaƧƵes, consulte os artigos
Atualize uma instância para a nova arquitetura de rede e Atribua um intervalo de endereços IP.
MƩtodo HTTP e URL:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID
Corpo JSON do pedido:
{
"settings":
{
"ipConfiguration": {
"ipv4Enabled": false,
"privateNetwork": "projects/PROJECT_ID/global/networks/VPC_NETWORK_NAME",
"allocatedIpRange": "RANGE_NAME"
"authorizedNetworks": [AUTHORIZED_NETWORKS],
"enablePrivatePathForGoogleCloudServices": true
}
},
"sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE"
}
Para enviar o seu pedido, expanda uma destas opƧƵes:
Deve receber uma resposta JSON semelhante Ć seguinte:
Estabeleça ligação a uma instância através do respetivo IP privado
Usa o acesso privado a serviços para estabelecer ligação a instâncias do Cloud SQL a partir de instâncias do Compute Engine ou do Google Kubernetes Engine na mesma rede VPC (definidas aqui como origens internas ) ou a partir de fora dessa rede (uma origem externa).
Estabeleça ligação a partir de uma origem interna
Para estabelecer ligação a partir de uma origem no mesmo Cloud de Confiance projeto que a sua instância do Cloud SQL, como o proxy Auth do Cloud SQL em execução num recurso do Compute Engine, esse recurso tem de estar na mesma rede de VPC onde o acesso privado aos serviços foi estabelecido para a instância do Cloud SQL.
Para estabelecer ligação a partir de uma origem sem servidor, como o ambiente padrão do App Engine, Cloud Run ou funções do Cloud Run, a sua aplicação ou função estabelece ligação diretamente à sua instância através do acesso a VPC sem servidor sem o Cloud SQL Auth Proxy.
Estabeleça ligação a partir de uma origem externa
Se uma rede externa (por exemplo, uma rede no local ou uma rede VPC) estiver ligada à rede VPC à qual a sua instância do Cloud SQL estÔ ligada, pode usar a Cloud VPN ou o Cloud Interconnect para estabelecer ligação à instância a partir de um cliente na rede externa.
Para permitir ligaƧƵes a partir de uma rede externa, faƧa o seguinte:
- Certifique-se de que a sua rede VPC estÔ ligada à rede externa através de um túnel do Cloud VPN ou de uma associação de VLAN para o Dedicated Interconnect ou o Partner Interconnect.
- Certifique-se de que as sessƵes do Border Gateway Protocol (BGP) nos
Cloud Routers que gerem os seus tĆŗneis da Cloud VPN e
anexos do Cloud Interconnect (VLANs) receberam prefixos
especĆficos (destinos) da sua rede no local.
NĆ£o Ć© possĆvel importar encaminhamentos predefinidos (destino 0.0.0.0/0) para a rede VPC do Cloud SQL porque essa rede tem o seu próprio encaminhamento predefinido local. As rotas locais para um destino sĆ£o usadas mesmo que o peering do Cloud SQL esteja configurado para importar rotas personalizadas da sua rede VPC.
-
Identifique as associações de peering produzidas pela ligação de serviços
privados. Consoante o serviço, a ligação de serviços privados pode
criar uma ou mais das seguintes ligações de peering, mas não necessariamente todas:
cloudsql-mysql-googleapis-comcloudsql-postgres-googleapis-comservicenetworking-googleapis-com
- Atualize todas as ligações de intercâmbio de rede para ativar a opção Exportar encaminhamentos personalizados.
- Identifique o intervalo atribuĆdo usado pela ligação de serviƧos privados.
- Configure o modo de anĆŗncio personalizado do Cloud Router para o intervalo atribuĆdo nos Cloud Routers que gerem sessƵes BGP para os seus tĆŗneis Cloud VPN ou anexos do Cloud Interconnect (VLANs).
Estabeleça ligação a partir do Cloud Shell
O Cloud Shell usa uma mÔquina virtual do Compute Engine gerida pela Google e que estÔ fora da sua rede VPC. Cloud de Confiance by S3NS Por conseguinte, não existe um caminho de conetividade entre o Cloud Shell e o espaço de endereços IP privados da sua rede VPC.
Como resultado, o Cloud Shell não suporta a ligação a uma instância do Cloud SQL que tenha apenas um endereço IP privado.
Para estabelecer ligação a instâncias do Cloud SQL a partir de uma rede externa através da conetividade de IP privado, consulte o artigo Estabeleça ligação a uma instância do Cloud SQL a partir do exterior da respetiva VPC.
Estabeleça ligação a partir de endereços IP não RFC 1918
A RFC 1918 especifica endereƧos IP que sĆ£o atribuĆdos para utilização interna (ou seja, numa organização) e nĆ£o sĆ£o encaminhados na Internet. Especificamente, estas sĆ£o:
- 10.0.0.0/8
- 172.16.0.0/12
- 192.168.0.0/16
As ligações a uma instância do Cloud SQL através de um endereço IP privado são autorizadas automaticamente para intervalos de endereços RFC 1918. Desta forma, todos os clientes privados podem aceder à base de dados sem passar pelo proxy.
Para estabelecer ligação a partir de um endereço IP não RFC 1918, tem de definir a autorização de IP por instância para permitir o trÔfego de intervalos de endereços IP não RFC 1918.
Por exemplo, use um comando gcloud como o seguinte:
gcloud sql instances patch INSTANCE_NAME \ --authorized-networks=192.88.99.0/24,11.0.0.0/24
Por predefinição, o Cloud SQL não aprende trajetos de sub-redes não RFC 1918 da sua rede VPC. Tem de atualizar a interligação de redes para o Cloud SQL para exportar quaisquer trajetos não RFC 1918.
gcloud compute networks peerings update cloudsql-postgres-googleapis-com \
--network=VPC_NETWORK_NAME \
--export-subnet-routes-with-public-ip \
--project=PROJECT_IDcloudsql-postgres-googleapis-comé um nome de Private Service Connection na pÔgina Rede VPC.Selecione a sua rede e, de seguida, procure a secção Ligação de serviço privado.
VPC_NETWORK_NAMEé o nome da sua rede VPC.PROJECT_IDé o ID do projeto da rede VPC. Se estiver a usar a VPC partilhada, use o ID do projeto anfitrião.
Substitua o seguinte:
Para mitigar o esgotamento de endereços IP, pode usar endereços IP públicos usados de forma privada.
Estabeleça ligação a partir de endereços IP públicos usados de forma privada
Se quiser configurar a sua instância num intervalo de endereços IP públicos usados de forma privada, ative o
export-subnet-routes-with-public-ip no peering de rede entre a sua rede
e a rede do Cloud SQL.
gcloud compute networks peerings update cloudsql-postgres-googleapis-com \
--network=VPC_NETWORK_NAME \
--export-subnet-routes-with-public-ip \
--project=PROJECT_IDcloudsql-postgres-googleapis-comé um nome de ligação de serviço privado na pÔgina rede VPC.Selecione a sua rede e, de seguida, procure a secção Ligação de serviço privado.
VPC_NETWORK_NAMEé o nome da sua rede VPC.PROJECT_IDé o ID do projeto da rede VPC. Se estiver a usar a VPC partilhada, use o ID do projeto anfitrião.
Substitua o seguinte:
Estabeleça ligação a uma instância configurada com endereços IP públicos usados de forma privada
Se a sua instância estiver configurada num intervalo de endereços IP públicos usados de forma privada
e quiser estabelecer ligação à mesma,
ative import-subnet-routes-with-public-ip na interligação de redes
entre a sua rede e a rede do Cloud SQL.
gcloud compute networks peerings update cloudsql-postgres-googleapis-com \
--network=VPC_NETWORK_NAME \
--import-subnet-routes-with-public-ip \
--project=PROJECT_IDSubstitua o seguinte:
cloudsql-postgres-googleapis-comé um nome de Private Service Connection na pÔgina Rede VPC.Selecione a sua rede e, de seguida, procure a secção Ligação de serviço privado.
VPC_NETWORK_NAMEé o nome da sua rede VPC.PROJECT_IDé o ID do projeto da rede VPC. Use o ID do projeto anfitrião se estiver a usar a VPC partilhada.
Estabeleça ligação através de um ponto final de escrita
AlĆ©m de um endereƧo IP privado, pode usar um ponto final de gravação numa string de ligação SQL. Um ponto final de gravação Ć© um nome de serviƧo de nomes de domĆnio (DNS) global que Ć© resolvido automaticamente para o endereƧo IP da instĆ¢ncia principal atual. Ao usar um ponto final de gravação, pode evitar ter de fazer alteraƧƵes Ć ligação da aplicação quando ocorre uma falha na regiĆ£o.
Se ocorrer uma comutação por falha ou uma comutação de uma réplica, o ponto final de gravação pode ajudar a gerir os endereços IP privados das instâncias. Quando isto acontece, use o ponto final de escrita para estabelecer ligação à instância que funciona como a instância principal.
Como o Cloud SQL cria um ponto final de escrita
Se ativar a API Cloud DNS para o seu Cloud de Confiance projeto e, em seguida, criar uma instância principal da edição Cloud SQL Enterprise Plus, promover a réplica para a instância, ou atualizar a instância a partir da edição Cloud SQL Enterprise, o Cloud SQL gera automaticamente um ponto final de gravação e atribui-o à instância.
Para mais informações, consulte o artigo Veja o ponto final de gravação.
Atribua um ponto final de gravação a uma instância
Se não ativar a API Cloud DNS para o seu Cloud de Confiance projeto e, em seguida, criar, promover ou atualizar a sua instância, o Cloud SQL não atribui automaticamente o ponto final de gravação à instância.
Para que o Cloud SQL gere um ponto final de escrita e o atribua à instância, consulte o artigo Gerar o ponto final de escrita.
Resolver problemas
Consulte a resolução de problemas para problemas de conetividade conhecidos e a depuração de problemas de ligação para obter ajuda com o autodiagnóstico.
O que se segue?
- Saiba mais sobre o IP privado.
- Saiba mais acerca do acesso a serviƧos privados.
- Veja como usar os VPC Service Controls para adicionar um perĆmetro de serviƧo.
- Saiba como configurar o acesso a serviƧos privados.
- Saiba mais sobre a configuração do acesso a serviços privados para o Cloud SQL.
- Saiba mais sobre a VPN na nuvem.
- Saiba mais sobre as redes VPC.
- Saiba mais acerca do intercâmbio da rede da VPC.
- Saiba mais sobre a VPC partilhada.