Todos os produtos
Search
Central de documentação

E-MapReduce:Configure o Auto Scaling (apenas para clusters Hadoop)

Última atualização: Sep 21, 2026

Quando as cargas de trabalho flutuam, ative o Auto Scaling e configure regras de dimensionamento para que o E-MapReduce (EMR) adicione ou remova nós de tarefa automaticamente. Isso ajuda a garantir a conclusão dos jobs e a reduzir custos.

Pré-requisitos

É necessário ter um cluster Hadoop criado. Para mais informações, consulte Create a cluster.

Notas de uso

  • Especifique os tipos de instância para os nós a serem dimensionados apenas quando o Auto Scaling estiver desativado. Para modificar os tipos de instância, desative o Auto Scaling, atualize as especificações e reative-o.

  • O sistema lista os tipos de instância correspondentes às especificações de vCPU e memória selecionadas. Selecione os tipos desejados para permitir o dimensionamento do cluster com essas especificações.

  • Para evitar falhas no Auto Scaling por estoque insuficiente de ECS, selecione até três tipos de instância ECS.

  • Seja com ultra disk ou SSD padrão, o tamanho mínimo do disco de dados é de 40 GB.

  • O dimensionamento baseado em carga gerencia dinamicamente os grupos do Auto Scaling por meio do CloudMonitor. Após a configuração de uma regra de dimensionamento, o sistema cria automaticamente uma regra de alerta correspondente no CloudMonitor. Para garantir o funcionamento correto do Auto Scaling do EMR, não modifique, exclua nem desative essas regras de alerta geradas pelo sistema.

