Escalonador automático gerenciado

Nesta página, descrevemos como o escalonador automático gerenciado funciona e os custos e limitações ao usar o escalonador automático gerenciado. Ele também fornece informações para ajudam a determinar como configurar o escalonador automático gerenciado.

Como funciona o escalonador automático gerenciado

Quando você ativa o escalonador automático gerenciado, o Spanner ajusta automaticamente o o tamanho da instância para você. O recurso de escalonador automático gerenciado reage a mudanças. nas necessidades de carga ou armazenamento da instância conforme a carga aumenta ou diminui. O escalonamento automático gerenciado escalona verticalmente, adicionando capacidade de computação à instância ou ela diminui, removendo a capacidade de computação da instância.

Ao configurar o escalonador automático gerenciado, é possível usar unidades de processamento para instâncias pequenas ou nós para instâncias grandes. Neste documento, usamos o termo capacidade de computação como nós ou unidades de processamento.

O escalonador automático gerenciado do Spanner determina a quantidade de computação capacidade é necessária com base no seguinte:

  • Meta de utilização de CPU de alta prioridade
  • Meta de uso do armazenamento
  • Limite mínimo
  • Limite máximo

Cada dimensão de escalonamento gera um tamanho de instância recomendado e O Spanner usa automaticamente a mais alta. Isso significa que, por caso a instância precise de 10 nós para atender à utilização do armazenamento destino, mas 12 nós para atingir sua meta de uso da CPU, o Spanner escalona a instância para 12 nós.

Conforme a quantidade de capacidade de computação muda, o Spanner continua otimiza o armazenamento. Reequilibra os dados em todos os servidores para garantir que o tráfego seja distribuído de maneira uniforme e que nenhum servidor individual fique sobrecarregado. Consulte Limitações para mais informações.

Se o escalonador automático gerenciado escalonar uma instância até o limite máximo, mas o ainda está causando uma utilização de CPU maior do que o destino, as solicitações de carga de trabalho podem ter latência ou falha. Se uma instância for escalonada até a meta da capacidade máxima de computação mas a carga de trabalho precisar de mais armazenamento do que o limite máximo, podem falhar. Para saber se a meta máxima foi atingida, consulte os registros de eventos do sistema do escalonador automático gerenciado no console do Google Cloud na Insights do sistema. Para mais informações, consulte limites de armazenamento.

Quando o Spanner reduz o escalonamento vertical de uma instância, ele remove a capacidade de computação em uma velocidade mais lenta do que com o escalonamento vertical, para reduzir qualquer impacto na latência.

Custos

Os custos totais do Spanner podem ser menores ou maiores, dependendo como você configurou a instância do Spanner antes de ativar o escalonador automático gerenciado e os limites que você definiu para ele.

Por exemplo, se você configurava manualmente o Spanner tenha capacidade de computação suficiente para lidar com os picos de cargas de trabalho a qualquer momento, é possível que seus custos com o escalonador automático gerenciado sejam menores porque a capacidade de computação quando a instância está ociosa.

Se você costumava configurar manualmente a instância do Spanner para ter capacidade de computação suficiente para cargas de trabalho médias, o que diminui o desempenho geral quando o tráfego da carga de trabalho aumentar, os custos com o escalonador automático gerenciado pode ser maior porque o escalonador automático gerenciado pode aumentar a capacidade de computação quando a instância está ocupada. No entanto, isso oferece aos usuários mais desempenho consistente.

É possível limitar o custo máximo da sua instância do Spanner definindo o limite máximo de nós ou unidades de processamento para o nível desejado e reduzir os gastos com rede.

Limitações

