Esta página descreve como ativar, configurar e monitorizar o Managed Connection Pooling nas suas instâncias do Cloud SQL.
A pool de ligações gerida permite-lhe dimensionar as cargas de trabalho otimizando a utilização de recursos e a latência de ligação para as suas instâncias através da pool. Para ver informações detalhadas sobre a pool de ligações gerida e como a usar para as suas instâncias, consulte a vista geral da pool de ligações gerida.
Antes de começar
- Confirme se a sua instância cumpre todos os requisitos para usar o agrupamento de ligações gerido.
- Se estiver a usar a CLI gcloud, confirme que a versão da CLI gcloud
é
515.0.0
ou posterior. - Confirme que a sua instância está a usar a nova arquitetura de rede do Cloud SQL. Se a sua instância ainda estiver a usar a arquitetura de rede antiga, atualize para a nova arquitetura de rede.
Ative a partilha de ligações gerida
Pode ativar a funcionalidade de pool de ligações gerida para uma instância no momento da criação ou editar uma instância existente para a ativar.
Ative a funcionalidade Managed Connection Pooling para uma nova instância
Para criar uma nova instância com a funcionalidade Managed Connection Pooling ativada, consulte o artigo Criar instâncias. Só pode ativar a agrupamento de ligações gerido para uma nova instância através da CLI gcloud ou da API Cloud SQL.
Ative a funcionalidade Managed Connection Pooling para uma instância existente
Pode ativar o conjunto de ligações gerido para uma instância existente através daGoogle Cloud consola, da CLI gcloud ou da API Cloud SQL. Tem de ativar a funcionalidade Managed Connection Pooling antes de modificar as opções da mesma.
Consola
Na Google Cloud consola, aceda à página Instâncias do Cloud SQL.
Encontre a instância para a qual quer ativar o agrupamento de ligações gerido. Para abrir a página Vista geral da instância, clique no nome da instância.
Clique em Edit.
Em Personalize a sua instância, expanda Ligações.
Para ativar o conjunto de ligações gerido, selecione a caixa de verificação Ativar conjunto de ligações gerido.
Clique em Guardar.
gcloud
Use o comando gcloud beta sql instances
para ativar a pool de ligações gerida.
gcloud beta sql instances patch INSTANCE_NAME \
--enable-connection-pooling
Substitua o seguinte:
INSTANCE_NAME
: o nome da instância do Cloud SQL para a qual quer ativar o agrupamento de ligações gerido.
REST v1
Para ativar a pool de ligações gerida para uma instância existente, use o seguinte comando e defina connectionPoolingEnabled
:
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
Método HTTP e URL:
PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID
Corpo JSON do pedido:
{ "settings": { "connectionPoolConfig": { "connectionPoolingEnabled": true } } }
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
{ "kind": "sql#operation", "targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID", "status": "PENDING", "user": "user@example.com", "insertTime": "2020-01-16T02:32:12.281Z", "operationType": "UPDATE", "name": "OPERATION_ID", "targetId": "INSTANCE_ID", "selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID", "targetProject": "PROJECT_ID" }
REST v1beta4
Para ativar a pool de ligações gerida para uma instância existente, use o seguinte comando e defina connectionPoolingEnabled
:
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
Método HTTP e URL:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID
Corpo JSON do pedido:
{ "settings": { "connectionPoolConfig": { "connectionPoolingEnabled": true } } }
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
{ "kind": "sql#operation", "targetLink": "https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/instances/INSTANCE_ID", "status": "PENDING", "user": "user@example.com", "insertTime": "2020-01-16T02:32:12.281Z", "operationType": "UPDATE", "name": "OPERATION_ID", "targetId": "INSTANCE_ID", "selfLink": "https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/operations/OPERATION_ID", "targetProject": "PROJECT_ID" }
Terraform
Para ativar a pool de ligações geridas para uma instância existente, use o seguinte recurso do Terraform:
Modifique a pool de ligações gerida para uma instância
Depois de ativar a funcionalidade Managed Connection Pooling, pode personalizá-la de acordo com as necessidades da sua instância através de opções de configuração avançadas. Estas opções de configuração são denominadas flags de pool de associações geridas. As configurações adicionadas à funcionalidade Managed Connection Pooling são aplicadas a todos os agrupadores de ligações usados pela instância. Para mais informações sobre as opções de configuração disponíveis, os respetivos valores predefinidos e intervalos, consulte as opções de configuração avançadas.
Para modificar as opções de configuração de agrupamento de ligações geridas disponíveis para uma instância, faça o seguinte:
Consola
Na Google Cloud consola, aceda à página Instâncias do Cloud SQL.
Encontre a instância para a qual quer ativar o agrupamento de ligações gerido. Para abrir a página Vista geral da instância, clique no nome da instância.
Clique em Edit.
Em Personalize a sua instância, expanda Ligações.
Em Conjunto de ligações gerido, expanda Opções avançadas de agrupamento.
Modifique as opções de agrupamento disponíveis que quer atualizar.
Clique em Guardar.
gcloud
Use o comando gcloud beta sql instances
para modificar as opções de configuração.
gcloud beta sql instances patch INSTANCE_NAME \
--connection-pool-flags=CONFIGURATION_NAME=CONFIGURATION_VALUE
Substitua o seguinte:
INSTANCE_NAME
: o nome da instância do Cloud SQL para a qual quer modificar o agrupamento de ligações gerido.CONFIGURATION_NAME
: o nome da opção de configuração que quer modificar. Para ver uma lista de todas as opções de configuração disponíveis, consulte as opções de configuração avançadas.CONFIGURATION_VALUE
: o novo valor da opção de configuração que selecionou.
REST v1
Para modificar as configurações avançadas da funcionalidade Managed Connection Pooling,
use o seguinte comando e defina ConnectionPoolConfig
:
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
Método HTTP e URL:
PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID
Corpo JSON do pedido:
{ "settings": { "connectionPoolConfig": { "flags": [ { "name": "CONFIGURATION_NAME", "value":"CONFIGURATION_VALUE" } ] } } }
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
{ "kind": "sql#operation", "targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID", "status": "PENDING", "user": "user@example.com", "insertTime": "2020-01-16T02:32:12.281Z", "operationType": "UPDATE", "name": "OPERATION_ID", "targetId": "INSTANCE_ID", "selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID", "targetProject": "PROJECT_ID" }
REST v1beta4
Para modificar as configurações avançadas da funcionalidade Managed Connection Pooling,
use o seguinte comando e defina ConnectionPoolConfig
:
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
Método HTTP e URL:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID
Corpo JSON do pedido:
{ "settings": { "connectionPoolConfig": { "flags": [ { "name": "CONFIGURATION_NAME", "value":"CONFIGURATION_VALUE" } ] } } }
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
{ "kind": "sql#operation", "targetLink": "https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/instances/INSTANCE_ID", "status": "PENDING", "user": "user@example.com", "insertTime": "2020-01-16T02:32:12.281Z", "operationType": "UPDATE", "name": "OPERATION_ID", "targetId": "INSTANCE_ID", "selfLink": "https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/operations/OPERATION_ID", "targetProject": "PROJECT_ID" }
Terraform
Para modificar as configurações avançadas da gestão de pool de ligações, use o seguinte recurso do Terraform:
Desative a partilha de ligações geridas para uma instância
Pode desativar o pool de ligações gerido para uma instância existente através daGoogle Cloud consola, da CLI gcloud ou da API Cloud SQL.
Para desativar a pool de ligações gerida para uma instância, faça o seguinte:
Consola
Na Google Cloud consola, aceda à página Instâncias do Cloud SQL.
Encontre a instância para a qual quer desativar a funcionalidade Managed Connection Pooling. Para abrir a página Vista geral da instância, clique no nome da instância.
Clique em Edit.
Em Personalize a sua instância, expanda Ligações.
Para desativar o agrupamento de ligações gerido, desmarque a caixa Ativar agrupamento de ligações gerido.
Clique em Guardar.
gcloud
Use o comando gcloud beta sql instances
para desativar a pool de ligações gerida.
gcloud beta sql instances patch INSTANCE_NAME \
--no-enable-connection-pooling
Substitua o seguinte:
PROJECT_ID
: o nome da instância do Cloud SQL para a qual quer desativar o agrupamento de ligações gerido.
REST v1
Para desativar a pool de ligações gerida para uma instância, use o seguinte comando e defina connectionPoolingEnabled
:
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
Método HTTP e URL:
PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID
Corpo JSON do pedido:
{ "settings": { "connectionPoolConfig": { "connectionPoolingEnabled": false } } }
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
{ "kind": "sql#operation", "targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID", "status": "PENDING", "user": "user@example.com", "insertTime": "2020-01-16T02:32:12.281Z", "operationType": "UPDATE", "name": "OPERATION_ID", "targetId": "INSTANCE_ID", "selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID", "targetProject": "PROJECT_ID" }
REST v1beta4
Para desativar a pool de ligações gerida para uma instância, use o seguinte comando e defina connectionPoolingEnabled
:
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
Método HTTP e URL:
PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID
Corpo JSON do pedido:
{ "settings": { "connectionPoolConfig": { "connectionPoolingEnabled": false } } }
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
{ "kind": "sql#operation", "targetLink": "https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/instances/INSTANCE_ID", "status": "PENDING", "user": "user@example.com", "insertTime": "2020-01-16T02:32:12.281Z", "operationType": "UPDATE", "name": "OPERATION_ID", "targetId": "INSTANCE_ID", "selfLink": "https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/operations/OPERATION_ID", "targetProject": "PROJECT_ID" }
Terraform
Para desativar a pool de ligações gerida para uma instância, use o seguinte recurso do Terraform:
Veja o estado da funcionalidade Managed Connection Pooling para uma instância
Pode ver o estado da funcionalidade Managed Connection Pooling para uma instância através da Google Cloud consola, da CLI gcloud ou da API Cloud SQL.
Para ver o estado do Managed Connection Pooling para uma instância da edição Cloud SQL Enterprise Plus, faça o seguinte:
Consola
Na Google Cloud consola, aceda à página Instâncias do Cloud SQL.
Encontre a instância para a qual quer ver o estado do Managed Connection Pooling. Para abrir a página Vista geral da instância, clique no nome da instância.
A secção Ligações mostra se o agrupamento de ligações geridas está ativado ou desativado.
gcloud
gcloud beta sql instances describe INSTANCE_NAME
--format="value(settings.connectionPoolConfig.connectionPoolingEnabled)"
Substitua o seguinte:
PROJECT_ID
: o nome da instância do Cloud SQL para a qual quer ver o estado do pool de ligações gerido.Se a funcionalidade Managed Connection Pooling estiver ativada, é devolvida a seguinte resposta:
connectionPoolingEnabled: true
REST v1
Para ver o estado da funcionalidade Managed Connection Pooling para a sua instância do Cloud SQL, use o seguinte comando e procure connectionPoolingEnabled
:
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
- PROJECT_ID: o ID ou o número do projeto do Google Cloud projeto que contém a instância.
- INSTANCE_NAME: o nome da instância do Cloud SQL. Se esta instância tiver o Private Service Connect ativado, os pontos finais do Private Service Connect nas redes VPC podem estabelecer ligação à mesma.
Método HTTP e URL:
GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_NAME
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
{ "kind": "sql#instance", "state": "RUNNABLE", "databaseVersion": "POSTGRES_13", "settings": { "authorizedGaeApplications": [], "tier": "db-custom-2-7680", "kind": "sql#settings", "availabilityType": "REGIONAL", "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", "activationPolicy": "ALWAYS", "ipConfiguration": { "authorizedNetworks": [], "pscConfig": { "allowedConsumerProjects": [ "ALLOWED_PROJECTS" ], "pscEnabled": true }, "ipv4Enabled": false }, ... "createTime": "2023-06-14T18:48:34.975Z", "sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE", "pscServiceAttachmentLink": "projects/PROJECT_ID/regions/REGION_NAME/serviceAttachments/SERVICE_ATTACHMENT_ID", "dnsName": "DNS_NAME" }
REST v1beta4
Para ver o estado da funcionalidade Managed Connection Pooling para a sua instância do Cloud SQL, use o seguinte comando e procure connectionPoolingEnabled
:
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
- PROJECT_ID: o ID ou o número do projeto do Google Cloud projeto que contém a instância.
- INSTANCE_NAME: o nome da instância do Cloud SQL. Se esta instância tiver o Private Service Connect ativado, os pontos finais do Private Service Connect nas redes VPC podem estabelecer ligação à mesma.
Método HTTP e URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_NAME
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
{ "kind": "sql#instance", "state": "RUNNABLE", "databaseVersion": "POSTGRES_13", "settings": { "authorizedGaeApplications": [], "tier": "db-custom-2-7680", "kind": "sql#settings", "availabilityType": "REGIONAL", "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", "activationPolicy": "ALWAYS", "ipConfiguration": { "authorizedNetworks": [], "pscConfig": { "allowedConsumerProjects": [ "ALLOWED_PROJECTS" ], "pscEnabled": true }, "ipv4Enabled": false }, ... "createTime": "2023-06-14T18:48:34.975Z", "sqlNetworkArchitecture": "NEW_NETWORK_ARCHITECTURE", "pscServiceAttachmentLink": "projects/PROJECT_ID/regions/REGION_NAME/serviceAttachments/SERVICE_ATTACHMENT_ID", "dnsName": "DNS_NAME" }
Monitorize o conjunto de ligações gerido
Pode monitorizar o funcionamento da pool de ligações gerida nas suas instâncias do Cloud SQL através das seguintes métricas da pool de ligações gerida do Cloud SQL:
Nome da métrica | Descrição |
---|---|
num_pools | O número total de conjuntos de ligações por base de dados. |
client_connection | Monitoriza a quantidade de associações pelo estado da associação
de cliente. Os estados incluídos nesta métrica são:
|
server_connections | Monitoriza a contagem de ligações ao servidor pelo estado da ligação ao servidor. Os estados incluídos nesta métrica
são:
|
client_connections_avg_wait_time | O tempo médio gasto por todos os clientes no estado de espera por um servidor. |
Para mais informações acerca destas métricas, consulte o artigo Métricas do Cloud SQL. Para ver estas métricas através da consola, consulte o artigo Ver métricas na página de vista geral da instância do Cloud SQL. Google Cloud
O que se segue?
- Veja métricas na página de vista geral da instância do Cloud SQL
- Vista geral da gestão de pools de ligações