Diretrizes operacionais para instâncias do SQL Server

O contrato SLA do Cloud SQL não inclui interrupções "causadas por fatores fora do controle razoável do Google". Nesta página, descrevemos algumas das configurações controladas pelo usuário que podem causar a exclusão de uma interrupção de uma instância do Cloud SQL.

Introdução

Com o Cloud SQL, procuramos dar a você o máximo de controle possível sobre as configurações da sua instância. Isso inclui algumas configurações que aumentam o risco de inatividade da instância, dependendo da carga e de outros parâmetros de configuração. Se a instância ficar inativa e o Cloud SQL determinar que ela não estava em conformidade com os limites operacionais, como descrito nesta página, o período de inatividade não será coberto (ou não estará protegido) pelo contrato SLA do Cloud SQL.

Fornecemos esta lista de limites operacionais para informar as configurações que apresentam esses riscos, maneiras de evitar o uso inadvertido delas e como mitigar os riscos quando a configuração é necessária para seu ambiente de negócios.

Configurações excluídas

As configurações excluídas se enquadram nas categorias abaixo:

  • requisitos gerais de configuração
  • Valores de sinalização de banco de dados
  • restrições de recursos

Requisitos gerais de configuração

Somente as instâncias do Cloud SQL configuradas para alta disponibilidade, com pelo menos uma CPU dedicada, são cobertas pelo SLA. Instâncias de núcleo compartilhado e de zona única não são cobertas pelo SLA.

Se a instância for configurada e usada de maneira que a carga de trabalho sobrecarregue a instância, o SLA não será aplicado. Alguns exemplos são casos em que:

  • Uma combinação de work_mem, consultas de carga de trabalho específicas e número de conexões paralelas ativas fazem com que o sistema fique sem memória, resultando em falhas nos back-ends de workers do PostgreSQL com operações de recuperação resultantes executadas pelo PostgreSQL.
  • Uma combinação de checkpoint_timeout, max_wal_size e uma alta carga de trabalho, possivelmente com um tamanho de VM abaixo do esperado, resulta em uma situação em que a recuperação (reprodução de WA) leva muito tempo.
  • Transações muito longas executadas com cargas de trabalho que criam um grande número de arquivos temporários tornam o autovacuum muito difícil de acompanhar, o que pode resultar em uma sobrecargada tabela e no desempenho.

Esses exemplos não são uma lista completa, pois há muitas maneiras de sobrecarregar o banco de dados do PostgreSQL. Recomendamos que você configure alertas e monitoramento no Cloud Monitoring.

Valores de sinalização de banco de dados

O Cloud SQL permite configurar sua instância usando sinalizações de banco de dados. Dependendo de como são definidas, algumas dessas sinalizações podem comprometer a estabilidade da instância ou a durabilidade dos dados.

Restrições de recursos

É necessário evitar as restrições de recursos abaixo para manter a cobertura do SLA:

Restrição Descrição Detecção Ação corretiva Prevenção
Armazenamento cheio Se a instância ficar sem capacidade de armazenamento e o recurso de aumento automático do armazenamento não estiver ativado, a instância ficará off-line. Essa interrupção não é coberta pelo SLA. Veja o volume de armazenamento que sua instância está usando na página "Detalhes da instância" no Console do Cloud. Saiba mais.

Para monitorar o uso do armazenamento e receber alertas quando um limite especificado é atingido, configure um alerta do Stackdriver. Saiba mais.

Aumente o tamanho do armazenamento para a instância. O tamanho do armazenamento pode ser aumentado, porém, não pode ser reduzido. Ative o aumento automático do armazenamento para a instância. Saiba mais.
CPU sobrecarregada Se a utilização da CPU for superior a 98% durante seis horas, sua instância não estará dimensionada adequadamente para a carga de trabalho e, portanto, não será coberta pelo SLA. Veja a porcentagem de CPU disponível que sua instância está usando na página "Detalhes da instância" no Console do Cloud. Saiba mais.

Para monitorar o uso da CPU e receber alertas quando um limite especificado é atingido, configure um alerta do Stackdriver. Saiba mais.

Aumente o número de CPUs para a instância. Observe que alterar CPUs requer uma reinicialização da instância.

Se a instância já estiver com o número máximo de CPUs, fragmente o banco de dados em várias instâncias.

Monitore o uso da CPU e aumente o número de CPUs quando necessário. Observe que alterar o nível da instância requer uma reinicialização.