Uso da alternância de log de eventos do Spark - Amazon EMR

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á.

Uso da alternância de log de eventos do Spark

Com as versões 6.3.0 e posteriores do Amazon EMR, você pode ativar o recurso de alternância de log de eventos do Spark para o Amazon EMR no EKS. Em vez de gerar um único arquivo de log de eventos, esse recurso alterna o arquivo com base no intervalo de tempo configurado e remove os arquivos de log de eventos mais antigos.

A alternância de logs de eventos do Spark pode ajudar você a evitar possíveis problemas com um grande arquivo de log de eventos do Spark gerado para trabalhos de execução prolongada ou de transmissão. Por exemplo, você inicia um trabalho de execução prolongada do Spark com um log de eventos habilitado com o parâmetro persistentAppUI. O driver do Spark gera um arquivo de log de eventos. Se o trabalho for executado por horas ou por dias, e houver um espaço em disco limitado no nó do Kubernetes, o arquivo de log de eventos poderá consumir todo o espaço em disco disponível. Ativar o recurso de alternância de log de eventos do Spark resolve o problema ao dividir o arquivo de log em vários arquivos e remover os arquivos mais antigos.

nota

Esse recurso funciona somente com o Amazon EMR no EKS. O Amazon EMR em execução no Amazon EC2 não oferece suporte à alternância de logs de eventos do Spark.

Para ativar o recurso de alternância de log de eventos do Spark, configure os seguintes parâmetros do Spark:

  • spark.eventLog.rotation.enabled: ativa a alternância de log. Por padrão, ele está desabilitado no arquivo de configuração do Spark. Defina-o como verdadeiro para ativar esse recurso.

  • spark.eventLog.rotation.interval: especifica o intervalo de tempo para a alternância de log. O valor mínimo é 60 segundos. O valor de padrão é de 300 segundos.

  • spark.eventLog.rotation.minFileSize: especifica um tamanho mínimo de arquivo para alternar o arquivo de log. O valor mínimo e padrão é de 1 MB.

  • spark.eventLog.rotation.maxFilesToRetain: especifica quantos arquivos de log alternados serão mantidos durante a limpeza. O intervalo válido é de 1 a 10. O valor padrão é 2.

Você pode especificar esses parâmetros na seção sparkSubmitParameters da API StartJobRun, como mostra o exemplo a seguir.

"sparkSubmitParameters": "--class org.apache.spark.examples.SparkPi --conf spark.eventLog.rotation.enabled=true --conf spark.eventLog.rotation.interval=300 --conf spark.eventLog.rotation.minFileSize=1m --conf spark.eventLog.rotation.maxFilesToRetain=2"