Gerir o dimensionamento horizontal do cluster (aumentar horizontalmente) no Azure Data Explorer para acomodar a procura em mudança

Dimensionar um cluster adequadamente é fundamental para o desempenho do Azure Data Explorer. Um tamanho de cluster estático pode levar à subutilização ou à sobreutilização, nenhuma das quais é ideal. Uma vez que a procura num cluster não pode ser prevista com precisão absoluta, é melhor dimensionar um cluster, adicionar e remover a capacidade e os recursos da CPU com uma procura em mudança.

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

  • Dimensionamento horizontal, também denominado aumento e redução horizontal.
  • Dimensionamento vertical, também denominado aumentar e reduzir verticalmente. Este artigo explica o fluxo de trabalho de dimensionamento horizontal.

Configurar o dimensionamento horizontal

Ao utilizar o dimensionamento horizontal, pode dimensionar a contagem de instâncias automaticamente, com base em regras e agendas predefinidas. Para especificar as definições de dimensionamento automático do cluster:

  1. Na portal do Azure, aceda ao recurso de cluster do Azure Data Explorer. Em Definições, selecione Aumentar horizontalmente.

  2. Na janela Aumentar horizontalmente, selecione o método de dimensionamento automático pretendido: Dimensionamento manual, Dimensionamento automático otimizado ou Dimensionamento automático personalizado.

Dimensionamento manual

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

Método de dimensionamento manual.

O dimensionamento automático otimizado é a predefinição durante a criação do cluster e o método de dimensionamento recomendado. Este método otimiza o desempenho e o custo do cluster, da seguinte forma:

  • Se o cluster estiver subutilizado, será reduzido horizontalmente para um custo mais baixo sem afetar o desempenho necessário.
  • Se o cluster for sobreutilizado, será aumentado horizontalmente para manter o desempenho ideal.

Para configurar o dimensionamento automático otimizado:

  1. Selecione Dimensionamento automático otimizado.

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

  3. Selecione Guardar.

    Método de dimensionamento automático otimizado.

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

Lógica do dimensionamento automático otimizado

O dimensionamento automático otimizado é gerido por lógica preditiva ou reativa. A lógica preditiva controla o padrão de utilização do cluster e, quando identifica a sazonalidade com elevada confiança, gere o dimensionamento do cluster. Caso contrário, a lógica reativa que controla a utilização real do cluster é utilizada para tomar decisões sobre operações de dimensionamento de clusters com base no nível atual de utilização de recursos.

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

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

Tanto a lógica preditiva como a reativa estão vinculadas aos limites de tamanho do cluster, ao número mínimo e máximo de instâncias, conforme definido na configuração otimizada do dimensionamento automático. As operações frequentes de aumento horizontal e redução horizontal do cluster são indesejáveis devido ao impacto nos recursos do cluster e ao tempo necessário para adicionar ou remover instâncias, bem como reequilibrar a cache frequente em todos os nós.

Dimensionamento automático preditivo

A lógica preditiva prevê a utilização do cluster para o dia seguinte com base no padrão de utilização ao longo das últimas semanas. A previsão é utilizada para criar um agendamento de operações de redução horizontal ou horizontal para ajustar o tamanho do cluster antecipadamente. Isto permite que o dimensionamento do cluster e o reequilíbrio de dados sejam concluídos a tempo da alteração da carga. Esta lógica é especialmente eficaz para padrões sazonais, como picos de utilização diária ou semanal.

No entanto, em cenários em que existe um pico exclusivo na utilização que excede a previsão, o dimensionamento automático otimizado reverterá para a lógica reativa. Quando isto acontece, as operações de aumento ou aumento horizontal são executadas ad hoc com base no nível mais recente de utilização de recursos.

Dimensionamento automático reativo

Aumentar horizontalmente