As seguintes limitações se aplicam quando você ativa ou altera o recurso de escalonamento automático em uma instância:

  • Não é possível mover uma instância quando o o recurso de escalonamento automático gerenciado está ativado. Primeiro, é preciso desativar escalonador automático e, em seguida, mover a instância. Depois de mover a instância, é possível reativar o escalonador automático gerenciado.
  • Defina o limite mínimo na instância de escalonamento automático como 1.000 unidades de processamento ou mais de um nó ou mais.
  • Quando você ativa o escalonamento automático em uma instância, ela pode ser menor que o valor limite mínimo definido configure no escalonador automático gerenciado. No entanto, a instância é escalonada automaticamente até o mínimo quando você o iniciar. Por exemplo, se sua instância tem um nó, mas você defina o valor mínimo para dois nós, ao iniciar sua instância, ela escalona automaticamente para até dois nós.

Parâmetros do escalonador automático gerenciado

Ao criar ou editar uma instância e ativar o escalonador automático gerenciado, você define os valores mostrados na tabela a seguir.

Parâmetro Descrição
Meta de utilização de CPU de alta prioridade Uma porcentagem da capacidade da CPU de alta prioridade da instância. Esse valor deve ser de 10% a 90%. Quando o uso de CPU de uma instância excede definido, o Spanner adiciona imediatamente capacidade da instância. Quando a utilização da CPU é substancialmente menor do que a meta, o Spanner remove a capacidade de computação. Para orientação, ver Determine a meta de utilização da CPU.
Meta de uso do armazenamento A porcentagem de armazenamento em um nó que pode ser usada antes O Spanner faz o escalonamento vertical. Essa meta garante que você sempre tenha capacidade de computação suficiente para lidar com flutuações na quantidade de dados armazenados. Esse valor precisa estar entre 10 e 99%. Para orientações, consulte Determine a meta de utilização do armazenamento.
Limite mínimo A menor capacidade de computação que O Spanner reduz o escalonamento vertical da instância. O valor mínimo não pode ser inferior a 10% do valor definido para o limite máximo. Por exemplo: Se o limite máximo for de 40 nós, o limite mínimo deverá ser de pelo menos 4 nós. O requisito de 10% é um limite absoluto. Para orientações, consulte Determinar o limite mínimo.
Limite máximo A maior capacidade de computação que o Spanner escalona da instância. Para nós, este valor precisa ser maior que 1 nó (ou mil unidades de processamento) e igual ou maior que o número mínimo de nós ou unidades de processamento. O valor não pode ser maior que 10 vezes o valor o número escolhido para a quantidade mínima de capacidade de computação. Estes 10 o requisito de tempos é um limite rígido. Para orientações, consulte Determinar o limite máximo

Configurar o escalonador automático gerenciado

Esta seção descreve como determinar os números a serem escolhidos para parâmetros do escalonador automático. Depois de definir seus valores iniciais, monitorar sua instância e ajustar os números, se necessário.

Determinar a meta de uso da CPU

O destino ideal para sua instância depende da latência e da capacidade de processamento da sua carga de trabalho. Para ver nossas recomendações de uso máximo da CPU para configurações de instâncias regionais, birregionais e multirregionais, consulte Alertas de alta utilização da CPU.

Em geral, se a latência estiver alta demais, reduza a meta de uso da CPU.

Determinar a meta de utilização do armazenamento

No escalonamento automático, a meta de utilização do armazenamento é expressa como uma porcentagem por nó. Para instâncias com 1 nó (1.000 unidades de processamento) ou mais, o armazenamento é de 4 TB por nó.

Determinar o limite máximo

O valor escolhido como a quantidade máxima de capacidade de computação é igual a a capacidade de computação que a instância precisa para lidar com tráfego intenso, mesmo que não espere atingir esse volume a maior parte tempo de resposta. O Spanner nunca é escalonado verticalmente para uma capacidade de computação maior do que necessidades. Esse número também é a maior quantidade pela capacidade que você pretende pagar. Consulte Parâmetros do escalonador automático para detalhes sobre os valores aceitos.

