As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Opções de redução vertical da escala para os clusters do Amazon EMR
nota
Não há mais suporte para as opções de comportamento de redução da escala verticalmente desde o Amazon EMR versão 5.10.0. Devido à introdução do faturamento por segundo na Amazon EC2, o comportamento padrão de redução de escala dos clusters do Amazon EMR agora é encerrado na conclusão da tarefa.
Com as versões 5.1.0 a 5.9.1 do Amazon EMR, há duas opções para o comportamento de redução: encerrar no limite da hora da instância para o faturamento da Amazon ou encerrar na conclusão da tarefa. EC2 A partir da versão 5.10.0 do Amazon EMR, a configuração para rescisão no limite da hora da instância está obsoleta devido à introdução do faturamento por segundo na Amazon. EC2 Não recomendamos especificar o encerramento no limite de tempo de execução da instância em que a opção está disponível.
Atenção
Se você usar o AWS CLI para emitir um modify-instance-groups
comEC2InstanceIdsToTerminate
, essas instâncias serão encerradas imediatamente, sem considerar essas configurações e independentemente do status dos aplicativos em execução nelas. O encerramento de uma instância dessa forma tem o risco de perda de dados e de comportamento imprevisível do cluster.
Quando o encerramento na conclusão da tarefa é especificado, o Amazon EMR lista de negações e drena as tarefas dos nós antes de encerrar as instâncias da Amazon. EC2 Com qualquer comportamento especificado, o Amazon EMR não encerra instâncias da EC2 Amazon em grupos de instâncias principais se isso puder levar à corrupção do HDFS.
Terminar na conclusão de tarefas
O Amazon EMR permite que você reduzir a escala verticalmente do cluster sem afetar a sua workload. O Amazon EMR tenta descomissionar normalmente o YARN, o HDFS e outros daemons nos nós principais e de tarefas durante uma operação de redimensionamento sem perder dados ou interromper trabalhos. O Amazon EMR reduzirá o tamanho de grupos de instâncias somente se o trabalho atribuído a eles tiver sido concluído e eles estiverem ociosos. Para o YARN NodeManager Graceful Decommission, você pode ajustar manualmente o tempo que um nó espera pelo descomissionamento.
nota
Quando ocorre um descomissionamento normal, pode haver perda de dados. Certifique-se de fazer backup de seus dados.
Importante
É possível que os dados do HDFS sejam perdidos permanentemente durante a substituição normal de uma instância central não íntegra. Recomendamos que você sempre faça backup de seus dados.
Este tempo é definido usando uma propriedade na a classificação de configuração YARN-site
. Usando o Amazon EMR versão 5.12.0 e posterior, especifique a propriedade YARN.resourcemanager.nodemanager-graceful-decommission-timeout-secs
. Ao usar versões anteriores do Amazon EMR, especifique a propriedade YARN.resourcemanager.decommissioning.timeout
.
Se ainda houver contêineres ou aplicativos do YARN em execução quando o tempo limite de desativação for ultrapassado, o nó será obrigatoriamente desativado e o YARN reprogramará os contêineres afetados em outros nós. O valor padrão é de 3.600 segundos (uma hora). Você pode definir esse tempo limite com um valor arbitrariamente alto para forçar a redução amigável a esperar mais tempo. Para obter mais informações, consulte Graceful Decommission of YARN nodes
Grupos de nós de tarefa
O Amazon EMR seleciona, de forma inteligente, as instâncias que não têm tarefas em execução relacionadas a etapas ou aplicações e as remove primeiro do cluster. Se todas as instâncias do cluster estiverem em uso, o Amazon EMR aguardará a conclusão das tarefas da instância antes de removê-la do cluster. O tempo de espera padrão é 1 hora. Esse valor pode ser alterado com a configuração YARN.resourcemanager.decommissioning.timeout
. O Amazon EMR usa a nova configuração dinamicamente. Você pode definir isso como um número arbitrariamente grande para garantir que o Amazon EMR não termine nenhuma tarefa ao reduzir o tamanho do cluster.
Grupos de nós centrais
Nos nós principais, os DataNode daemons YARN NodeManager e HDFS devem ser desativados para que o grupo de instâncias seja reduzido. Para o YARN, a redução amigável garante que um nó marcado para desativação seja passado para o estado DECOMMISSIONED
somente se não houver contêineres ou aplicações pendentes ou não concluídas. A desativação termina imediatamente se não há contêineres em execução no nó no início da desativação.
Para o HDFS, a redução amigável certifica-se de que a capacidade de destino do HDFS é grande o suficiente para comportar todos os blocos existentes. Se a capacidade alvo não for grande o suficiente, apenas uma parte das instâncias core serão desativadas, de forma que os nós restantes possam lidar com os dados atuais residentes no HDFS. Você deve garantir o aumento da capacidade no HDFS para permitir uma desativação mais extensa. Você também deve tentar minimizar a gravação I/O antes de tentar reduzir os grupos de instâncias. A gravação excessiva I/O pode atrasar a conclusão da operação de redimensionamento.
Outro limite é o fator de replicação padrão dfs.replication
no /etc/hadoop/conf/hdfs-site
. Ao criar um cluster, o Amazon EMR configura o valor com base no número de instâncias no cluster: 1
para clusters com uma a três instâncias, 2
para clusters com quatro a nove instâncias e 3
para clusters com mais de dez instâncias.
Atenção
-
Definir
dfs.replication
como 1 em clusters com menos de quatro nós poderá causar perda de dados do HDFS se um único nó ficar inativo. É recomendável usar um cluster com pelo menos quatro nós centrais para workloads de produção. -
O Amazon EMR não permitirá que os clusters escalem os nós principais abaixo de
dfs.replication
. Por exemplo, sedfs.replication = 2
, o número mínimo de nós central será 2. -
Ao usar o Ajuste de Escala Gerenciado, o Auto Scaling ou optar por redimensionar manualmente o cluster, é recomendável definir
dfs.replication
como 2 ou mais.
A redução amigável não permite reduzir os nós centrais abaixo do fator de replicação do HDFS. Isso permite que o HDFS feche arquivos devido à insuficiência de réplicas. Para contornar esse limite, diminua o fator de replicação e reinicie o daemon. NameNode