Procedimento

  1. Acesse a página do Auto Scaling.

    1. Faça login no console do EMR on ECS.

    2. Na barra de navegação superior, selecione a região e o grupo de recursos conforme necessário.

    3. Na página EMR on ECS, clique em ID do cluster desejado.

    4. Clique em guia Auto Scaling.

  2. Crie um grupo do Auto Scaling.

    1. Na guia Configure Scaling, clique em Create Auto Scaling Group.

      Nota

      Gerencie e configure grupos do Auto Scaling apenas na página do Auto Scaling. Não é possível gerenciá-los na página de gerenciamento de nós.

    2. Na caixa de diálogo Add Auto Scaling Group, insira um Node group name e clique em OK.

  3. Na guia Configure Scaling, localize o grupo de nós desejado e clique em Configure Rule na coluna Actions.

  4. No painel Configure Auto Scaling, configure os parâmetros na seção Basic Information.

    Parâmetro

    Descrição

    Maximum Number of Instances

    O número máximo de nós de tarefa no grupo do Auto Scaling. O grupo não expande além desse limite, mesmo com o acionamento de uma regra de dimensionamento. O valor máximo é 1.000.

    Minimum Number of Instances

    O número mínimo de nós de tarefa no grupo do Auto Scaling. O grupo não reduz a quantidade de nós abaixo desse valor.

    Por exemplo, se uma regra para adicionar um nó for acionada quando a contagem atual for zero, mas o mínimo estiver definido como 3, o sistema adicionará três nós para atender ao requisito mínimo.

    Graceful Shutdown

    Defina um tempo limite para descomissionar um nó de tarefa que esteja executando jobs do YARN. O nó é descomissionado quando não há jobs em execução ou quando um job excede o tempo limite. O tempo limite máximo é de 3.600 segundos.

    Importante
    • Ao ativar o graceful shutdown, primeiro altere o valor do parâmetro yarn.resourcemanager.nodes.exclude-path do YARN para /etc/ecm/hadoop-conf/yarn-exclude.xml.

    • Após alterar o tempo limite, reinicie o YARN ResourceManager em horários de menor movimento para que a alteração entre em vigor.

  5. Na seção de instâncias do painel Configure Auto Scaling, selecione um modo de instância, método de faturamento e tipos de instância.

    • Single Billing Method

      O sistema encontra tipos de instância correspondentes às suas especificações de vCPU e memória e os exibe na seção Instance Type. Selecione um ou mais tipos de instância para permitir o dimensionamento do cluster.

      • Pay-as-you-go

        A ordem de seleção dos tipos de instância determina a prioridade de provisionamento. O sistema exibe o preço por hora de cada instância, que inclui os valores do EMR e do ECS.

      • Preemptible Instance

        Importante

        Se os seus jobs tiverem requisitos rigorosos de SLA, use este tipo de instância com cautela. Instâncias spot podem ser recuperadas devido a falhas de lance, o que pode interromper os jobs.

        A ordem de seleção dos tipos de instância determina a prioridade de provisionamento. O sistema exibe o preço por hora de pagamento conforme o uso para cada tipo de instância. Também é possível definir um preço máximo por hora (seu lance) para cada tipo. A instância é iniciada somente se o preço de mercado atual for igual ou inferior ao seu lance. Para mais informações, consulte What is a spot instance?.

    • Cost Optimization Mode

      Neste modo, crie uma política de controle de custos para equilibrar custo e estabilidade.

      Parâmetro

      Descrição

      Minimum Pay-As-You-Go Nodes in Auto Scaling Group

      O número mínimo de instâncias de pagamento conforme o uso no grupo do Auto Scaling. Se a contagem atual estiver abaixo desse valor, o sistema provisiona novas instâncias primeiro como pagamento conforme o uso.

      Percentage of Pay-As-You-Go Nodes

      Após atingir o número mínimo de instâncias de pagamento conforme o uso, essa porcentagem determina a proporção de instâncias adicionais a serem provisionadas nesse modelo.

      Lowest-Cost Instance Types

      O número de tipos de instância de menor custo a serem usados. Ao criar instâncias spot, o sistema as distribui uniformemente entre os tipos especificados. O valor máximo é 3.

      Replace Preemptible Instances

      Especifica se a compensação para instâncias spot deve ser ativada. Se ativada, o sistema substitui proativamente uma instância spot aproximadamente 5 minutos antes de sua recuperação.

      Se você não especificar os parâmetros Minimum Pay-As-You-Go Nodes in Auto Scaling Group, Percentage of Pay-As-You-Go Nodes e Lowest-Cost Instance Types, o sistema cria um grupo de dimensionamento otimizado para custos padrão. Caso contrário, cria um grupo otimizado para custos com política de instâncias mistas. Ambos os tipos são totalmente compatíveis em operações de API e recursos.

      Em um grupo de dimensionamento otimizado para custos com política de instâncias mistas, é possível replicar o comportamento de um grupo padrão. Por exemplo:

      • Para criar apenas instâncias de pagamento conforme o uso:

        Defina Minimum Pay-As-You-Go Nodes in Auto Scaling Group como 0, Percentage of Pay-As-You-Go Nodes como 100 e Lowest-Cost Instance Types como 1.

      • Para priorizar a criação de instâncias spot:

        Defina Minimum Pay-As-You-Go Nodes in Auto Scaling Group como 0, Percentage of Pay-As-You-Go Nodes como 0 e Lowest-Cost Instance Types como 1.

  6. Na seção Configure Auto Scaling do painel Trigger Mode, selecione um modo de acionamento e configure suas regras.

    • Time-based Scaling: Se as cargas de trabalho do cluster Hadoop tiverem picos e vales previsíveis, agende atividades de dimensionamento para adicionar ou remover nós de tarefa em horários fixos. Isso garante a conclusão dos jobs e reduz custos.

      As regras de dimensionamento incluem scale-out e scale-in. Este tópico usa uma regra de scale-out como exemplo. Se você desativar o Auto Scaling, o sistema exclui todas as regras, e elas precisarão ser reconfiguradas ao reativá-lo.

      Parâmetro

      Descrição

      Rule Name

      Os nomes das regras de dimensionamento, incluindo scale-out e scale-in, devem ser exclusivos no cluster.

      Execution Rule

      • Execute Repeatedly: Agende uma atividade de dimensionamento para execução em um horário específico diário, semanal ou mensal.

      • Execute Only Once: A atividade de dimensionamento é executada apenas uma vez no horário especificado.

      Execution Time

      O horário em que a regra é executada.

      Rule Expiration Time

      A data e o horário de expiração da regra.

      Retry timeout (seconds)

      Uma atividade de dimensionamento agendada pode falhar no horário especificado. Se você definir um tempo limite de nova tentativa, o sistema tentará novamente a cada 30 segundos durante esse período até obter sucesso. O valor varia de 0 a 21.600 segundos.

      Por exemplo, suponha que a atividade de dimensionamento A esteja agendada, mas a atividade B já esteja em andamento ou em seu período de resfriamento (cooldown). Nesse caso, a atividade A não pode ser executada. O sistema tenta novamente a atividade A a cada 30 segundos durante o período especificado. Assim que as condições forem atendidas, o cluster execute imediatamente a atividade.

      Number of Adjusted Instances

      O número de nós de tarefa a serem adicionados cada vez que a regra for acionada.

      Cooldown Time (s)

      O intervalo após a conclusão de uma atividade de dimensionamento no qual nenhuma outra atividade pode ser acionada.

    • Load-based Scaling: Se não for possível prever com precisão os picos e vales das cargas de trabalho de big data, use uma política de dimensionamento baseada em carga.

      As regras de dimensionamento incluem scale-out e scale-in. Este tópico usa uma regra de scale-out como exemplo. Se você desativar o Auto Scaling, o sistema exclui todas as regras, e elas precisarão ser reconfiguradas ao reativá-lo. Ao alternar políticas de dimensionamento, como de baseada em carga para baseada em tempo, as regras da política anterior tornam-se inativas. No entanto, os nós adicionados por essas regras são mantidos e não liberados.

      Parâmetro

      Descrição

      Rule Name

      Os nomes das regras de dimensionamento, incluindo scale-out e scale-in, devem ser exclusivos no cluster.

      Cluster Load Metrics

      As métricas são obtidas do YARN. Para mais informações, consulte a documentação oficial do Hadoop.

      Para o mapeamento entre as métricas de Auto Scaling do E-MapReduce e os services do YARN, consulte Mapping between E-MapReduce auto scaling metrics and YARN services.

      Statistical Period

      O sistema verifica se a métrica de carga do cluster selecionada, agregada pela regra estatística especificada (por exemplo, Média, Máximo ou Mínimo) durante um período estatístico, atinge o limiar. Cada vez que atinge o limiar conta como um acionamento.

      Statistical Rule

      Condition Repetition Threshold

      O número de vezes consecutivas em que a métrica deve atingir o limiar antes do acionamento de uma atividade de dimensionamento.

      Adjustment value

      O número de nós de tarefa a serem adicionados cada vez que a regra for acionada.

      Cooldown Time (s)

      O período após a conclusão de uma atividade de dimensionamento no qual outras atividades não podem ser acionadas. O sistema ignora os acionamentos durante esse tempo e aguarda o próximo acionamento válido após o término do resfriamento.

  7. Clique em Save e salve as alterações.

    Ative o Auto Scaling conforme necessário. Para mais informações, consulte Enable or disable auto scaling (Hadoop clusters only).

