Como configurar um IP privado

Nesta página, você verá como configurar uma instância do Cloud SQL para usar o IP privado.

Para mais informações sobre o funcionamento do IP privado e os requisitos de ambiente e gerenciamento, consulte esta página.

Antes de começar

Antes de configurar uma instância do Cloud SQL para usar o IP privado, faça o seguinte:

  • Ative a API Service Networking no projeto. Se você estiver usando uma rede VPC compartilhada, também será preciso ativar a API Service Networking no projeto host.

  • Selecione uma rede VPC para usar.

  • Realize esta tarefa apenas uma vez: configure o Acesso a serviços privados na rede VPC para alocar um intervalo de endereços IP e criar um Private Service Connect. Isso permite que os recursos na rede VPC se conectem às instâncias do Cloud SQL.

    • Para estabelecer o Acesso a serviços privados, é necessário ter o papel de Network Administrator do IAM.

      Depois que o Acesso a serviços privados for estabelecido na rede, o papel de Network Administrator não será mais necessário para configurar uma instância para usar o IP privado.

    • Se você estiver usando o IP privado em qualquer uma das instâncias do Cloud SQL, será necessário configurar o Acesso a serviços privados uma vez para cada projeto do Google Cloud que tenha uma instância do Cloud SQL ou que precise se conectar a ela. Para mais informações, consulte Acesso a serviços privados.

Com o Cloud SQL, você configura o Acesso a serviços privados quando todos os casos abaixo são aplicáveis:

  • Você ainda não configurou o Acesso a serviços privados no projeto do Google Cloud.
  • Você está ativando o IP privado pela primeira vez para qualquer instância do Cloud SQL no projeto do Google Cloud.
  • Ao ativar o IP privado na página Connections da instância, você seleciona as opções Use an automatically allocated IP range e de rede associada default.

Como configurar uma instância para usar IP privado

Ao criar uma instância do Cloud SQL, é possível configurá-la para usar o IP privado. Essa configuração também pode ser feita em uma instância atual.

Como configurar um IP privado para uma nova instância

Para configurar uma instância do Cloud SQL para usar IP privado ao criar uma instância:

Console

  1. Acesse a página "Instâncias" do Cloud SQL no Console do Google Cloud.

    Acessar a página "Instâncias" do Cloud SQL

  2. Clique em CRIAR INSTÂNCIA.
  3. No assistente de criação, em Opções de configuração, expanda a seção Conectividade.
  4. Marque a caixa de seleção IP privado.

    Uma lista suspensa exibirá as redes VPC disponíveis no projeto. Se o projeto for o de serviço de uma VPC compartilhada, as redes VPC do projeto host também serão exibidas.

  5. Selecione a rede VPC a ser usada:
  6. Se você configurou o Acesso a serviços privados, faça o seguinte:

    1. Selecione a rede VPC a ser usada.
    2. Clique em Conectar.
    3. Uma lista suspensa exibirá o intervalo de endereços IP alocados.

    4. Clique em Criar.
    5. Clique em Salvar.

    Para que o Cloud SQL aloque o intervalo para você e crie a conexão privada, faça o seguinte:

    1. Selecione a rede VPC "padrão".
    2. Clique em Alocar e conectar.
    3. Clique em Salvar.

gcloud

Se você ainda não tiver feito isso, siga as instruções abaixo para configurar o acesso a serviços privados no Cloud SQL. Crie sua instância do Cloud SQL usando o parâmetro --network para especificar o nome da rede VPC escolhida e a sinalização --no-assign-ip para desativar o IP público.

A menos que a rede VPC seja compartilhada, o valor do parâmetro --network estará no formato: https://www.googleapis.com/compute/alpha/projects/[PROJECT_ID]/global/networks/[VPC_NETWORK_NAME]

Se a rede VPC for uma compartilhada, o valor do parâmetro --network estará no formato projects/HOST_PROJECT_ID/global/networks/VPC_NETWORK_NAME. Nele, HOST_PROJECT_ID é o nome do projeto host da VPC compartilhada, e VPC_NETWORK_NAME é o nome da rede VPC compartilhada.

    gcloud --project=[PROJECT_ID] beta sql instances create [INSTANCE_ID]
           --network=[VPC_NETWORK_NAME]
           --no-assign-ip
    

Como configurar o IP privado para uma instância atual

Configurar uma instância atual do Cloud SQL para usar o IP privado faz com que ela seja reiniciada, resultando em tempo de inatividade.

Para configurar o uso de IP privado em uma instância atual:

