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 de clusters para clusters da Amazon EMR
nota
As opções de comportamento de redução de escala não são mais suportadas desde a EMR versão 5.10.0 da Amazon. Devido à introdução do faturamento por segundo na AmazonEC2, o comportamento padrão de redução de escala para EMR clusters da Amazon agora é encerrado na conclusão da tarefa.
Com as EMR versões 5.1.0 a 5.9.1 da Amazon, 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 EMR versão 5.10.0 da Amazon, 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 a conclusão da tarefa é especificada, a Amazon EMR Deny lista e drena as tarefas dos nós antes de encerrar as instâncias da Amazon. EC2 Com nenhum dos comportamentos especificados, EMR a Amazon não encerra EC2 instâncias da Amazon em grupos de instâncias principais se isso puder levar à HDFS corrupção.
Terminar na conclusão de tarefas
A Amazon EMR permite que você reduza seu cluster sem afetar sua carga de trabalho. A Amazon EMR YARN descomissiona normalmente e outros daemons nos nós principais e de tarefas durante uma operação de redimensionamento sem perder dados ou interromper trabalhos. HDFS A Amazon EMR só reduz o tamanho do grupo de instâncias se o trabalho atribuído aos grupos 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.
Este tempo é definido usando uma propriedade na a classificação de configuração YARN-site
. Usando a EMR versão 5.12.0 e superior da Amazon, especifique a YARN.resourcemanager.nodemanager-graceful-decommission-timeout-secs
propriedade. Usando EMR versões anteriores da Amazon, especifique a YARN.resourcemanager.decommissioning.timeout
propriedade.
Se ainda houver contêineres ou YARN aplicativos em execução quando o tempo limite de descomissionamento passar, o nó será forçado a ser descomissionado e YARN reprograma 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 na documentação do
Grupos de nós de tarefa
A Amazon seleciona de EMR forma inteligente instâncias que não têm tarefas executadas em nenhuma etapa ou aplicativo e primeiro remove essas instâncias de um cluster. Se todas as instâncias do cluster estiverem em uso, a Amazon EMR espera que as tarefas sejam concluídas em uma 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
. A Amazon usa EMR dinamicamente a nova configuração. Você pode definir isso como um número arbitrariamente grande para garantir que a Amazon EMR não encerre nenhuma tarefa enquanto reduz o tamanho do cluster.
Grupos de nós centrais
Nos nós principais, ambos YARN NodeManager e os HDFS DataNode daemons devem ser desativados para que o grupo de instâncias seja reduzido. PoisYARN, a redução gradual garante que um nó marcado para descomissionamento só seja transferido para o DECOMMISSIONED
estado se não houver contêineres ou aplicativos pendentes ou incompletos. A desativação termina imediatamente se não há contêineres em execução no nó no início da desativação.
PoisHDFS, uma redução suave garante que a capacidade alvo de HDFS seja grande o suficiente para caber em todos os blocos existentes. Se a capacidade de destino não for grande o suficiente, somente uma quantidade parcial de instâncias principais será desativada para que os nós restantes possam lidar com os dados atuais que residem. HDFS Você deve garantir HDFS capacidade adicional para permitir mais descomissionamento. Tente também minimizar a E/S de gravação antes de tentar reduzir os grupos de instâncias. O excesso de E/S de gravação poderá 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, a Amazon EMR configura o valor com base no número de instâncias no cluster: 1
com 1 a 3 instâncias, 2
para clusters com 4 a 9 instâncias e 3
para clusters com mais de 10 instâncias.
Atenção
-
dfs.replication
Definir como 1 em clusters com menos de quatro nós pode levar à perda de HDFS dados se um único nó ficar inativo. É recomendável usar um cluster com pelo menos quatro nós centrais para workloads de produção. -
A Amazon não EMR permitirá que os clusters escalem os nós principais abaixo
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 suave não permite que você reduza os nós principais abaixo do fator de HDFS replicação. Isso permite fechar arquivos devido HDFS à insuficiência de réplicas. Para contornar esse limite, diminua o fator de replicação e reinicie o daemon. NameNode