O limite máximo precisa permitir a meta de utilização da CPU e o meta de utilização do armazenamento que você definiu para o escalonamento automático.

  • Se você estiver alterando uma instância de alocação manual para gerenciada escalonamento automático, encontre a maior capacidade de computação que a instância teve nos últimos um ou dois meses. O máximo do seu escalonador automático gerenciado deve ser pelo menos tão alto.

  • Se você estiver ativando o escalonador automático gerenciado para uma nova instância, consulte métricas de outras instâncias e usá-las como um guia ao definir ao limite máximo.

  • Se você tiver uma nova carga de trabalho e não tiver certeza de como ela vai crescer, consegue estimar a quantidade de capacidade de computação necessária meta de utilização do armazenamento integrado e ajustar o número depois.

Você também precisa saber quanta cota resta no nó, porque o o escalonador automático gerenciado não pode configurar sua instância para ter mais capacidade de computação que sua cota. Para mais informações, consulte Limites de nós.

Depois que a instância estiver funcionando com o escalonamento automático ativado, monitorar a instância e verificar se o valor escolhido o limite máximo é pelo menos tão alto quanto o recomendado para a meta de CPU e o limite recomendado para o destino de armazenamento.

Determinar o limite mínimo

Você define um limite mínimo para o escalonador automático gerenciado para garantir que seus é possível reduzir escala vertical a escala vertical da instância do Spanner tamanho econômico. O Spanner impede automaticamente que o nó fique abaixo do mínimo necessário para manter a CPU e o armazenamento metas de utilização.

O menor valor mínimo permitido pelo escalonador automático gerenciado é de 1 nó ou 1.000 de processamento e unidades de processamento. Quando você ativa o escalonamento automático de uma instância menor que o valor mínimo configurado para o escalonador automático gerenciado, é escalonada automaticamente até esse mínimo quando iniciada.

Depois de iniciar a instância com escalonamento automático gerenciado, execute uma teste inicial para garantir que ele funciona com o tamanho mínimo definido. Você deve testar periodicamente para garantir que continue funcionando conforme o esperado.

Para mais informações sobre os valores aceitos, consulte Parâmetros do escalonador automático gerenciado neste documento.

Em muitos casos, você quer definir o valor mínimo como mais de um. Escolha uma ou aumente o limite mínimo nas seguintes situações:

  • Você tem um evento de pico de escala próximo quando espera que seu tráfego aumentar temporariamente e garantir que tem capacidade de computação de armazenamento.
  • Seu aplicativo envia tráfego com picos. Quando você adiciona uma nova capacidade de computação, O Spanner é reequilibrado automaticamente para usar os novos nós ou de processamento e unidades de processamento. Como esse processo pode levar vários minutos, você pode adotar uma abordagem conservadora e escolher uma abordagem mínimo Dessa forma, sua instância se acomodará perfeitamente aos picos.
  • Você aumenta a capacidade máxima de computação. O mínimo deve ser sempre dez porcentagem ou menos da meta da capacidade máxima de computação. Por exemplo, se você defina o número máximo de nós como 30, defina o número mínimo de nós para pelo menos 3.

Se você aumentar o valor da capacidade mínima de computação de uma instância, O Spanner tenta escalonar imediatamente a instância para o novo mínimo As restrições padrão se aplicam. Quando você está sem cota, sua solicitação para alterar o escalonador automático gerenciado falha e a configuração não é atualizada.

Sinalizações e limitações de parâmetros da Google Cloud CLI

Ao usar a Google Cloud CLI para configurar o escalonador automático gerenciado, você tem algumas as sinalizações obrigatórias que precisam ser definidas. Há sinalizações opcionais usadas para indicar se quer usar nós ou unidades de processamento. Para mais informações sobre criar uma nova instância com o escalonador automático gerenciado ou ativar o gerenciamento escalonamento automático em uma instância atual, consulte:

As sinalizações a seguir são necessárias para ativar o escalonador automático gerenciado na sua instância:

  • autoscaling-high-priority-cpu-percent
  • autoscaling-storage-percent

