Gerenciar o dimensionamento horizontal do cluster (escalar horizontalmente) no Azure Data Explorer para acomodar mudanças da demanda

Dimensionar um cluster apropriadamente é essencial para o desempenho do Azure Data Explorer. Um tamanho de cluster estático pode levar à subutilização ou superutilização, e nenhuma dessas condições é a ideal. Como a demanda em um cluster não pode ser prevista com precisão absoluta, é melhor dimensionar o cluster, adicionando e removendo capacidade e recursos de CPU conforme as mudanças da demanda.

Há dois fluxos de trabalho para dimensionar um cluster do Azure Data Explorer:

  • Dimensionamento horizontal, também chamado de escalada e redução horizontal.
  • Dimensionamento vertical, também chamado de escalada e redução vertical. Este artigo explica o fluxo de trabalho do dimensionamento horizontal.

Configurar o dimensionamento horizontal

Ao usar o dimensionamento horizontal, você pode dimensionar a contagem de instâncias automaticamente com base em regras e agendamentos predefinidos. Para especificar as configurações de dimensionamento automático para o cluster:

  1. No portal do Azure, acesse o recurso de cluster do Azure Data Explorer. Em Configurações, selecione Escalar horizontalmente.

  2. Na janela Escalar horizontalmente, selecione o método de dimensionamento automático que você deseja: Dimensionamento manual, Dimensionamento automático otimizado ou Dimensionamento automático personalizado.

Dimensionamento manual

Na opção de escala manual, o cluster tem uma capacidade estática que não é alterada automaticamente. Selecione a capacidade estática usando a barra contagem de instâncias . O dimensionamento do cluster permanece na configuração selecionada até ser alterado.

Método de escala manual.

O dimensionamento automático otimizado é a configuração padrão durante a criação do cluster e o método de dimensionamento recomendado. Esse método otimiza o desempenho e os custos do cluster da seguinte maneira:

  • Se o cluster for subutilizado, ele será reduzido horizontalmente para um custo menor sem afetar o desempenho necessário.
  • Se o cluster for superutilizado, ele será escalado horizontalmente para manter o desempenho ideal.

Para configurar o dimensionamento automático otimizado:

  1. Selecione Dimensionamento automático otimizado.

  2. Especifique uma contagem de instâncias mínima e máxima. O dimensionamento automático do cluster varia entre esses valores, com base na carga.

  3. Clique em Salvar.

    Método de dimensionamento automático otimizado.

O dimensionamento automático otimizado começa a funcionar. As ações dele podem ser exibidas no log de atividades do cluster no Azure.

Lógica de dimensionamento automático otimizado

O dimensionamento automático otimizado é gerenciado por lógica preditiva ou reativa. A lógica preditiva acompanha o padrão de uso do cluster e, quando identifica a sazonalidade com alta confiança, gerencia a escala do cluster. Caso contrário, a lógica reativa que acompanha o uso real do cluster é usada para tomar decisões sobre operações de escala do cluster com base no nível atual de uso dos recursos.

As principais métricas para fluxos preditivos e reativos são:

  • CPU
  • Fator de utilização de cache
  • Utilização da ingestão

A lógica preditiva e reativa estão vinculadas aos limites de tamanho do cluster, o número mínimo e máximo de instâncias, conforme definido na configuração de dimensionamento automático otimizado. As operações de escala e redução horizontais são indesejáveis devido ao impacto nos recursos de cluster e o tempo necessário para adicionar ou remover instâncias, além de rebalancear o cache quente em todos os nós.

Dimensionamento automático preditivo

A lógica preditiva prevê o uso do cluster para o dia seguinte com base no padrão de uso dele nas últimas semanas. A previsão é usada para criar um agendamento de operações de redução ou escala horizontais para ajustar o tamanho do cluster com antecedência. Isso permite que a escala do cluster e o rebalanceamento de dados sejam concluídos a tempo para quando a carga muda. Essa lógica é especialmente eficaz para padrões sazonais, como picos de uso diários ou semanais.

No entanto, em cenários em que há um pico exclusivo no uso que excede a previsão, o dimensionamento automático otimizado fará fall back na lógica reativa. Quando isso acontece, as operações de redução ou escala horizontais são executadas ad hoc com base no nível mais recente de uso de recursos.

