Como posso criar filas no meu Amazon EMR YARN CapacityScheduler?
Como faço para criar filas no meu Amazon EMR Hadoop YARN CapacityScheduler?
Breve descrição
Os clusters do EMR têm uma única fila por padrão. Você pode adicionar filas adicionais ao seu cluster e alocar a capacidade disponível de recursos do cluster para suas novas filas.
Resolução
Criar um comando de reconfiguração
O exemplo de reconfiguração a seguir faz o seguinte:
- Cria duas filas adicionais, alfa e beta.
- Aloca 30% da capacidade total de recursos do seu cluster para cada uma das novas filas. Ao adicionar filas e alocar a capacidade do cluster, a soma das capacidades de todas as filas deve ser igual a 100. Portanto, no exemplo de reconfiguração a seguir, a capacidade da fila padrão diminui para 40%.
- Fornece acesso total (designado pelo rótulo “*”) às duas filas. Isso permite que ambas as filas acessem os nós centrais rotulados.
- Para enviar para uma fila específica, especifique a fila no parâmetro yarn.scheduler.capacity.queue-mappings. Esse parâmetro mapeia os usuários para uma fila com o mesmo nome do usuário. O nome da fila principal deve ser o mesmo do grupo principal do usuário, como u:user:primary_group.user. No exemplo a seguir, o parâmetro é definido como u:hadoop:alpha. Isso mapeia a fila alpha recém-criada.
Observação: a capacidade de acesso de cada fila ao rótulo principal corresponde à capacidade da própria fila. Portanto, a partição principal se divide entre filas na mesma proporção do resto do cluster.
- Classification: capacity-scheduler Properties: yarn.scheduler.capacity.root.queues: 'default,alpha,beta' yarn.scheduler.capacity.root.default.capacity: '40' yarn.scheduler.capacity.root.default.accessible-node-labels.CORE.capacity: '40' yarn.scheduler.capacity.root.alpha.capacity: '30' yarn.scheduler.capacity.root.alpha.accessible-node-labels: '*' yarn.scheduler.capacity.root.alpha.accessible-node-labels.CORE.capacity: '30' yarn.scheduler.capacity.root.beta.capacity: '30' yarn.scheduler.capacity.root.beta.accessible-node-labels: '*' yarn.scheduler.capacity.root.beta.accessible-node-labels.CORE.capacity: '30' - classification: yarn-site properties: yarn.scheduler.capacity.queue-mappings: 'u:hadoop:alpha' configurations: []
Observação: se você quiser substituir as configurações padrão de mapeamento de filas, defina o parâmetro yarn.scheduler.capacity.queue-mappings-override.enable como true. Por padrão, esse parâmetro é definido como falso. Quando definido como true, os usuários podem enviar trabalhos para filas diferentes da fila designada. Para obter mais informações, consulte Habilitar a substituição de mapeamentos de fila padrão no site da Hortonworks Docs.
Verifique suas modificações
Acesse a UI Web do YARN ResourceManager para verificar se suas modificações ocorreram.
Veja a seguir um exemplo de um trabalho do Spark enviado no Amazon EMR 6.4.0 que tem o exemplo de reconfiguração anterior:
spark-submit --class org.apache.spark.examples.SparkPi --master yarn --deploy-mode cluster --conf spark.driver.memoryOverhead=512 --conf spark.executor.memoryOverhead=512 /usr/lib/spark/examples/jars/spark-examples.jar 100 SLF4J: Class path contains multiple SLF4J bindings. SLF4J: Found binding in [jar:file:/usr/lib/spark/jars/slf4j-log4j12-1.7.30.jar!/org/slf4j/impl/StaticLoggerBinder.class] ... ... ... 22/11/29 07:58:07 INFO Client: Application report for application_1669707794547_0001 (state: ACCEPTED) 22/11/29 07:58:08 INFO Client: Application report for application_1669707794547_0001 (state: RUNNING) This application application_1669707794547_0001 is submitted to queue "alpha"
Informações relacionadas
Hadoop: Capacity Scheduler no site do Apache Hadoop

Conteúdo relevante
- AWS OFICIALAtualizada há 3 meses
- AWS OFICIALAtualizada há 2 meses
- AWS OFICIALAtualizada há 3 meses
- AWS OFICIALAtualizada há 3 meses