Ir para o conteúdo

Como resolver os erros “session ‘0’ not found” e “Error sending http request and maximum retry encountered” no Amazon EMR?

3 minuto de leitura
0

Quero solucionar os erros que recebo ao usar um caderno Jupyter para executar uma aplicação do Apache Livy no Amazon EMR.

Resolução

Você pode receber um dos seguintes erros ao usar um caderno Jupyter para executar uma aplicação do Apache Livy no Amazon EMR:

  • ‘404’ from ######## with error payload: “session ‘0’ not found”
  • “The code failed because of a fatal error: Error sending http request and maximum retry encountered.”

Você recebe os erros anteriores ao executar sua sessão do caderno Jupyter até que ela atinja o tempo limite. Para resolver esses erros, aumente o valor da propriedade livy.server.session.timeout em /etc/livy/conf/livy.conf no nó primário. Em seguida, reinicie o livy-server.

É possível modificar a propriedade livy.server.session.timeout em um cluster do Amazon EMR em execução ou ao iniciar um novo cluster.

Alterar livy.server.session.timeout em um cluster em execução

Conclua as etapas a seguir:

  1. Abra /etc/livy/conf/livy.conf o no nó primário ativo.
  2. Modifique o valor de livy.server.session.timeout:
    sudo vim /etc/livy/conf/livy.conflivy.server.session.timeout 2h
    Observação: substitua 2h pelo valor que atenda às suas necessidades. O valor padrão é 1 hora.
  3. Para reiniciar livy-server, execute um dos seguintes comandos que atenda aos seus requisitos de versão no nó primário ativo.
    Para o Amazon EMR versão 5.30.0 ou posterior, Amazon EMR série 6 e Amazon EMR série 7 no Amazon Linux 2, execute o seguinte comando:
    sudo systemctl stop livy-server
    sudo systemctl start livy-server
    Para a versão 5.29.0 ou anterior do Amazon EMR, execute o seguinte comando:
    sudo stop livy-server
    sudo start livy-server

Observação: quando livy-server é reiniciado, não é possível acessar seu cluster. Para evitar tempo de inatividade, configure a aplicação do Apache Livy ao iniciar um cluster do Amazon EMR.

Alterar livy.server.session.timeout em um novo cluster

Adicione um objeto de configuração ao usar o Amazon EMR versão 4.6.0 ou posterior para iniciar um cluster.

Exemplo:

[
    {
        "Classification": "livy-conf",
        "Properties": {
            "livy.server.session.timeout-check": "true",
            "livy.server.session.timeout": "2h",
            "livy.server.yarn.app-lookup-timeout": "120s"
        }
    }
]

Também é possível modificar as seguintes propriedades relacionadas:

  • Quando você ativa a propriedade livy.server.session.timeout-check, o Apache Livy interrompe as sessões ociosas que atingem o tempo limite. A configuração padrão é true.
  • A propriedade livy.server.yarn.app-lookup-timeout é a duração em que o Apache Livy procura a aplicação YARN antes que a aplicação o considere perdido. A configuração padrão é 60s.

Depois de executar o trabalho, certifique-se de fechar a sessão no Jupyter ou no Zeppelin. Quando há muitas sessões abertas, novos trabalhos não podem ser iniciados até que os recursos estejam disponíveis.

Informações relacionadas

Apache Livy

Caderno Notebook no Amazon EMR

AWS OFICIALAtualizada há um ano