Dimensionamento automático reativo

Escalar horizontalmente

Quando o cluster se aproximar de um estado de superutilização, uma operação de escala horizontal ocorrerá para manter o desempenho ideal. Uma operação de escala horizontal é executada quando pelo menos uma das seguintes condições acontece:

  • A utilização do cache está alta por mais de uma hora
  • O uso da CPU está alto por mais de uma hora
  • A utilização da ingestão está alta por mais de uma hora

Reduzir horizontalmente

Quando o cluster for subutilizado, ocorrerá uma operação de redução horizontal para reduzir o custo, mantendo o desempenho ideal. Várias métricas são usadas para verificar se é seguro reduzir horizontalmente o cluster.

Para garantir que não haja sobrecarga de recursos, as seguintes métricas são avaliadas antes que a redução horizontal seja executada:

  • A utilização do cache não está alta
  • O uso de CPU está abaixo da média
  • A utilização da ingestão está abaixo da média
  • Se a ingestão de streaming é usada, a utilização dela não está alta
  • A métrica keep alive está acima do limite mínimo definido, foi processada corretamente e é pontual, indicando que o cluster está respondendo
  • Não há nenhuma limitação de consulta
  • O número de consultas com falha está abaixo de um mínimo definido

Observação

A lógica de redução horizontal exige uma avaliação de 1 dia antes da implementação da redução horizontal otimizada. Essa avaliação ocorre uma vez por hora. Se for necessária uma alteração imediata, use o dimensionamento manual.

Dimensionamento automático personalizado

Embora o dimensionamento automático otimizado seja a opção de dimensionamento recomendada, também há suporte para o dimensionamento automático personalizado do Azure. Usando o dimensionamento automático personalizado, você pode dimensionar o cluster dinamicamente com base em métricas especificadas. Use as etapas a seguir para configurar o dimensionamento automático personalizado.

Regra de escala.

  1. Na caixa Nome da configuração de dimensionamento automático, insira um nome, como Expansão: utilização de cache.

  2. Para o Modo de escala, selecione Escala baseada em uma métrica. Esse modo fornece dimensionamento dinâmico. Você também pode selecionar Escalar segundo uma contagem de instâncias específica.

  3. Selecione +Adicionar uma regra.

  4. Na seção Regra de escala à direita, insira os valores para cada configuração.

    Critérios

    Configuração Descrição e valor
    Agregação de tempo Selecione um critério de agregação, como Média.
    Nome da métrica Selecione a métrica na qual a operação de escala se baseará, como Utilização de cache.
    Estatística de intervalo de agregação Escolha entre Média, Mínima, Máxima e Soma.
    Operador Escolha a opção apropriada, como Maior que ou igual a.
    Limite Escolha um valor apropriado. Por exemplo, para a utilização de cache, 80% é um bom ponto de partida.
    Duração (em minutos) Escolha um período apropriado para o sistema retroceder ao calcular métricas. Comece com o padrão de dez minutos.

    Ação

    Configuração Descrição e valor
    Operação Escolha a opção apropriada para reduzir ou escalar horizontalmente.
    Contagem de instâncias Escolha o número de nós ou instâncias que você deseja adicionar ou remover quando uma condição de métrica for atendida.
    Tempo de resfriamento (minutos) Escolha um intervalo de tempo apropriado de espera entre as operações de escala. Comece com o padrão de cinco minutos.
  5. Selecione Adicionar.

  6. Na seção Limites de instância à esquerda, insira os valores para cada configuração.

    Configuração Descrição e valor
    Mínimo É o número de instâncias para baixo do qual o cluster não será reduzido, independentemente da utilização.
    Máximo É o número de instâncias para acima do qual o cluster não será aumentado, independentemente da utilização.
    Default O número padrão de instâncias. Essa configuração será usada se houver problemas na leitura das métricas do recurso.
  7. Selecione Salvar.

Você acabou de configurar o dimensionamento horizontal do cluster do Azure Data Explorer. Adicione outra regra para o dimensionamento vertical. Se você precisar de assistência com problemas de escala de cluster, abra uma solicitação de suporte no portal do Azure.