Mapeamento de métricas de Auto Scaling do EMR para o YARN

Métrica de Auto Scaling

Service

Descrição

YARN.AvailableVCores

YARN

O número de núcleos virtuais disponíveis.

YARN.PendingVCores

YARN

O número de núcleos virtuais com alocação pendente.

YARN.AllocatedVCores

YARN

O número de núcleos virtuais alocados.

YARN.ReservedVCores

YARN

O número de núcleos virtuais reservados.

YARN.AvailableMemory

YARN

A quantidade de memória disponível, em MB.

YARN.PendingMemory

YARN

A quantidade de memória com alocação pendente, em MB.

YARN.AllocatedMemory

YARN

A quantidade de memória alocada, em MB.

YARN.ReservedMemory

YARN

A quantidade de memória reservada, em MB.

YARN.AppsRunning

YARN

O número de aplicativos em execução.

YARN.AppsPending

YARN

O número de aplicativos pendentes.

YARN.AppsKilled

YARN

O número de aplicativos encerrados.

YARN.AppsFailed

YARN

O número de aplicativos com falha.

YARN.AppsCompleted

YARN

O número de aplicativos concluídos.

YARN.AppsSubmitted

YARN

O número de aplicativos enviados.

YARN.AllocatedContainers

YARN

O número de contêineres alocados.

YARN.PendingContainers

YARN

O número de contêineres com alocação pendente.

YARN.ReservedContainers

YARN

O número de contêineres reservados.

YARN.MemoryAvailablePercentage

YARN

A porcentagem de memória disponível (MemoryAvailablePercentage = AvailableMemory / TotalMemory).

YARN.ContainerPendingRatio

YARN

A proporção de contêineres pendentes para contêineres alocados (ContainerPendingRatio = PendingContainers / AllocatedContainers).