Otimize a utilização máxima de memória do servidor

As instâncias da base de dados executadas com uma atribuição de memória demasiado baixa ou demasiado elevada podem ter problemas de desempenho. Por vezes, as instâncias podem ter problemas de falta de memória (OOM).

A flag max server memory (mb) limita a quantidade de memória que o Cloud SQL pode atribuir aos respetivos pools internos. Pode definir manualmente um valor para esta flag ou omitir a flag e permitir que o Cloud SQL faça a gestão dos limites de memória automaticamente.

  • Se não ativar a flag, o Cloud SQL gere automaticamente os limites de memória da instância com base no tamanho da RAM da instância.

  • Se ativar a flag e definir manualmente um valor para a mesma e, posteriormente, redimensionar a instância, o Cloud SQL desativa a flag, substitui o valor fornecido anteriormente e gere automaticamente os limites de memória da instância até ser fornecido um novo valor max server memory (mb).

Os valores insuficientes para o indicador podem causar problemas de desempenho, enquanto a alocação excessiva pode levar a instabilidade, degradação do desempenho e falhas da base de dados.

Recomendamos vivamente que os utilizadores permitam que o Cloud SQL faça a gestão dos limites de memória da instância.

Para mais informações, consulte as definições do SQL Server.

Preços

O recomendador Memória máxima do servidor está no nível de preços do recomendador Standard.

Antes de começar

Ative a API Recommender.

Funções e autorizações necessárias

Para ter as autorizações para ver e trabalhar com estatísticas e recomendações, certifique-se de que tem as funções de gestão de identidade e de acesso (IAM) necessárias.

Tarefa Função
Ver recomendações recommender.cloudsqlViewer ou cloudsql.admin
Aplique recomendações cloudsql.editor ou cloudsql.admin
Para mais informações sobre as funções de IAM, consulte a referência de funções básicas e predefinidas de IAM e faça a gestão do acesso a projetos, pastas e organizações.

Indique as recomendações

Para listar as recomendações, siga estes passos:

Consola

Para apresentar recomendações sobre o desempenho das instâncias, siga estes passos:

  1. Aceda à página Instâncias do Cloud SQL.

Aceda a Instâncias do Cloud SQL

  1. No banner Melhore o estado de funcionamento da instância investigando problemas e tomando medidas com base nas recomendações, clique em Expandir detalhes.

Em alternativa, siga estes passos:

  1. Aceda ao Active Assist. Veja também o artigo Encontre e aplique recomendações com a página Recomendações.

    Aceda ao Active Assist

  2. No cartão Todas as recomendações, clique em Desempenho .

gcloud

Execute o comando gcloud recommender recommendations list da seguinte forma:

gcloud recommender recommendations list \
--project=PROJECT_ID \
--location=LOCATION \
--recommender=google.cloudsql.instance.PerformanceRecommender \
--filter=RECOMMENDER_SUBTYPE=SQLSERVER_USE_AUTOMATIC_MAX_SERVER_MEMORY_MANAGEMENT

Substitua o seguinte:

  • PROJECT_ID: o ID do seu projeto
  • LOCATION: uma região onde as suas instâncias estão localizadas, como us-central1

API

Chame o método recommendations.list da seguinte forma:

GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/recommenders/google.cloudsql.instance.PerformanceRecommender/recommendations

Substitua o seguinte:

  • PROJECT_ID: o ID do seu projeto
  • LOCATION: uma região onde as suas instâncias estão localizadas, como us-central1

Veja estatísticas e recomendações detalhadas

Para ver estatísticas e recomendações detalhadas, siga estes passos:

Consola

Efetue um dos seguintes passos:

  • Na página Recomendações de desempenho, clique no cartão Recomendações de desempenho e, de seguida, em Criar índices ou reconfigurar definições de junção. É apresentado o painel de recomendações, que contém estatísticas e recomendações detalhadas para a instância.

  • Na página Instâncias, clique em Criar índices ou reconfigurar definições de junção. A lista de instâncias apresenta apenas as instâncias às quais a recomendação se aplica.

gcloud

Execute o comando gcloud recommender insights list da seguinte forma:


gcloud recommender insights list \
--project=PROJECT_ID \
--location=LOCATION \
--insight-type=google.cloudsql.instance.PerformanceInsight \
--filter=INSIGHT_SUBTYPE=INSIGHT_SUBTYPE

Substitua o seguinte:

  • PROJECT_ID: o ID do seu projeto
  • LOCATION: uma região onde as suas instâncias estão localizadas, como us-central1
  • INSIGHT_SUBTYPE: o subtipo usado para verificar se a memória atribuída é demasiado baixa ou demasiado alta. Os valores aceitáveis incluem SQLSERVER_MAX_SERVER_MEMORY_TOO_LOW e SQLSERVER_MAX_SERVER_MEMORY_TOO_HIGH.

API

Chame o método insights.list da seguinte forma:


GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/insightTypes/google.cloudsql.instance.PerformanceInsight/insights

Substitua o seguinte:

  • PROJECT_ID: o ID do seu projeto
  • LOCATION: uma região onde as suas instâncias estão localizadas, como us-central1

Aplique a recomendação

Consola

Para implementar esta recomendação, faça o seguinte:

  • Localize a instância com a recomendação Memória do servidor configurada incorretamente. Clique na recomendação para a abrir.

  • Na janela de recomendação, clique em Editar instância.

  • Na secção Flags e parâmetros, localize e elimine a flag Max server memory (mb). A remoção da flag permite que o Cloud SQL faça a gestão dos limites de memória da instância por si.

O que se segue?