Console

  1. Acesse a página Instâncias do Cloud SQL no Console do Google Cloud.
    Acessar a página "Instâncias" do Cloud SQL
  2. Clique no nome da instância para abrir a página Visão geral correspondente.
  3. Selecione a guia Conexões.
  4. Marque a caixa de seleção IP privado.

    Uma lista suspensa exibirá as redes disponíveis no projeto. Se o projeto for o de serviço de uma VPC compartilhada, as redes VPC do projeto host também serão exibidas.

  5. Se você configurou o Acesso a serviços privados, faça o seguinte:
    1. Selecione a rede VPN a ser usada.
    2. Uma lista suspensa exibirá o intervalo de endereços IP alocados.

    3. Clique em Conectar.
    4. Clique em Salvar.
  6. Para permitir que o Cloud SQL aloque um endereço IP para você, faça o seguinte:
    1. Selecione a rede VPC "padrão".
    2. Clique em Alocar e conectar.
    3. Clique em Salvar.

gcloud

Se você ainda não tiver feito isso, siga as instruções abaixo para configurar o acesso a serviços privados no Cloud SQL. Atualize a instância do Cloud SQL usando o parâmetro --network para especificar o nome da rede VPC escolhida.

VPC_NETWORK_NAME é o nome da rede VPC escolhida. Por exemplo, my-vpc-network; O valor do parâmetro --network estará no formato: https://www.googleapis.com/compute/alpha/projects/[PROJECT_ID]/global/networks/[VPC_NETWORK_NAME]

    gcloud --project=[PROJECT_ID] beta sql instances patch [INSTANCE_ID]
           --network=[VPC_NETWORK_NAME]
           --no-assign-ip
    

Como se conectar a uma instância usando o IP privado dela

Use o acesso a serviços privados para se conectar a instâncias do Cloud SQL a partir de instâncias do Compute Engine ou do Google Kubernetes Engine na mesma sub-rede VPC, definida aqui como fontes internas ou de fora dessa rede (fonte externa).

Como se conectar a partir de uma fonte interna

Use o Cloud SQL Proxy ou um dos outros métodos de conexão para se conectar à instância do Cloud SQL.

Como se conectar a partir de uma fonte externa

Para se conectar a partir de uma fonte que não esteja no mesmo projeto do Google Cloud que sua instância do Cloud SQL, é preciso estabelecer uma conexão entre essa fonte e a rede VPC. Para fazer isso, use o Cloud VPN:

  1. Crie uma VPN e configure o peering de rede VPC por meio de um túnel VPN.
  2. Configure a rede VPC para exportar rotas personalizadas da rede de origem para a rede VPC do Cloud SQL por meio da conexão de peering. Execute esse procedimento para cada tipo de mecanismo de banco de dados usado (MySQL, PostgreSQL e SQL Server).
  3. Console

    1. Acesse a página "Instâncias" do Cloud SQL no Console do Google Cloud.

      Acessar a página "Instâncias" do Cloud SQL

    2. Crie uma nova instância com o IP privado ou configure-o em uma atual.
    3. Verifique se há peering de rede entre sua VPN e a rede VPC do Cloud SQL.
      1. Acesse o link Peering de rede VPC na página Detalhes da rede VPC.
      2. Em Nome, procure por "cloudsql-mysql-googleapis-com".
    4. Verifique se exportar está ativado no peering de rede.
      1. Verifique Trocar rotas personalizadas. Se Exportar rotas personalizadas for exibido, vá para a etapa 4.
      2. Clique no nome do peering para visualizar a página Detalhes da conexão de peering.
      3. Clique em Editar.
      4. Marque Exportar rotas personalizadas.
      5. Clique em Salvar.
    5. Adicione uma rota à rede de origem:
      1. Intervalo de IP: adicione o intervalo de IP reservado. Você o encontra no link Rotas, na página Detalhes da rede VPC, em Intervalo de IP de destino.
      2. Próximo salto: adicione o gateway da VPN. Encontre o túnel VPN em Próximo salto.

    gcloud

    1. Crie uma nova instância com o IP privado ou configure-o em uma atual.
    2. Verifique se a exportação está ativada no peering de rede:
      1. Exporte as rotas personalizadas.

            gcloud beta compute networks peerings update 
        cloudsql-mysql-googleapis-com --network=[customers network]
        --export-custom-routes
    3. Adicione uma rota à sua rede local.
      1. Intervalo de destino: adicione o intervalo de IP reservado.
      2. Próximo salto: adicione o túnel VPN.

  4. Use o Cloud SQL Proxy ou um dos outros métodos de conexão para se conectar à instância do Cloud SQL.

A seguir