Se você optar por usar nós, também deverá usar as duas sinalizações a seguir ao ative o escalonador automático gerenciado:

  • autoscaling-min-nodes
  • autoscaling-max-nodes

Se você optar por usar unidades de processamento, também deverá usar os dois itens a seguir ao ativar o escalonador automático gerenciado:

  • autoscaling-min-processing-units
  • autoscaling-max-processing-units

As limitações a seguir se aplicam ao adicionar o escalonador automático gerenciado a um instância atual usando a Google Cloud CLI:

  • Não é possível usar a sinalização --nodes com o --autoscaling-min-nodes ou --autoscaling-max-nodes porque o uso de --nodes define uma de nós em vez de um intervalo de escalonamento. Da mesma forma, não é possível usar a sinalização --processing-units com autoscaling-min-processing-units ou autoscaling-max-processing-units porque o uso de --processing-units define um número específico de unidades de processamento, em vez de um intervalo de escalonamento.
  • Não é possível misturar as sinalizações de nós e unidades de processamento. Para exemplo, não é possível usar --autoscaling-max-nodes com autoscaling-min-processing-units.

Ajustar as configurações

Fique de olho no uso da capacidade de computação e ajuste as configurações necessário, principalmente depois da primeira ativação do escalonador automático gerenciado. Recomendamos usando a página Insights do sistema na console do Google Cloud.

Controle de acesso

Para configurar o escalonador automático gerenciado, você precisa ser o principal em um papel com criar e atualizar permissões da instância que você está configurando.

Monitoramento

O Spanner oferece várias métricas para você entender como que o escalonador automático gerenciado está funcionando, já que ele escalona verticalmente para atender a requisitos de carga de trabalho. As métricas também podem ajudar você a avaliar se suas configurações são ideais para atender aos requisitos de custo e carga de trabalho da sua empresa. Por exemplo: se você observar que a contagem de nós para uma instância costuma se aproximar do máximo de nós, considere aumentar o máximo. Para saber mais sobre para monitorar os recursos do Spanner, consulte Monitore instâncias com o Cloud Monitoring.

As métricas a seguir são exibidos em gráficos na página Insights do sistema no console do Google Cloud. Também é possível visualizar essas métricas usando Cloud Monitoring:

  • spanner.googleapis.com/instance/autoscaling/min_node_count
  • spanner.googleapis.com/instance/autoscaling/max_node_count
  • spanner.googleapis.com/instance/autoscaling/min_processing_units
  • spanner.googleapis.com/instance/autoscaling/max_processing_units
  • spanner.googleapis.com/instance/autoscaling/high_priority_cpu_target_utilization
  • spanner.googleapis.com/instance/autoscaling/storage_target_utilization

Geração de registros

O Spanner cria um registro de auditoria de eventos do sistema sempre que escalona um instância.

É possível visualizar os registros de eventos do sistema do escalonador automático gerenciado na Console do Google Cloud na página Insights do sistema.

Também é possível ver os registros usando a Análise de registros:

  1. No console do Google Cloud, abra a Análise de registros:

    Acesse o Explorador de registros

  2. Selecione o projeto do Google Cloud apropriado.

  3. No campo Consulta, insira:

     protoPayload.methodName="AutoscaleInstance"
    

    É possível adicionar a seguinte consulta para filtrar ainda mais os registros:

    resource.type="spanner_instance"
    resource.labels.instance_id=INSTANCE_ID
    resource.labels.project_id=PROJECT_ID
    logName="projects/span-cloud-testing/logs/cloudaudit.googleapis.com%2Fsystem_event"
    protoPayload.methodName="AutoscaleInstance"
  4. Clique em Executar consulta.

O painel Resultados da consulta exibirá os registros da última hora.

Para saber mais sobre como visualizar registros, consulte Cloud Logging. É possível configurar alertas com base em registros. na página Análise de registros no Google Cloud ou usando o API Cloud Monitoring.

A seguir