Quando o cluster se aproxima de um estado de sobreutilização, será realizada uma operação de aumento horizontal para manter o desempenho ideal. É efetuada uma operação de aumento horizontal quando ocorre pelo menos uma das seguintes condições:

  • A utilização da cache é elevada há mais de uma hora
  • A CPU está elevada há mais de uma hora
  • A utilização de ingestão de dados está elevada há mais de uma hora

Reduzir horizontalmente

Quando o cluster é subutilizado, ocorrerá uma operação de redução horizontal para um custo mais baixo, mantendo o desempenho ideal. São utilizadas várias métricas para verificar se é seguro dimensionar o cluster.

Para garantir que não há sobrecarga de recursos, as seguintes métricas são avaliadas antes de o dimensionamento ser efetuado:

  • A utilização da cache não está elevada
  • A CPU está abaixo da média
  • A utilização da ingestão de dados está abaixo da média
  • Se for utilizada a ingestão de transmissão em fluxo, a utilização da ingestão de transmissão em fluxo não é elevada
  • A métrica Keep Alive está acima de um mínimo definido, processado corretamente e a tempo indicando que o cluster está a responder
  • Não existe limitação de consultas
  • O número de consultas falhadas está abaixo de um mínimo definido

Nota

A lógica de redução horizontal requer uma avaliação de 1 dia antes da implementação do dimensionamento otimizado. Esta avaliação ocorre uma vez por hora. Se for necessária uma alteração imediata, utilize o dimensionamento manual.

Dimensionamento automático personalizado

Embora o dimensionamento automático otimizado seja a opção de dimensionamento recomendada, o dimensionamento automático personalizado do Azure também é suportado. Ao utilizar o dimensionamento automático personalizado, pode dimensionar o cluster dinamicamente com base nas métricas que especificar. Utilize os seguintes passos para configurar o dimensionamento automático personalizado.

Regra de dimensionamento.

  1. Na caixa Nome da definição de dimensionamento automático, introduza um nome, como Escalamento horizontal: utilização da cache.

  2. Em Modo de dimensionamento, selecione Dimensionar com base numa métrica. Este modo fornece dimensionamento dinâmico. Também pode selecionar Dimensionar para uma contagem de instâncias específica.

  3. Selecione + Adicionar uma regra.

  4. Na secção Regra de dimensionamento à direita, introduza valores para cada definição.

    Critérios

    Definições 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 pretende que a operação de dimensionamento se baseie, como a Utilização da Cache.
    Estatística do intervalo de agregação Escolha entre Média, Mínimo, Máximo e Soma.
    Operador Escolha a opção adequada, como Maior ou igual a.
    Limite Escolha um valor adequado. Por exemplo, para a utilização da cache, 80% é um bom ponto de partida.
    Duração (em minutos) Escolha um período de tempo adequado para o sistema olhar para trás ao calcular métricas. Comece com a predefinição de 10 minutos.

    Ação

    Definições Descrição e valor
    Operação Escolha a opção adequada para aumentar ou aumentar horizontalmente.
    Contagem de instâncias Escolha o número de nós ou instâncias que pretende adicionar ou remover quando uma condição de métrica é cumprida.
    Repouso (minutos) Escolha um intervalo de tempo adequado para aguardar entre operações de dimensionamento. Comece com a predefinição de cinco minutos.
  5. Selecione Adicionar.

  6. Na secção Limites da instância à esquerda, introduza valores para cada definição.

    Definições Descrição e valor
    Mínimo O número de instâncias que o cluster não dimensionará abaixo, independentemente da utilização.
    Máximo O número de instâncias que o cluster não dimensionará acima, independentemente da utilização.
    Predefinição O número predefinido de instâncias. Esta definição é utilizada se existirem problemas com a leitura das métricas de recursos.
  7. Selecione Guardar.

Configurou agora o dimensionamento horizontal para o cluster do Azure Data Explorer. Adicione outra regra para dimensionamento vertical. Se precisar de assistência com problemas de dimensionamento do cluster, abra um pedido de suporte no portal do Azure.